planetarium / 9c-launcher

Nine Chronicles Launcher
GNU General Public License v3.0
44 stars 34 forks source link

로그인 후 /run-standalone 호출 시 제네시스 블록 에러 #26

Closed moreal closed 4 years ago

moreal commented 4 years ago

현재 master 브랜치에서 로그인후 /run-standalone이 호출되면 아래와 같은 Exception 로그와 함께 500를 반환합니다. 현재 사용하고 있는 제네시스 블록(genesis-block-9c-beta-2)가 planetarium/nekoyume-untiy:master 가 호환되지 않는 것 같습니다.

System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
   at System.Collections.Immutable.ImmutableDictionary`2.get_Item(TKey key)
   at Nekoyume.Action.InitializeStates.LoadPlainValueInternal(IImmutableDictionary`2 plainValue) in /Users/moreal/github/planetarium/nekoyume-unity/nekoyume/Assets/_Scripts/Lib9c/Action/InitializeStates.cs:line 84
   at Nekoyume.Action.GameAction.LoadPlainValue(IValue plainValue) in /Users/moreal/github/planetarium/nekoyume-unity/nekoyume/Assets/_Scripts/Lib9c/Action/GameAction.cs:line 35
   at Libplanet.Action.PolymorphicAction`1.LoadPlainValue(Dictionary plainValue)
   at Libplanet.Action.PolymorphicAction`1.LoadPlainValue(IValue plainValue)
   at Libplanet.Tx.Transaction`1.ToAction(IValue value)
   at System.Linq.Enumerable.SelectArrayIterator`2.ToArray()
   at System.Collections.Immutable.ImmutableExtensions.FallbackWrapper`1.get_Count()
   at System.Collections.Immutable.ImmutableList`1.CreateRange(IEnumerable`1 items)
   at System.Collections.Immutable.ImmutableList`1.AddRange(IEnumerable`1 items)
   at System.Collections.Immutable.ImmutableList.ToImmutableList[TSource](IEnumerable`1 source)
   at Libplanet.Tx.Transaction`1..ctor(RawTransaction rawTx)
   at Libplanet.Tx.Transaction`1..ctor(Dictionary dict)
   at Libplanet.Tx.Transaction`1.Deserialize(Byte[] bytes)
   at Libplanet.Blocks.Block`1.<>c.<.ctor>b__2_0(ImmutableArray`1 tx)
   at System.Linq.Enumerable.SelectArrayIterator`2.ToList()
   at Libplanet.Blocks.Block`1..ctor(RawBlock rb)
   at Libplanet.Blocks.Block`1..ctor(Dictionary dict)
   at Libplanet.Blocks.Block`1.Deserialize(Byte[] bytes)
   at Libplanet.Standalone.Hosting.LibplanetNodeService`1.LoadGenesisBlock(LibplanetNodeServiceProperties`1 properties) in /Users/moreal/github/planetarium/nekoyume-unity/Libplanet.Standalone/Hosting/LibplanetNodeService.cs:line 186
   at Libplanet.Standalone.Hosting.LibplanetNodeService`1..ctor(LibplanetNodeServiceProperties`1 properties, IBlockPolicy`1 blockPolicy, Func`5 minerLoopAction, Progress`1 preloadProgress, Boolean ignoreBootstrapFailure) in /Users/moreal/github/planetarium/nekoyume-unity/Libplanet.Standalone/Hosting/LibplanetNodeService.cs:line 59
   at NineChronicles.Standalone.NineChroniclesNodeService..ctor(LibplanetNodeServiceProperties`1 properties, Nullable`1 rpcNodeServiceProperties, Progress`1 preloadProgress, Boolean ignoreBootstrapFailure) in /Users/moreal/github/planetarium/nekoyume-unity/NineChronicles.Standalone/NineChroniclesNodeService.cs:line 85
   at NineChronicles.Standalone.StandaloneServices.RunHeadlessAsync(NineChroniclesNodeServiceProperties properties, IHostBuilder hostBuilder, StandaloneContext standaloneContext, CancellationToken cancellationToken) in /Users/moreal/github/planetarium/nekoyume-unity/NineChronicles.Standalone/StandaloneServices.cs:line 27
   at NineChronicles.Standalone.Controllers.GraphQLController.RunStandAlone(ServiceBindingProperties properties) in /Users/moreal/github/planetarium/nekoyume-unity/NineChronicles.Standalone/Controllers/GraphQLController.cs:line 73
export const standaloneProperties: StandaloneProperties = {
    AppProtocolVersion: "22/019101FEec7ed4f918D396827E1277DEda1e20D4/MEUCIQDiV8dGOGQkujYQGic8Un44ZcU0wkxVpphnl6VQrIRRcwIgM75NixNvPnrUXFM5YW+uaRqdBhS2JNpTEgd5bDT.Lpw=/ZHUxNjpXaW5kb3dzQmluYXJ5VXJsdTUyOmh0dHBzOi8vZG93bmxvYWQubmluZS1jaHJvbmljbGVzLmNvbS92MjIvV2luZG93cy56aXB1MTQ6bWFjT1NCaW5hcnlVcmx1NTM6aHR0cHM6Ly9kb3dubG9hZC5uaW5lLWNocm9uaWNsZXMuY29tL3YyMi9tYWNPUy50YXIuZ3p1OTp0aW1lc3RhbXB1MjA6MjAyMC0wNS0xMVQwNTozMDowMFpl",
    GenesisBlockPath: "https://9c-test.s3.ap-northeast-2.amazonaws.com/genesis-block-9c-beta-2",
    RpcServer: true,
    RpcListenHost: "0.0.0.0",
    RpcListenPort: 6967,
    MinimumDifficulty: 5000,
    SwarmHost: "0.0.0.0",
    SwarmPort: 6968,
    StoreType: "rocksdb",
    StorePath: ".blockstore",
    NoMiner: true,
    TrustedAppProtocolVersionSigners: ["02a5e2811a9bfa4eec274e806debd622c53702bce39a809918563a4cf34189ff85"],
}
riemannulus commented 4 years ago

제네시스 블록 버전이 마스터 베이스 브랜치와 9c-beta-2간에 상이하여 발생하는 문제였습니다.