Neo: [neox-2.x] Incorrect StateRoot for testnet's block 784078

Created on 4 Jun 2020  Â·  14Comments  Â·  Source: neo-project/neo

Describe the bug
If we're to ask for StateRoot at block 784078 from testnet's seed nodes, all ten of them would respond like this:

{
   "result" : {
      "flag" : "Unverified",
      "stateroot" : {
         "version" : 0,
         "index" : 784078,
         "stateroot" : "0x475d72dfaceb5209cc23377c615326fd3a295ae5700822934501f43413b8364e",
         "prehash" : "0xfd0969fc7c672b2246b46e6253eac2ac938a4c58afb8ee9857b09b95ee0ecd77",
         "witness" : {}
      }
   },
   "id" : 5,
   "jsonrpc" : "2.0"
}

It's unverified for obvious reasons, but all ten agree that this is the StateRoot and all subsequent roots are based upon that, so it seems to be an official StateRoot value for this block. I think this is an incorrect StateRoot and the correct one is 0x91a8bc562b2f5c691f31d3339257044c8b9b197e631316d6dda25be1a3ca0db6.

Block state changes
To understand the issue we need to take a look at storage changes being done by this block, this can be done with StatesDumper plugin and for this block we can see the following set of changes:

   {
      "size" : 6,
      "block" : 784078,
      "storage" : [
         {
            "state" : "Changed",
            "key" : "ddeb9aa1bfc353c9c54e21dffb470f65d9c22a0662616c616e63654f700000000000000007",
            "value" : "000410a328e800"
         },
         {
            "state" : "Added",
            "key" : "ddeb9aa1bfc353c9c54e21dffb470f65d9c22a0670ba03f52af8153d0cc1c781477b8c2600ce05b89c0000000000000000000000000c",
            "value" : "0002102700"
         },
         {
            "value" : "0002102700",
            "state" : "Added",
            "key" : "ddeb9aa1bfc353c9c54e21dffb470f65d9c22a06746f74616c537570706c79000000000005"
         },
         {
            "value" : "00047472756500",
            "key" : "ddeb9aa1bfc353c9c54e21dffb470f65d9c22a06747275650000000000000000000000000c",
            "state" : "Added"
         },
         {
            "value" : "00010200",
            "state" : "Changed",
            "key" : "2f73a155514827186319c3efccbc925d6c45a6ed430fe470c00ea1d17f045737fb83a6f3007739a9d41c00000000000000000000000b"
         },
         {
            "value" : "00667b224964223a322c225469746c65223a2273222c22436f6e74656e74223a2273222c2244617465223a22303030312d30312d30315430303a30303a3030222c22436f6d706c6963697479223a322c22537461747573223a302c2250726f6f66223a6e756c6c7d00",
            "key" : "2f73a155514827186319c3efccbc925d6c45a6ed500fe470c00ea1d17f045737fb83a6f3007739a9d41c02000000000000000000000a",
            "state" : "Added"
         }
      ]
   }

It's not big, just 6 puts, some are changing old values, some are new.

Problematic proof
Now if we're to ask for a proof for 62616c616e63654f70 path in the 062ac2d9650f47fbdf214ec5c953c3bfa19aebdd contract, we'd get the following result:

