diff --git a/NineChronicles.Snapshot.sln b/NineChronicles.Snapshot.sln index e136b8a..36c71cc 100644 --- a/NineChronicles.Snapshot.sln +++ b/NineChronicles.Snapshot.sln @@ -6,6 +6,16 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Libplanet", "libplanet\Libp EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Libplanet.RocksDBStore", "libplanet\Libplanet.RocksDBStore\Libplanet.RocksDBStore.csproj", "{A87BF80A-6B59-4E13-9330-826394294DFA}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Libplanet.Action", "libplanet\Libplanet.Action\Libplanet.Action.csproj", "{70D0513D-55C0-4A6B-8186-3F8C5E7C6D65}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Libplanet.Common", "libplanet\Libplanet.Common\Libplanet.Common.csproj", "{3422BA20-1571-4CCC-ABD1-E3FBEB77A7B2}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Libplanet.Crypto", "libplanet\Libplanet.Crypto\Libplanet.Crypto.csproj", "{B22E9ECE-6B02-4D34-B504-DBB17E700983}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Libplanet.Types", "libplanet\Libplanet.Types\Libplanet.Types.csproj", "{49CC98D6-8B5C-4CB9-8CC7-F50582D59B9F}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Libplanet.Store", "libplanet\Libplanet.Store\Libplanet.Store.csproj", "{9BD055DB-8523-4D86-BE1B-F67CEF537EBF}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -24,5 +34,25 @@ Global {A87BF80A-6B59-4E13-9330-826394294DFA}.Debug|Any CPU.Build.0 = Debug|Any CPU {A87BF80A-6B59-4E13-9330-826394294DFA}.Release|Any CPU.ActiveCfg = Release|Any CPU {A87BF80A-6B59-4E13-9330-826394294DFA}.Release|Any CPU.Build.0 = Release|Any CPU + {70D0513D-55C0-4A6B-8186-3F8C5E7C6D65}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {70D0513D-55C0-4A6B-8186-3F8C5E7C6D65}.Debug|Any CPU.Build.0 = Debug|Any CPU + {70D0513D-55C0-4A6B-8186-3F8C5E7C6D65}.Release|Any CPU.ActiveCfg = Release|Any CPU + {70D0513D-55C0-4A6B-8186-3F8C5E7C6D65}.Release|Any CPU.Build.0 = Release|Any CPU + {3422BA20-1571-4CCC-ABD1-E3FBEB77A7B2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3422BA20-1571-4CCC-ABD1-E3FBEB77A7B2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3422BA20-1571-4CCC-ABD1-E3FBEB77A7B2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3422BA20-1571-4CCC-ABD1-E3FBEB77A7B2}.Release|Any CPU.Build.0 = Release|Any CPU + {B22E9ECE-6B02-4D34-B504-DBB17E700983}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B22E9ECE-6B02-4D34-B504-DBB17E700983}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B22E9ECE-6B02-4D34-B504-DBB17E700983}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B22E9ECE-6B02-4D34-B504-DBB17E700983}.Release|Any CPU.Build.0 = Release|Any CPU + {49CC98D6-8B5C-4CB9-8CC7-F50582D59B9F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {49CC98D6-8B5C-4CB9-8CC7-F50582D59B9F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {49CC98D6-8B5C-4CB9-8CC7-F50582D59B9F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {49CC98D6-8B5C-4CB9-8CC7-F50582D59B9F}.Release|Any CPU.Build.0 = Release|Any CPU + {9BD055DB-8523-4D86-BE1B-F67CEF537EBF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9BD055DB-8523-4D86-BE1B-F67CEF537EBF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9BD055DB-8523-4D86-BE1B-F67CEF537EBF}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9BD055DB-8523-4D86-BE1B-F67CEF537EBF}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection EndGlobal diff --git a/NineChronicles.Snapshot/Program.cs b/NineChronicles.Snapshot/Program.cs index 24faf41..2680ba3 100644 --- a/NineChronicles.Snapshot/Program.cs +++ b/NineChronicles.Snapshot/Program.cs @@ -10,7 +10,7 @@ using Libplanet; using Libplanet.Action; using Libplanet.Action.Loader; -using Libplanet.Blocks; +using Libplanet.Types.Blocks; using Libplanet.RocksDBStore; using Libplanet.Store; using Libplanet.Store.Trie; @@ -19,6 +19,8 @@ using Libplanet.Blockchain; using Libplanet.Blockchain.Policies; using Libplanet.Blockchain.Renderers.Debug; +using Libplanet.Common; +using Libplanet.Crypto; using Microsoft.Extensions.Configuration; using Serilog; using ILogger = Serilog.ILogger; @@ -149,9 +151,9 @@ public void Snapshot( var blockChainStates = new BlockChainStates(_store, _stateStore); var actionEvaluator = new ActionEvaluator( _ => blockPolicy.BlockAction, - blockChainStates, - new NCActionLoader(), - null); + _stateStore, + new NCActionLoader() + ); var originalChain = new BlockChain(blockPolicy, stagePolicy, _store, _stateStore, _store.GetBlock(genesisHash), blockChainStates, actionEvaluator); var tip = _store.GetBlock(tipHash); @@ -216,7 +218,7 @@ public void Snapshot( } snapshotTipHash = hash; - } while (!_stateStore.ContainsStateRoot(_store.GetBlock(snapshotTipHash).StateRootHash)); + } while (!_stateStore.GetStateRoot(_store.GetBlock(snapshotTipHash).StateRootHash).Recorded); var forkedId = Guid.NewGuid(); Fork(chainId, forkedId, snapshotTipHash, tip); diff --git a/libplanet b/libplanet index 278c042..b13ef31 160000 --- a/libplanet +++ b/libplanet @@ -1 +1 @@ -Subproject commit 278c0421ae8276ff3ea9dac2efaba18de37a6531 +Subproject commit b13ef3155389100c218a045fbdc3051e23e3c669