From c63d7c34c3009a4689e2475e64ea294366483dce Mon Sep 17 00:00:00 2001 From: Mathieu Hofman Date: Tue, 21 May 2024 00:16:07 +0000 Subject: [PATCH 1/3] chore(cosmic-swingset): default artifact mode to operational --- packages/cosmic-swingset/src/export-kernel-db.js | 2 +- packages/cosmic-swingset/src/import-kernel-db.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/cosmic-swingset/src/export-kernel-db.js b/packages/cosmic-swingset/src/export-kernel-db.js index b95392facd0..7a80624155b 100755 --- a/packages/cosmic-swingset/src/export-kernel-db.js +++ b/packages/cosmic-swingset/src/export-kernel-db.js @@ -42,10 +42,10 @@ export const ExportManifestFileName = 'export-manifest.json'; */ export const getEffectiveArtifactMode = artifactMode => { switch (artifactMode) { + case undefined: case 'none': case 'operational': return 'operational'; - case undefined: case 'replay': return 'replay'; case 'archival': diff --git a/packages/cosmic-swingset/src/import-kernel-db.js b/packages/cosmic-swingset/src/import-kernel-db.js index 93f9f18ae51..68ee279178b 100755 --- a/packages/cosmic-swingset/src/import-kernel-db.js +++ b/packages/cosmic-swingset/src/import-kernel-db.js @@ -62,7 +62,7 @@ const checkAndGetImportSwingStoreOptions = (options, manifest) => { manifest.data || Fail`State-sync manifest missing export data`; - const { artifactMode = manifest.artifactMode || 'replay' } = options; + const { artifactMode = manifest.artifactMode || 'operational' } = options; if (artifactMode === 'none') { throw Fail`Cannot import "export data" without at least "operational" artifacts`; From 161ddd34ca6c16da0ad3ef716fa5da3d2ba86b68 Mon Sep 17 00:00:00 2001 From: Mathieu Hofman Date: Tue, 21 May 2024 00:18:06 +0000 Subject: [PATCH 2/3] feat(cosmos): use operational artifact level for swingset state export/restore --- golang/cosmos/x/swingset/genesis.go | 5 ++--- golang/cosmos/x/swingset/keeper/extension_snapshotter.go | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/golang/cosmos/x/swingset/genesis.go b/golang/cosmos/x/swingset/genesis.go index a738e1497c7..4d3d17528a7 100644 --- a/golang/cosmos/x/swingset/genesis.go +++ b/golang/cosmos/x/swingset/genesis.go @@ -64,7 +64,7 @@ func InitGenesis(ctx sdk.Context, k Keeper, swingStoreExportsHandler *SwingStore ReadNextArtifact: artifactProvider.ReadNextArtifact, }, keeper.SwingStoreRestoreOptions{ - ArtifactMode: keeper.SwingStoreArtifactModeReplay, + ArtifactMode: keeper.SwingStoreArtifactModeOperational, ExportDataMode: keeper.SwingStoreExportDataModeAll, }, ) @@ -98,9 +98,8 @@ func ExportGenesis(ctx sdk.Context, k Keeper, swingStoreExportsHandler *SwingSto // The export will fail if the export of a historical height was requested snapshotHeight, swingStoreGenesisEventHandler{exportDir: swingStoreExportDir, snapshotHeight: snapshotHeight}, - // The export will fail if the swing-store does not contain all replay artifacts keeper.SwingStoreExportOptions{ - ArtifactMode: keeper.SwingStoreArtifactModeReplay, + ArtifactMode: keeper.SwingStoreArtifactModeOperational, ExportDataMode: keeper.SwingStoreExportDataModeSkip, }, ) diff --git a/golang/cosmos/x/swingset/keeper/extension_snapshotter.go b/golang/cosmos/x/swingset/keeper/extension_snapshotter.go index 0e73dc59970..58a56b6aa45 100644 --- a/golang/cosmos/x/swingset/keeper/extension_snapshotter.go +++ b/golang/cosmos/x/swingset/keeper/extension_snapshotter.go @@ -125,7 +125,7 @@ func (snapshotter *ExtensionSnapshotter) InitiateSnapshot(height int64) error { blockHeight := uint64(height) return snapshotter.swingStoreExportsHandler.InitiateExport(blockHeight, snapshotter, SwingStoreExportOptions{ - ArtifactMode: SwingStoreArtifactModeReplay, + ArtifactMode: SwingStoreArtifactModeOperational, ExportDataMode: SwingStoreExportDataModeSkip, }) } @@ -304,6 +304,6 @@ func (snapshotter *ExtensionSnapshotter) RestoreExtension(blockHeight uint64, fo return snapshotter.swingStoreExportsHandler.RestoreExport( SwingStoreExportProvider{BlockHeight: blockHeight, GetExportDataReader: getExportDataReader, ReadNextArtifact: readNextArtifact}, - SwingStoreRestoreOptions{ArtifactMode: SwingStoreArtifactModeReplay, ExportDataMode: SwingStoreExportDataModeAll}, + SwingStoreRestoreOptions{ArtifactMode: SwingStoreArtifactModeOperational, ExportDataMode: SwingStoreExportDataModeAll}, ) } From 319b3869dd8d0db012498e881ace375972c8b3d3 Mon Sep 17 00:00:00 2001 From: Mathieu Hofman Date: Tue, 21 May 2024 22:13:35 +0000 Subject: [PATCH 3/3] chore(cosmic-swingset): reflect actual default home dir --- packages/cosmic-swingset/src/export-kernel-db.js | 7 ++----- packages/cosmic-swingset/src/import-kernel-db.js | 7 ++----- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/packages/cosmic-swingset/src/export-kernel-db.js b/packages/cosmic-swingset/src/export-kernel-db.js index 7a80624155b..da3559a289c 100755 --- a/packages/cosmic-swingset/src/export-kernel-db.js +++ b/packages/cosmic-swingset/src/export-kernel-db.js @@ -296,11 +296,8 @@ export const main = async ( const stateDir = processValue.getFlag('state-dir') || - // We try to find the actual cosmos state directory (default=~/.ag-chain-cosmos) - `${processValue.getFlag( - 'home', - `${homedir}/.ag-chain-cosmos`, - )}/data/agoric`; + // We try to find the actual cosmos state directory (default=~/.agoric) + `${processValue.getFlag('home', `${homedir}/.agoric`)}/data/agoric`; const stateDirStat = await fs.stat(stateDir); if (!stateDirStat.isDirectory()) { diff --git a/packages/cosmic-swingset/src/import-kernel-db.js b/packages/cosmic-swingset/src/import-kernel-db.js index 68ee279178b..c804bea19f7 100755 --- a/packages/cosmic-swingset/src/import-kernel-db.js +++ b/packages/cosmic-swingset/src/import-kernel-db.js @@ -247,11 +247,8 @@ export const main = async ( const stateDir = processValue.getFlag('state-dir') || - // We try to find the actual cosmos state directory (default=~/.ag-chain-cosmos) - `${processValue.getFlag( - 'home', - `${homedir}/.ag-chain-cosmos`, - )}/data/agoric`; + // We try to find the actual cosmos state directory (default=~/.agoric) + `${processValue.getFlag('home', `${homedir}/.agoric`)}/data/agoric`; const stateDirStat = await fs.stat(stateDir); if (!stateDirStat.isDirectory()) {