{
   "result" : {
      "proof" : "25ddeb9aa1bfc353c9c54e21dffb470f65d9c22a0662616c616e63654f70000000000000000708fd12020020666eaa8a6e75d43a97d76e72b605c7e05189f0c57ec19d84acdb75810f18239d202c83028ce3d7abcf4e4f95d05fbfdfa5e18bde3a8fbb65a57559d6b5ea09425c2090c40d440744a848e3b407a00e4efb692a957245a1efc9cb8496cb05fd328ee620dd2652bf25dfc3ad5fee7b200ccf3e3ae50772ff8ed58907e4dab8e7d4b2489720d8a5d5ed75b5b0f256d0a2cf5c220b4ddae2a228ef0fc0212b689f3811dfa94620342cc0d73fabd2440ed2cc735a9608391a510e1981b321a9f4258682706adc9620ced036e52f39387b9c58ade7bf8c3ca8959b64d8031d36d9b1c62f3f1c51c7cb2031072c7c801b5c1614dae441383a65344acd238f13db28ff0a39c0626e597f002062552d64c616d8b2a6a93d22936055110c0065728aa2b4fbf4d76b108390b474203322d3c93c741674a307cf6455e77c02ceeda307d4ec23fd809a2a420b4243f82052ab92a9cedc6716ad4c66a8a3e423b195b05bdebde456f992bff48f2561e99720e6379995e7053823b8ba8fb8af9623cf48e89f60c989598445df5e711db42a6f20192894ed637e86561ff6a4b8dea4539dee8bddb2fb20bf4ae3499852985c88b120e0005edd09f2335aa6b59ff4723e1262b2192adaa5e3e56f79e662f07041f04c2033577f3e2c5bb0e58746980a07cdfad2f872e2b9a10bcc27b7c678c85576df8420f0f04180d15b6eaa0c43e62380084c75ad773d790700a7120c6c4da1fc51693000fd720100209648e8f10a5ff4c209009b9a09697babbe1b2150d0948c1970a560282a1bfa4720988af8f34859dd8309bffea0b1dff9c8cef0b9b0d6a1852d40786627729ae7be00206ebf4f1b7861bca041cbb8feca75158511ca43a1810d17e1e3017468e8cef0de20cac93064090a7da09f8202c17d1e6cbb9a16eb43afcb032e80719cbf05b3446d2019b76a10b91fb99ec08814e8108e5490b879fb09a190cb2c129dfd98335bd5de000020b1da1198bacacf2adc0d863929d77c285ce3a26e736203d0c0a69a1312255fb2207ee8aa092f49348bd89f9c4bf004b0bee2241a2d0acfe7b3ce08e414b04a5717205b0dda71eac8a4e4cdc6a7b939748c0a78abb54f2547a780e6df67b25530330f000020fc358fb9d1e0d36461e015ac8e35f97072a9f9e750a3c25722a2b1a858fcb82d203c52c9fac6d4694b351390158334a9166bc3478ceb9bea2b0b244915f918239e20d526344a24ff19ee6a9f5c5beb833f4eb6d51191590350e26fa50b138493473f005200000000000000000000002077c404fec0a4265568951dbd096572787d109fab105213f4f292a5f53ce72fca00000020b8d1c7a386eaba83ce83ee0700d4ca9b86e75d147d670ea05123e438231d895000004801250b090a0a010b0f0c0305030c090c05040e02010d0f0f0b0407000f06050d090c02020a0006202af2097cf9d3f42e49f6b3c3dd254e7cbdab3485b029721cbbbf1ad0455a810852000000000000002055170506f4b18bc573a909b51cb21bdd5d303ec511f6cdfb1c6a1ab8d8a1dad020ee774c1b9fe1d8ea8d05823837d959da48af74f384d52f06c42c9d146c5258e300000000000000000072000000204457a6fe530ee953ad1f9caf63daf7f86719c9986df2d0b6917021eb379800f00020406bfc79da4ba6f37452a679d13cca252585d34f7e94a480b047bad9427f233e00000000201ce15a2373d28e0dc5f2000cf308f155d06f72070a29e5af1528c8f05f29d248000000000000004301200601060c0601060e06030605040f0700000000000000000000000000000000072091b83866bbd7450115b462e8d48601af3c3e9a35e7018d2b98a23e107c15c200090307000410a328e800",
      "success" : true
   },
   "id" : 5,
   "jsonrpc" : "2.0"
}

Which can be deciphered as

key ddeb9aa1bfc353c9c54e21dffb470f65d9c22a0662616c616e63654f700000000000000007
475d72dfaceb5209cc23377c615326fd3a295ae5700822934501f43413b8364e branch
        0: 9d23180f8175dbac849dc17ec5f08951e0c705b6726ed7973ad4756e8aaa6e66
        1: 5c4209eab5d65975a565bb8f3ade8be1a5dfbf5fd0954f4ecfabd7e38c02832c
        2: e68e32fd05cb9684cbc9efa14572952a69fb4e0ea007b4e348a84407440dc490
        3: 9748b2d4e7b8dae40789d58eff7207e53a3ecf0c207bee5fadc3df25bf5226dd
        4: 46a9df11389f682b21c00fef28a2e2da4d0b225ccfa2d056f2b0b575edd5a5d8
        5: 96dc6a70828625f4a921b381190e511a3908965a73ccd20e44d2ab3fd7c02c34
        6: cbc7511c3f2fc6b1d9361d03d8649b95a83c8cbfe7ad589c7b38392fe536d0ce
        7: 007f596e62c0390aff28db138f23cd4a34653a3841e4da14165c1b807c2c0731
        8: 74b49083106bd7f4fbb4a28a7265000c11556093223da9a6b2d816c6642d5562
        9: f843420b422a9a80fd23ecd407a3edce027ce75564cf07a37416743cc9d32233
        a: 97e961258ff4bf92f956e4bdde5bb095b123e4a3a8664cad1667dccea992ab52
        b: 6f2ab41d715edf45845989c9609fe848cf2396afb88fbab8233805e7959937e6
        c: b1885c98529849e34abf20fbb2dd8bee9d53a4deb8a4f61f56867e63ed942819
        d: 4cf04170f062e6796fe5e3a5da2a19b262123e72f49fb5a65a33f209dd5e00e0
        e: 84df7655c878c6b727cc0ba1b9e272f8d2facd070a984687e5b05b2c3e7f5733
        f: 306951fca14d6c0c12a70007793d77ad754c088023e6430caa6e5bd18041f0f0
4cf04170f062e6796fe5e3a5da2a19b262123e72f49fb5a65a33f209dd5e00e0 branch
        0: 47fa1b2a2860a570198c94d050211bbeab7b69099a9b0009c2f45f0af1e84896
        1: bee79a72276678402d85a1d6b0b9f0cec8f9dfb1a0febf0983dd5948f3f88a98
        3: def0cee8687401e3e1170d81a143ca11851575cafeb8cb41a0bc61781b4fbf6e
        4: 6d44b305bf9c71802e03cbaf43eb169abb6c1e7dc102829fa07d0a096430c9ca
        5: ded55b3398fd9d122ccb90a109fb79b890548e10e81488c09eb91fb9106ab719
        8: b25f2512139aa6c0d00362736ea2e35c287cd72939860ddc2acfcaba9811dab1
        9: 17574ab014e408ceb3e7cf0a2d1a24e2beb004f04b9c9fd88b34492f09aae87e
        a: 0f333055b267dfe680a747254fb5ab780a8c7439b9a7c6cde4a4c8ea71da0d5b
        d: 2db8fc58a8b1a22257c2a350e7f9a97270f9358eac15e06164d3e0d1b98f35fc
        e: 9e2318f91549240b2bea9beb8c47c36b16a93483159013354b69d4c6fac9523c
        f: 3f479384130ba56fe25003599111d5b64e3f83eb5b5c9f6aee19ff244a3426d5
2db8fc58a8b1a22257c2a350e7f9a97270f9358eac15e06164d3e0d1b98f35fc branch
        a: ca2fe73cf5a592f2f4135210ab9f107d78726509bd1d95685526a4c0fe04c477
        e: 50891d2338e42351a00e677d145de7869bcad40007ee83ce83baea86a3c7d1b8
50891d2338e42351a00e677d145de7869bcad40007ee83ce83baea86a3c7d1b8 extension 01250b090a0a010b0f0c0305030c090c05040e02010d0f0f0b0407000f06050d090c02020a0006202af2097cf9d3f42e49f6b3c3dd254e7cbdab3485b029721cbbbf1ad0455a8108
08815a45d01abfbb1c7229b08534abbd7c4e25ddc3b3f6492ef4d3f97c09f22a branch
        6: d0daa1d8b81a6a1cfbcdf611c53e305ddd1bb21cb509a973c58bb1f406051755
        7: e358526c149d2cc4062fd584f374af48da59d9373882058dead8e19f1b4c77ee
d0daa1d8b81a6a1cfbcdf611c53e305ddd1bb21cb509a973c58bb1f406051755 branch
        2: f0009837eb217091b6d0f26d98c91967f8f7da63af9c1fad53e90e53fea65744
        4: 3e237f42d9ba47b080a4947e4fd3852525ca3cd179a65274f3a64bda79fc6b40
        9: 48d2295ff0c82815afe5290a07726fd055f108f30c00f2c50d8ed273235ae11c
f0009837eb217091b6d0f26d98c91967f8f7da63af9c1fad53e90e53fea65744 extension 01200601060c0601060e06030605040f0700000000000000000000000000000000072091b83866bbd7450115b462e8d48601af3c3e9a35e7018d2b98a23e107c15c200
00c2157c103ea2982b8d01e7359a3e3caf0186d4e862b4150145d7bb6638b891 leaf 0307000410a328e800

If we're to look back at block's changes we may notice that the value for the key ddeb9aa1bfc353c9c54e21dffb470f65d9c22a0662616c616e63654f700000000000000007 is actually a changed one, so there was some other value at block 784077 that is being replaced. The StateRoot for this block can be seen in this output:

{
   "id" : 5,
   "jsonrpc" : "2.0",
   "result" : {
      "flag" : "Unverified",
      "stateroot" : {
         "stateroot" : "0x711fc10d720c5dfdaba0b86784a1cac6d20c5b8323dbdd7d9732136dcef779b7",
         "prehash" : "0x51e6028779c0b0f8bc0d62f969d408f579409128b8cc3c3928e74028ac225aff",
         "version" : 0,
         "witness" : {},
         "index" : 784077
      }
   }
}

And the proof for this path at block 784077 is this:

{
   "id" : 5,
   "result" : {
      "success" : true,
      "proof" : "25ddeb9aa1bfc353c9c54e21dffb470f65d9c22a0662616c616e63654f70000000000000000708fd12020020666eaa8a6e75d43a97d76e72b605c7e05189f0c57ec19d84acdb75810f18239d202c83028ce3d7abcf4e4f95d05fbfdfa5e18bde3a8fbb65a57559d6b5ea09425c2071b477195d761e2710985a69b81e993395b3d78786377bb43fb85ff0f3b5f63720dd2652bf25dfc3ad5fee7b200ccf3e3ae50772ff8ed58907e4dab8e7d4b2489720d8a5d5ed75b5b0f256d0a2cf5c220b4ddae2a228ef0fc0212b689f3811dfa94620342cc0d73fabd2440ed2cc735a9608391a510e1981b321a9f4258682706adc9620ced036e52f39387b9c58ade7bf8c3ca8959b64d8031d36d9b1c62f3f1c51c7cb2031072c7c801b5c1614dae441383a65344acd238f13db28ff0a39c0626e597f002062552d64c616d8b2a6a93d22936055110c0065728aa2b4fbf4d76b108390b474203322d3c93c741674a307cf6455e77c02ceeda307d4ec23fd809a2a420b4243f82052ab92a9cedc6716ad4c66a8a3e423b195b05bdebde456f992bff48f2561e99720e6379995e7053823b8ba8fb8af9623cf48e89f60c989598445df5e711db42a6f20192894ed637e86561ff6a4b8dea4539dee8bddb2fb20bf4ae3499852985c88b120b216fb7aa253640fab5f32ce67f48a8f22b98bb26eac7e3424bb9edcf8c0ac282033577f3e2c5bb0e58746980a07cdfad2f872e2b9a10bcc27b7c678c85576df8420f0f04180d15b6eaa0c43e62380084c75ad773d790700a7120c6c4da1fc51693000fd720100209648e8f10a5ff4c209009b9a09697babbe1b2150d0948c1970a560282a1bfa4720988af8f34859dd8309bffea0b1dff9c8cef0b9b0d6a1852d40786627729ae7be00206ebf4f1b7861bca041cbb8feca75158511ca43a1810d17e1e3017468e8cef0de20cac93064090a7da09f8202c17d1e6cbb9a16eb43afcb032e80719cbf05b3446d2019b76a10b91fb99ec08814e8108e5490b879fb09a190cb2c129dfd98335bd5de000020b1da1198bacacf2adc0d863929d77c285ce3a26e736203d0c0a69a1312255fb2207ee8aa092f49348bd89f9c4bf004b0bee2241a2d0acfe7b3ce08e414b04a5717205b0dda71eac8a4e4cdc6a7b939748c0a78abb54f2547a780e6df67b25530330f000020a6112b7d09171b2d37bef23d1a3d3782c3be256722248c8a9ec0222a574645de203c52c9fac6d4694b351390158334a9166bc3478ceb9bea2b0b244915f918239e20d526344a24ff19ee6a9f5c5beb833f4eb6d51191590350e26fa50b138493473f005200000000000000000000002077c404fec0a4265568951dbd096572787d109fab105213f4f292a5f53ce72fca000000209dde39a842e0f7302a79189ec3b3c210f16a2eb46a8a1587aec5cbf2aa118afd00004801250b090a0a010b0f0c0305030c090c05040e02010d0f0f0b0407000f06050d090c02020a0006204e745fdda2dd1566d4e2905e1d1ec1021f28b245a3f8dbc639e422cd35c79e555200000000000000209b0bfb297479a8222f6c94647f7289555c8f0286dfada341261629cfed6e2e6320e9749fdd591e8e354b05085b30792e98a1062efd25cee1740eb7665a57f15d7c0000000000000000005200000020f53509afd59c7d3bc3959d772aa5230ea78aef47c346fb30a0f0d11d5d664aba000000000000201ce15a2373d28e0dc5f2000cf308f155d06f72070a29e5af1528c8f05f29d248000000000000004301200601060c0601060e06030605040f07000000000000000000000000000000000720c4a8c94030de3b6d2165c02ddb2b998e252fc5e9bf656ede704e86c3379b05310703050002102700"
   },
   "jsonrpc" : "2.0"
}

Which in more human-readable form is:

key ddeb9aa1bfc353c9c54e21dffb470f65d9c22a0662616c616e63654f700000000000000007
711fc10d720c5dfdaba0b86784a1cac6d20c5b8323dbdd7d9732136dcef779b7 branch
        0: 9d23180f8175dbac849dc17ec5f08951e0c705b6726ed7973ad4756e8aaa6e66
        1: 5c4209eab5d65975a565bb8f3ade8be1a5dfbf5fd0954f4ecfabd7e38c02832c
        2: 37f6b5f3f05fb83fb47b378687d7b39533991eb8695a9810271e765d1977b471
        3: 9748b2d4e7b8dae40789d58eff7207e53a3ecf0c207bee5fadc3df25bf5226dd
        4: 46a9df11389f682b21c00fef28a2e2da4d0b225ccfa2d056f2b0b575edd5a5d8
        5: 96dc6a70828625f4a921b381190e511a3908965a73ccd20e44d2ab3fd7c02c34
        6: cbc7511c3f2fc6b1d9361d03d8649b95a83c8cbfe7ad589c7b38392fe536d0ce
        7: 007f596e62c0390aff28db138f23cd4a34653a3841e4da14165c1b807c2c0731
        8: 74b49083106bd7f4fbb4a28a7265000c11556093223da9a6b2d816c6642d5562
        9: f843420b422a9a80fd23ecd407a3edce027ce75564cf07a37416743cc9d32233
        a: 97e961258ff4bf92f956e4bdde5bb095b123e4a3a8664cad1667dccea992ab52
        b: 6f2ab41d715edf45845989c9609fe848cf2396afb88fbab8233805e7959937e6
        c: b1885c98529849e34abf20fbb2dd8bee9d53a4deb8a4f61f56867e63ed942819
        d: 28acc0f8dc9ebb24347eac6eb28bb9228f8af467ce325fab0f6453a27afb16b2
        e: 84df7655c878c6b727cc0ba1b9e272f8d2facd070a984687e5b05b2c3e7f5733
        f: 306951fca14d6c0c12a70007793d77ad754c088023e6430caa6e5bd18041f0f0
28acc0f8dc9ebb24347eac6eb28bb9228f8af467ce325fab0f6453a27afb16b2 branch
        0: 47fa1b2a2860a570198c94d050211bbeab7b69099a9b0009c2f45f0af1e84896
        1: bee79a72276678402d85a1d6b0b9f0cec8f9dfb1a0febf0983dd5948f3f88a98
        3: def0cee8687401e3e1170d81a143ca11851575cafeb8cb41a0bc61781b4fbf6e
        4: 6d44b305bf9c71802e03cbaf43eb169abb6c1e7dc102829fa07d0a096430c9ca
        5: ded55b3398fd9d122ccb90a109fb79b890548e10e81488c09eb91fb9106ab719
        8: b25f2512139aa6c0d00362736ea2e35c287cd72939860ddc2acfcaba9811dab1
        9: 17574ab014e408ceb3e7cf0a2d1a24e2beb004f04b9c9fd88b34492f09aae87e
        a: 0f333055b267dfe680a747254fb5ab780a8c7439b9a7c6cde4a4c8ea71da0d5b
        d: de4546572a22c09e8a8c24226725bec382373d1a3df2be372d1b17097d2b11a6
        e: 9e2318f91549240b2bea9beb8c47c36b16a93483159013354b69d4c6fac9523c
        f: 3f479384130ba56fe25003599111d5b64e3f83eb5b5c9f6aee19ff244a3426d5
de4546572a22c09e8a8c24226725bec382373d1a3df2be372d1b17097d2b11a6 branch
        a: ca2fe73cf5a592f2f4135210ab9f107d78726509bd1d95685526a4c0fe04c477
        e: fd8a11aaf2cbc5ae87158a6ab42e6af110c2b3c39e18792a30f7e042a839de9d
fd8a11aaf2cbc5ae87158a6ab42e6af110c2b3c39e18792a30f7e042a839de9d extension 01250b090a0a010b0f0c0305030c090c05040e02010d0f0f0b0407000f06050d090c02020a0006204e745fdda2dd1566d4e2905e1d1ec1021f28b245a3f8dbc639e422cd35c79e55
559ec735cd22e439c6dbf8a345b2281f02c11e1d5e90e2d46615dda2dd5f744e branch
        6: 632e6eedcf29162641a3addf86028f5c5589727f64946c2f22a8797429fb0b9b
        7: 7c5df1575a66b70e74e1ce25fd2e06a1982e79305b08054b358e1e59dd9f74e9
632e6eedcf29162641a3addf86028f5c5589727f64946c2f22a8797429fb0b9b branch
        2: ba4a665d1dd1f0a030fb46c347ef8aa70e23a52a779d95c33b7d9cd5af0935f5
        9: 48d2295ff0c82815afe5290a07726fd055f108f30c00f2c50d8ed273235ae11c
ba4a665d1dd1f0a030fb46c347ef8aa70e23a52a779d95c33b7d9cd5af0935f5 extension 01200601060c0601060e06030605040f07000000000000000000000000000000000720c4a8c94030de3b6d2165c02ddb2b998e252fc5e9bf656ede704e86c3379b0531
31059b37c3864e70de6e65bfe9c52f258e992bdb2dc065216d3bde3040c9a8c4 leaf 03050002102700

The key is the same, ddeb9aa1bfc353c9c54e21dffb470f65d9c22a0662616c616e63654f700000000000000007, and the proof length is the same consisting of:

  • branch at d
  • branch at d
  • branch at e
  • extension for b9aa1bfc353c9c54e21dffb470f65d9c22a06
  • branch at 6
  • branch at 2
  • extension for 616c616e63654f700000000000000007
  • a leaf, finally

Notice that for the sixth step (branch at 2) that corresponds to ddeb9aa1bfc353c9c54e21dffb470f65d9c22a0662 prefix we have a branch node with non-null options for 2 and 9 for the block 784077, but we have options 2, 4 and 9 for the block 784078, which tells us that we have something in the trie with a prefix of ddeb9aa1bfc353c9c54e21dffb470f65d9c22a0664 and this something was created by the block 784078.

But if we're to look back at the change set for this block there is nothing with the prefix of ddeb9aa1bfc353c9c54e21dffb470f65d9c22a0664. More than that, there is nothing with this prefix added at least up to 3.6M height (most probably even higher, that's just the state dump I have at hand). So this branch seems to be an erroneous one and it shouldn't exist. Removing it should lead to proper StateRoot value for this block.

All 14 comments

@KickSeason plz, have a look.

Marvelous analysis. I'm looking into it. How did you notice this?

How did you notice this?

Half a day staring at pictures like this does wonders:
Screenshot_20200604_123800

On a more serious note we have an implementation of MPT (and other neox-2.x features) in neo-go now and this is the first block (for now) where our StateRoots start to differ even though storage changes are exactly the same.

@roman-khimov Is the StateDumper json data from neo-project/neo or neo-go?

From neo-project/neo, of course, but it's the same. It's all the same as of current neo-go.

Thanks. I'm trying to find the reason.

image
I download the neox-2.x release, resync the blocks and get the same StateRoot with neo-go on MacOS.
Will try on linux and check the seeds.

To share the results.
0x91a8bc562b2f5c691f31d3339257044c8b9b197e631316d6dda25be1a3ca0db6 on MacOS.
0x91a8bc562b2f5c691f31d3339257044c8b9b197e631316d6dda25be1a3ca0db6 on Windows.

I've just compared the result with another node and it actually has a proper StateRoot. More than that, we have the same StateRoot values up to 4,2M (I've not yet completed import of current blocks into neo-go node). So it's just something with seed nodes and not an implementation issue (or maybe an implementation issue that somehow only affects seed nodes, but that's unlikely). Which is good, actually.

Hi @roman-khimov. @superboyiii just find that installation of Nep5Tracker plugin will cause the issue.

@roman-khimov The issue is here: neo-modules issue #258.

Wow. That's a surprise. But at least we know now that pure node doesn't have this problem.

Wow. That's a surprise. But at least we know now that pure node doesn't have this problem.

Yes, we'll try to find out the issue in this plugin and make a hot fix.

@roman-khimov We fixed it in RpcNep5Tracker:https://github.com/neo-project/neo-modules/pull/259

Close? It was fixed in neo-project/neo-modules#259

Was this page helpful?
0 / 5 - 0 ratings

Related issues

lock9 picture lock9  Â·  4Comments

igormcoelho picture igormcoelho  Â·  4Comments

igormcoelho picture igormcoelho  Â·  3Comments

igormcoelho picture igormcoelho  Â·  3Comments

roman-khimov picture roman-khimov  Â·  3Comments