Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

T5 stateroot mismatch since 2588120 #3105

Closed
roman-khimov opened this issue Aug 29, 2023 · 10 comments
Closed

T5 stateroot mismatch since 2588120 #3105

roman-khimov opened this issue Aug 29, 2023 · 10 comments
Labels
bug Something isn't working

Comments

@roman-khimov
Copy link
Member

Current Behavior

neogo-testnet-rpc[825]: 2023-08-29T05:09:22.662Z        ERROR        can't add SV-signed state root        {"error": "stateroot mismatch at block 2598072: 10323e7a958ce663efd03dabdc7ea9f47c12c9ca23505321a700b9ee1b294657 vs 652d7009386be0a613f29e8f5a522abfa371c7d0e43fdd5b8076b2945dc42a00"}

Expected Behavior

Stateroots should match.

Context

$ go run scripts/compare-states/compare-states.go https://rpc.t5.n3.nspcc.ru:20331 http://seed4t5.neo.org:20332
at 0: 9c1361fbbe2a0ce31910f992cbdfb8afee6f178e5d1aabdd1c6f2af90440e239 vs 9c1361fbbe2a0ce31910f992cbdfb8afee6f178e5d1aabdd1c6f2af90440e239
at 2598082: eb2ce41a154bec1939c2bde5d2f8ca32c48fdb7e4ac910692e55809d75979690 vs f4ff95892fe78b601360b741c8d3373ff469847cdbd36b44c4eb4f3c79710bed
at 1299041: 8d6fbc4bf4b342326b080310bbbfff35475ce1e088080f0b678cad89156445ed vs 8d6fbc4bf4b342326b080310bbbfff35475ce1e088080f0b678cad89156445ed
at 1948561: 9542229deff28b19afe768d22e7600db15eec844590f43d3378be2c9fead152d vs 9542229deff28b19afe768d22e7600db15eec844590f43d3378be2c9fead152d
at 2273321: ea98118905b21e451358ffa89503a0c4d210614b7b22945c168aa4a392ef78f0 vs ea98118905b21e451358ffa89503a0c4d210614b7b22945c168aa4a392ef78f0
at 2435701: bc64d7a8232609be346dd0ecd11fa9f202baeadcf83ba45319fd118a27c4ecef vs bc64d7a8232609be346dd0ecd11fa9f202baeadcf83ba45319fd118a27c4ecef
at 2516891: 53e0fe2141bd81bafe632fc7a68c7f48168c7acde32626a98df5863ce4cd4d40 vs 53e0fe2141bd81bafe632fc7a68c7f48168c7acde32626a98df5863ce4cd4d40
at 2557486: d9423ae6b7d6b70d53597f802461a45dd7b9739b813bc8b30816efcca874dcb1 vs d9423ae6b7d6b70d53597f802461a45dd7b9739b813bc8b30816efcca874dcb1
at 2577784: e6f686a61279c9855f3cf54aa72387e31260235ecb5a4017210295e62a39fc13 vs e6f686a61279c9855f3cf54aa72387e31260235ecb5a4017210295e62a39fc13
at 2587933: 484adb8700dc8b1fbe350fcecace1fae31649d4f397115d2a6d9664929e56c15 vs 484adb8700dc8b1fbe350fcecace1fae31649d4f397115d2a6d9664929e56c15
at 2593007: 09568d3827713f3a5407b34435deebb30e6118ab0eda3f900e508126b8d8939b vs 292910f8c9ad97325a8de7f6fd4f35f17b9ee52ff5f90017aef2ee5504bfcb9c
at 2590470: fa189e6b55f177b87e6b2c34557ecdff91a281b02c15dae8e4f0285b1c091a0a vs 6cc548d1e3fc7cb66504a0a8169107ebef3688cd02d638507ef0055d656a876b
at 2589201: e539db0c008e06cf9f975f1fb3a3783e394b8da54b3cf24ea13579f18fcd3321 vs 69da3a7fa40fc6a51397052b0a6529538bf0c4cc2cac7485dd7ce5f4e020f888
at 2588567: 11ac612591b7d6ae8680c3e0b05095946852e7cf5f43be9df3c8b8d2ccc9a4a8 vs 765b32b88ceeabc6bb1905f503d9d3c068d9e32582e3a3bb179900190d8c2b35
at 2588250: 261cbc45b9fd82bf635abb223d20790b9e690b2283c9829489e32ac62ff99cc6 vs 378c7197273c09665a73b8497fbbde5b8c790832c6a491ac12f46deea277e260
at 2588091: 53c2cf48eb04b2b7e08d99afbac59c5853d34ff82b46dc39ba7eb6971bb6c0dd vs 53c2cf48eb04b2b7e08d99afbac59c5853d34ff82b46dc39ba7eb6971bb6c0dd
at 2588170: 4418aa68c89cd8e752d2b4639e65516d8c5491c124bbdbf965a6a35710cb9cbd vs a2cc772b95f28c3103d4df44b184be6491c6248b2b06139865390e5ccea5d4d4
at 2588130: 69daa088d3d7ed0d12d6ee92c37d13fafe16218aa6cbb46711d7cbc463ff5af2 vs e8fa584738484d5d4b80eb09268ab8aa6d87f6dc1743ff18dbd2b30e573681bf
at 2588110: 1845c6bda5a95153911d76381ebc0abd87db83c9a81624175623207d8428f076 vs 1845c6bda5a95153911d76381ebc0abd87db83c9a81624175623207d8428f076
at 2588120: 90bcc0cc60ca13772254495f284df089099edc25c133a206e8e68d2f5a4d8fad vs 1be3c135e9ef79b7e67dd56571fc36d9b9ed6b892cd75369f0480dd0e16b844d
at 2588115: 8340a5d3be3a29400251ff059ef39c582aac581b0db59354a5f07b5538267ab8 vs 8340a5d3be3a29400251ff059ef39c582aac581b0db59354a5f07b5538267ab8
at 2588117: 852183d2ce4a786bd1f200cbce6de74799d535159903ad878bc5ee7d810d501c vs 852183d2ce4a786bd1f200cbce6de74799d535159903ad878bc5ee7d810d501c
at 2588118: af88959257acc64dbe9ec4eb452096f9773031edd575a6be6d85e86b321cd217 vs af88959257acc64dbe9ec4eb452096f9773031edd575a6be6d85e86b321cd217
at 2588119: 049d98c300e5fa9d8439ddff65ce0ed611a0629e09e536a4fc89b4ac3219c4a3 vs 049d98c300e5fa9d8439ddff65ce0ed611a0629e09e536a4fc89b4ac3219c4a3
state differs at 2588120, block d88d5ed9bc6247bd5961cdf00944fa3791bed6c35b24bc01ce082f092d813ef5
transaction e4862e339cf440dfcecff2dd7e0473ccfdaef5ddbaa8bde1aaeb5b24094495d8:
--- https://rpc.t5.n3.nspcc.ru:20331
+++ http://seed4t5.neo.org:20332
@@ -1,2 +1,2 @@
-(*result.ApplicationLog)(0xc0003b32c0)({
+(*result.ApplicationLog)(0xc000270040)({
  Container: (util.Uint256) (len=32 cap=32) d8954409245bebaae1bda8baddf5aefdcc73047eddf2cfcedf40f49c332e86e4,
@@ -9,3 +9,3 @@
    Stack: ([]stackitem.Item) (len=1 cap=1) {
-    (*stackitem.Array)(0xc000375a70)(Array)
+    (*stackitem.Array)(0xc00018c450)(Array)
    },
@@ -15,3 +15,3 @@
      Name: (string) (len=6) "Deploy",
-     Item: (*stackitem.Array)(0xc000374b10)(Array)
+     Item: (*stackitem.Array)(0xc0002c0270)(Array)
     }

different state found
exit status 1
@roman-khimov
Copy link
Member Author

Manifest from transaction's script:

7b226e616d65223a2243616c6c4f7261636c65436f6e74726163742d36222c2267726f757073223a5b5d2c226665617475726573223a7b7d2c22737570706f727465647374616e6461726473223a5b5d2c22616269223a7b226d6574686f6473223a5b7b226e616d65223a2272657175657374222c22706172616d6574657273223a5b7b226e616d65223a2275726c222c2274797065223a22537472696e67227d2c7b226e616d65223a2266696c746572222c2274797065223a22537472696e67227d2c7b226e616d65223a22676173466f72526573706f6e7365222c2274797065223a22496e7465676572227d5d2c226f6666736574223a302c2272657475726e74797065223a22566f6964222c2273616665223a66616c73657d2c7b226e616d65223a2263616c6c6261636b222c22706172616d6574657273223a5b7b226e616d65223a2275726c222c2274797065223a22537472696e67227d2c7b226e616d65223a227573657244617461222c2274797065223a22416e79227d2c7b226e616d65223a22726573706f6e7365436f6465222c2274797065223a22496e7465676572227d2c7b226e616d65223a22726573706f6e7365222c2274797065223a22427974654172726179227d5d2c226f6666736574223a38362c2272657475726e74797065223a22566f6964222c2273616665223a66616c73657d2c7b226e616d65223a2267657453746f72656455726c222c22706172616d6574657273223a5b5d2c226f6666736574223a3132392c2272657475726e74797065223a22537472696e67222c2273616665223a66616c73657d2c7b226e616d65223a2267657453746f726564526573706f6e7365436f6465222c22706172616d6574657273223a5b5d2c226f6666736574223a3134322c2272657475726e74797065223a22496e7465676572222c2273616665223a66616c73657d2c7b226e616d65223a2267657453746f726564526573706f6e7365222c22706172616d6574657273223a5b5d2c226f6666736574223a3136352c2272657475726e74797065223a22427974654172726179222c2273616665223a66616c73657d5d2c226576656e7473223a5b5d7d2c227065726d697373696f6e73223a5b7b22636f6e7472616374223a22307866653932346237636665383964646432373161626166373231306138306137653131313738373538222c226d6574686f6473223a222a227d2c7b22636f6e7472616374223a222a222c226d6574686f6473223a222a227d5d2c22747275737473223a5b22307866653932346237636665383964646432373161626166373231306138306137653131313738373538222c222a225d2c226578747261223a7b7d7d

It's

{"name":"CallOracleContract-6","groups":[],"features":{},"supportedstandards":[],"abi":{"methods":[{"name":"request","parameters":[{"name":"url","type":"String"},{"name":"filter","type":"String"},{"name":"gasForResponse","type":"Integer"}],"offset":0,"returntype":"Void","safe":false},{"name":"callback","parameters":[{"name":"url","type":"String"},{"name":"userData","type":"Any"},{"name":"responseCode","type":"Integer"},{"name":"response","type":"ByteArray"}],"offset":86,"returntype":"Void","safe":false},{"name":"getStoredUrl","parameters":[],"offset":129,"returntype":"String","safe":false},{"name":"getStoredResponseCode","parameters":[],"offset":142,"returntype":"Integer","safe":false},{"name":"getStoredResponse","parameters":[],"offset":165,"returntype":"ByteArray","safe":false}],"events":[]},"permissions":[{"contract":"0xfe924b7cfe89ddd271abaf7210a80a7e11178758","methods":"*"},{"contract":"*","methods":"*"}],"trusts":["0xfe924b7cfe89ddd271abaf7210a80a7e11178758","*"],"extra":{}}

or

{
   "groups" : [],
   "supportedstandards" : [],
   "permissions" : [
      {
         "methods" : "*",
         "contract" : "0xfe924b7cfe89ddd271abaf7210a80a7e11178758"
      },
      {
         "contract" : "*",
         "methods" : "*"
      }
   ],
   "trusts" : [
      "0xfe924b7cfe89ddd271abaf7210a80a7e11178758",
      "*"
   ],
   "features" : {},
   "abi" : {
      "events" : [],
      "methods" : [
         {
            "offset" : 0,
            "parameters" : [
               {
                  "name" : "url",
                  "type" : "String"
               },
               {
                  "name" : "filter",
                  "type" : "String"
               },
               {
                  "name" : "gasForResponse",
                  "type" : "Integer"
               }
            ],
            "name" : "request",
            "safe" : false,
            "returntype" : "Void"
         },
         {
            "safe" : false,
            "returntype" : "Void",
            "offset" : 86,
            "parameters" : [
               {
                  "name" : "url",
                  "type" : "String"
               },
               {
                  "name" : "userData",
                  "type" : "Any"
               },
               {
                  "type" : "Integer",
                  "name" : "responseCode"
               },
               {
                  "type" : "ByteArray",
                  "name" : "response"
               }
            ],
            "name" : "callback"
         },
         {
            "name" : "getStoredUrl",
            "offset" : 129,
            "parameters" : [],
            "safe" : false,
            "returntype" : "String"
         },
         {
            "parameters" : [],
            "offset" : 142,
            "name" : "getStoredResponseCode",
            "safe" : false,
            "returntype" : "Integer"
         },
         {
            "returntype" : "ByteArray",
            "safe" : false,
            "offset" : 165,
            "parameters" : [],
            "name" : "getStoredResponse"
         }
      ]
   },
   "extra" : {},
   "name" : "CallOracleContract-6"
}

@roman-khimov
Copy link
Member Author

C#:

$ curl -sd '{ "jsonrpc": "2.0", "id": 5, "method": "getapplicationlog", "params": ["e4862e339cf440dfcecff2dd7e0473ccfdaef5ddbaa8bde1aaeb5b24094495d8"] }' http://seed4t5.neo.org:20332 | json_pp
{
   "result" : {
      "txid" : "0xe4862e339cf440dfcecff2dd7e0473ccfdaef5ddbaa8bde1aaeb5b24094495d8",
      "executions" : [
         {
            "stack" : [
               {
                  "value" : [
                     {
                        "type" : "Integer",
                        "value" : "1264"
                     },
                     {
                        "type" : "Integer",
                        "value" : "0"
                     },
                     {
                        "type" : "ByteString",
                        "value" : "rSNncRc3z2wQRVj141x2+2Ls+xI="
                     },
                     {
                        "value" : "TkVGM25lb3czai0zLjIwLjIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALJXAAMMFFiHFxF+CqgQcq+rcdLdif58S5L+eHkMCGNhbGxiYWNrC3oVw0pRFFDQSlETUNBKURJQ0EpREVDQSlEQUNBQH1AMB3JlcXVlc3RQQWJ9W1JFQFcABEGb9mfOEHhTQeY/GIRBm/ZnzhF6U0HmPxiEQZv2Z84Se1NB5j8YhEBB9rRr4hBQQZJd6DFAQfa0a+IRUEGSXegxStgmBkUQIgTbIUBB9rRr4hJQQZJd6DFAh0/sEw==",
                        "type" : "ByteString"
                     },
                     {
                        "value" : [
                           {
                              "value" : "Q2FsbE9yYWNsZUNvbnRyYWN0LTY=",
                              "type" : "ByteString"
                           },
                           {
                              "type" : "Array",
                              "value" : []
                           },
                           {
                              "value" : [],
                              "type" : "Map"
                           },
                           {
                              "value" : [],
                              "type" : "Array"
                           },
                           {
                              "value" : [
                                 {
                                    "value" : [
                                       {
                                          "type" : "Struct",
                                          "value" : [
                                             {
                                                "type" : "ByteString",
                                                "value" : "cmVxdWVzdA=="
                                             },
                                             {
                                                "type" : "Array",
                                                "value" : [
                                                   {
                                                      "value" : [
                                                         {
                                                            "value" : "dXJs",
                                                            "type" : "ByteString"
                                                         },
                                                         {
                                                            "type" : "Integer",
                                                            "value" : "19"
                                                         }
                                                      ],
                                                      "type" : "Struct"
                                                   },
                                                   {
                                                      "value" : [
                                                         {
                                                            "value" : "ZmlsdGVy",
                                                            "type" : "ByteString"
                                                         },
                                                         {
                                                            "type" : "Integer",
                                                            "value" : "19"
                                                         }
                                                      ],
                                                      "type" : "Struct"
                                                   },
                                                   {
                                                      "type" : "Struct",
                                                      "value" : [
                                                         {
                                                            "type" : "ByteString",
                                                            "value" : "Z2FzRm9yUmVzcG9uc2U="
                                                         },
                                                         {
                                                            "type" : "Integer",
                                                            "value" : "17"
                                                         }
                                                      ]
                                                   }
                                                ]
                                             },
                                             {
                                                "value" : "255",
                                                "type" : "Integer"
                                             },
                                             {
                                                "type" : "Integer",
                                                "value" : "0"
                                             },
                                             {
                                                "value" : false,
                                                "type" : "Boolean"
                                             }
                                          ]
                                       },
                                       {
                                          "type" : "Struct",
                                          "value" : [
                                             {
                                                "type" : "ByteString",
                                                "value" : "Y2FsbGJhY2s="
                                             },
                                             {
                                                "value" : [
                                                   {
                                                      "value" : [
                                                         {
                                                            "type" : "ByteString",
                                                            "value" : "dXJs"
                                                         },
                                                         {
                                                            "value" : "19",
                                                            "type" : "Integer"
                                                         }
                                                      ],
                                                      "type" : "Struct"
                                                   },
                                                   {
                                                      "type" : "Struct",
                                                      "value" : [
                                                         {
                                                            "value" : "dXNlckRhdGE=",
                                                            "type" : "ByteString"
                                                         },
                                                         {
                                                            "type" : "Integer",
                                                            "value" : "0"
                                                         }
                                                      ]
                                                   },
                                                   {
                                                      "type" : "Struct",
                                                      "value" : [
                                                         {
                                                            "type" : "ByteString",
                                                            "value" : "cmVzcG9uc2VDb2Rl"
                                                         },
                                                         {
                                                            "value" : "17",
                                                            "type" : "Integer"
                                                         }
                                                      ]
                                                   },
                                                   {
                                                      "value" : [
                                                         {
                                                            "value" : "cmVzcG9uc2U=",
                                                            "type" : "ByteString"
                                                         },
                                                         {
                                                            "value" : "18",
                                                            "type" : "Integer"
                                                         }
                                                      ],
                                                      "type" : "Struct"
                                                   }
                                                ],
                                                "type" : "Array"
                                             },
                                             {
                                                "type" : "Integer",
                                                "value" : "255"
                                             },
                                             {
                                                "type" : "Integer",
                                                "value" : "86"
                                             },
                                             {
                                                "value" : false,
                                                "type" : "Boolean"
                                             }
                                          ]
                                       },
                                       {
                                          "value" : [
                                             {
                                                "value" : "Z2V0U3RvcmVkVXJs",
                                                "type" : "ByteString"
                                             },
                                             {
                                                "type" : "Array",
                                                "value" : []
                                             },
                                             {
                                                "type" : "Integer",
                                                "value" : "19"
                                             },
                                             {
                                                "type" : "Integer",
                                                "value" : "129"
                                             },
                                             {
                                                "type" : "Boolean",
                                                "value" : false
                                             }
                                          ],
                                          "type" : "Struct"
                                       },
                                       {
                                          "value" : [
                                             {
                                                "type" : "ByteString",
                                                "value" : "Z2V0U3RvcmVkUmVzcG9uc2VDb2Rl"
                                             },
                                             {
                                                "value" : [],
                                                "type" : "Array"
                                             },
                                             {
                                                "value" : "17",
                                                "type" : "Integer"
                                             },
                                             {
                                                "type" : "Integer",
                                                "value" : "142"
                                             },
                                             {
                                                "value" : false,
                                                "type" : "Boolean"
                                             }
                                          ],
                                          "type" : "Struct"
                                       },
                                       {
                                          "type" : "Struct",
                                          "value" : [
                                             {
                                                "type" : "ByteString",
                                                "value" : "Z2V0U3RvcmVkUmVzcG9uc2U="
                                             },
                                             {
                                                "value" : [],
                                                "type" : "Array"
                                             },
                                             {
                                                "type" : "Integer",
                                                "value" : "18"
                                             },
                                             {
                                                "value" : "165",
                                                "type" : "Integer"
                                             },
                                             {
                                                "value" : false,
                                                "type" : "Boolean"
                                             }
                                          ]
                                       }
                                    ],
                                    "type" : "Array"
                                 },
                                 {
                                    "type" : "Array",
                                    "value" : []
                                 }
                              ],
                              "type" : "Struct"
                           },
                           {
                              "type" : "Array",
                              "value" : [
                                 {
                                    "value" : [
                                       {
                                          "value" : "WIcXEX4KqBByr6tx0t2J/nxLkv4=",
                                          "type" : "ByteString"
                                       },
                                       {
                                          "type" : "Any"
                                       }
                                    ],
                                    "type" : "Struct"
                                 },
                                 {
                                    "value" : [
                                       {
                                          "type" : "Any"
                                       },
                                       {
                                          "type" : "Any"
                                       }
                                    ],
                                    "type" : "Struct"
                                 }
                              ]
                           },
                           {
                              "value" : [
                                 {
                                    "type" : "ByteString",
                                    "value" : "WIcXEX4KqBByr6tx0t2J/nxLkv4="
                                 },
                                 {
                                    "type" : "ByteString",
                                    "value" : ""
                                 }
                              ],
                              "type" : "Array"
                           },
                           {
                              "value" : "e30=",
                              "type" : "ByteString"
                           }
                        ],
                        "type" : "Struct"
                     }
                  ],
                  "type" : "Array"
               }
            ],
            "notifications" : [
               {
                  "eventname" : "Deploy",
                  "contract" : "0xfffdc93764dbaddd97c48f252a53ea4643faa3fd",
                  "state" : {
                     "type" : "Array",
                     "value" : [
                        {
                           "type" : "ByteString",
                           "value" : "rSNncRc3z2wQRVj141x2+2Ls+xI="
                        }
                     ]
                  }
               }
            ],
            "trigger" : "Application",
            "gasconsumed" : "1000107577",
            "vmstate" : "HALT",
            "exception" : null
         }
      ]
   },
   "id" : 5,
   "jsonrpc" : "2.0"
}

NeoGo:

$ curl -sd '{ "jsonrpc": "2.0", "id": 5, "method": "getapplicationlog", "params": ["e4862e339cf440dfcecff2dd7e0473ccfdaef5ddbaa8bde1aaeb5b24094495d8"] }' https://rpc.t5.n3.nspcc.ru:20331 | json_pp
{
   "result" : {
      "txid" : "0xe4862e339cf440dfcecff2dd7e0473ccfdaef5ddbaa8bde1aaeb5b24094495d8",
      "executions" : [
         {
            "notifications" : [
               {
                  "contract" : "0xfffdc93764dbaddd97c48f252a53ea4643faa3fd",
                  "state" : {
                     "value" : [
                        {
                           "value" : "rSNncRc3z2wQRVj141x2+2Ls+xI=",
                           "type" : "ByteString"
                        }
                     ],
                     "type" : "Array"
                  },
                  "eventname" : "Deploy"
               }
            ],
            "vmstate" : "HALT",
            "trigger" : "Application",
            "stack" : [
               {
                  "value" : [
                     {
                        "type" : "Integer",
                        "value" : "1264"
                     },
                     {
                        "value" : "0",
                        "type" : "Integer"
                     },
                     {
                        "type" : "ByteString",
                        "value" : "rSNncRc3z2wQRVj141x2+2Ls+xI="
                     },
                     {
                        "value" : "TkVGM25lb3czai0zLjIwLjIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALJXAAMMFFiHFxF+CqgQcq+rcdLdif58S5L+eHkMCGNhbGxiYWNrC3oVw0pRFFDQSlETUNBKURJQ0EpREVDQSlEQUNBQH1AMB3JlcXVlc3RQQWJ9W1JFQFcABEGb9mfOEHhTQeY/GIRBm/ZnzhF6U0HmPxiEQZv2Z84Se1NB5j8YhEBB9rRr4hBQQZJd6DFAQfa0a+IRUEGSXegxStgmBkUQIgTbIUBB9rRr4hJQQZJd6DFAh0/sEw==",
                        "type" : "ByteString"
                     },
                     {
                        "value" : [
                           {
                              "value" : "Q2FsbE9yYWNsZUNvbnRyYWN0LTY=",
                              "type" : "ByteString"
                           },
                           {
                              "type" : "Array",
                              "value" : []
                           },
                           {
                              "type" : "Map",
                              "value" : []
                           },
                           {
                              "type" : "Array",
                              "value" : []
                           },
                           {
                              "value" : [
                                 {
                                    "type" : "Array",
                                    "value" : [
                                       {
                                          "value" : [
                                             {
                                                "type" : "ByteString",
                                                "value" : "cmVxdWVzdA=="
                                             },
                                             {
                                                "value" : [
                                                   {
                                                      "type" : "Struct",
                                                      "value" : [
                                                         {
                                                            "type" : "ByteString",
                                                            "value" : "dXJs"
                                                         },
                                                         {
                                                            "type" : "Integer",
                                                            "value" : "19"
                                                         }
                                                      ]
                                                   },
                                                   {
                                                      "type" : "Struct",
                                                      "value" : [
                                                         {
                                                            "type" : "ByteString",
                                                            "value" : "ZmlsdGVy"
                                                         },
                                                         {
                                                            "value" : "19",
                                                            "type" : "Integer"
                                                         }
                                                      ]
                                                   },
                                                   {
                                                      "value" : [
                                                         {
                                                            "value" : "Z2FzRm9yUmVzcG9uc2U=",
                                                            "type" : "ByteString"
                                                         },
                                                         {
                                                            "value" : "17",
                                                            "type" : "Integer"
                                                         }
                                                      ],
                                                      "type" : "Struct"
                                                   }
                                                ],
                                                "type" : "Array"
                                             },
                                             {
                                                "type" : "Integer",
                                                "value" : "255"
                                             },
                                             {
                                                "value" : "0",
                                                "type" : "Integer"
                                             },
                                             {
                                                "type" : "Boolean",
                                                "value" : false
                                             }
                                          ],
                                          "type" : "Struct"
                                       },
                                       {
                                          "value" : [
                                             {
                                                "value" : "Y2FsbGJhY2s=",
                                                "type" : "ByteString"
                                             },
                                             {
                                                "value" : [
                                                   {
                                                      "type" : "Struct",
                                                      "value" : [
                                                         {
                                                            "value" : "dXJs",
                                                            "type" : "ByteString"
                                                         },
                                                         {
                                                            "value" : "19",
                                                            "type" : "Integer"
                                                         }
                                                      ]
                                                   },
                                                   {
                                                      "type" : "Struct",
                                                      "value" : [
                                                         {
                                                            "type" : "ByteString",
                                                            "value" : "dXNlckRhdGE="
                                                         },
                                                         {
                                                            "value" : "0",
                                                            "type" : "Integer"
                                                         }
                                                      ]
                                                   },
                                                   {
                                                      "value" : [
                                                         {
                                                            "value" : "cmVzcG9uc2VDb2Rl",
                                                            "type" : "ByteString"
                                                         },
                                                         {
                                                            "value" : "17",
                                                            "type" : "Integer"
                                                         }
                                                      ],
                                                      "type" : "Struct"
                                                   },
                                                   {
                                                      "value" : [
                                                         {
                                                            "value" : "cmVzcG9uc2U=",
                                                            "type" : "ByteString"
                                                         },
                                                         {
                                                            "value" : "18",
                                                            "type" : "Integer"
                                                         }
                                                      ],
                                                      "type" : "Struct"
                                                   }
                                                ],
                                                "type" : "Array"
                                             },
                                             {
                                                "value" : "255",
                                                "type" : "Integer"
                                             },
                                             {
                                                "type" : "Integer",
                                                "value" : "86"
                                             },
                                             {
                                                "type" : "Boolean",
                                                "value" : false
                                             }
                                          ],
                                          "type" : "Struct"
                                       },
                                       {
                                          "type" : "Struct",
                                          "value" : [
                                             {
                                                "value" : "Z2V0U3RvcmVkVXJs",
                                                "type" : "ByteString"
                                             },
                                             {
                                                "value" : [],
                                                "type" : "Array"
                                             },
                                             {
                                                "value" : "19",
                                                "type" : "Integer"
                                             },
                                             {
                                                "value" : "129",
                                                "type" : "Integer"
                                             },
                                             {
                                                "type" : "Boolean",
                                                "value" : false
                                             }
                                          ]
                                       },
                                       {
                                          "type" : "Struct",
                                          "value" : [
                                             {
                                                "value" : "Z2V0U3RvcmVkUmVzcG9uc2VDb2Rl",
                                                "type" : "ByteString"
                                             },
                                             {
                                                "value" : [],
                                                "type" : "Array"
                                             },
                                             {
                                                "value" : "17",
                                                "type" : "Integer"
                                             },
                                             {
                                                "type" : "Integer",
                                                "value" : "142"
                                             },
                                             {
                                                "value" : false,
                                                "type" : "Boolean"
                                             }
                                          ]
                                       },
                                       {
                                          "value" : [
                                             {
                                                "value" : "Z2V0U3RvcmVkUmVzcG9uc2U=",
                                                "type" : "ByteString"
                                             },
                                             {
                                                "type" : "Array",
                                                "value" : []
                                             },
                                             {
                                                "value" : "18",
                                                "type" : "Integer"
                                             },
                                             {
                                                "type" : "Integer",
                                                "value" : "165"
                                             },
                                             {
                                                "type" : "Boolean",
                                                "value" : false
                                             }
                                          ],
                                          "type" : "Struct"
                                       }
                                    ]
                                 },
                                 {
                                    "type" : "Array",
                                    "value" : []
                                 }
                              ],
                              "type" : "Struct"
                           },
                           {
                              "value" : [
                                 {
                                    "value" : [
                                       {
                                          "value" : "WIcXEX4KqBByr6tx0t2J/nxLkv4=",
                                          "type" : "ByteString"
                                       },
                                       {
                                          "type" : "Any"
                                       }
                                    ],
                                    "type" : "Struct"
                                 },
                                 {
                                    "value" : [
                                       {
                                          "type" : "Any"
                                       },
                                       {
                                          "type" : "Any"
                                       }
                                    ],
                                    "type" : "Struct"
                                 }
                              ],
                              "type" : "Array"
                           },
                           {
                              "type" : "Array",
                              "value" : [
                                 {
                                    "value" : "WIcXEX4KqBByr6tx0t2J/nxLkv4=",
                                    "type" : "ByteString"
                                 },
                                 {
                                    "type" : "Any"
                                 }
                              ]
                           },
                           {
                              "value" : "e30=",
                              "type" : "ByteString"
                           }
                        ],
                        "type" : "Struct"
                     }
                  ],
                  "type" : "Array"
               }
            ],
            "exception" : null,
            "gasconsumed" : "1000107577"
         }
      ]
   },
   "jsonrpc" : "2.0",
   "id" : 5
}

@roman-khimov
Copy link
Member Author

Contract as it's saved in the storage:

$ curl -sd '{ "jsonrpc": "2.0", "id": 5, "method": "getstorage", "params": ["0xfffdc93764dbaddd97c48f252a53ea4643faa3fd", "CK0jZ3EXN89sEEVY9eNcdvti7PsS"] }' http://seed4t5.neo.org:20332 | json_pp
{
   "jsonrpc" : "2.0",
   "id" : 5,
   "result" : "QAUhAvAEIQAoFK0jZ3EXN89sEEVY9eNcdvti7PsSKP0AAU5FRjNuZW93M2otMy4yMC4yAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACyVwADDBRYhxcRfgqoEHKvq3HS3Yn+fEuS/nh5DAhjYWxsYmFjawt6FcNKURRQ0EpRE1DQSlESUNBKURFQ0EpREFDQUB9QDAdyZXF1ZXN0UEFifVtSRUBXAARBm/ZnzhB4U0HmPxiEQZv2Z84RelNB5j8YhEGb9mfOEntTQeY/GIRAQfa0a+IQUEGSXegxQEH2tGviEVBBkl3oMUrYJgZFECIE2yFAQfa0a+ISUEGSXegxQIdP7BNBCCgUQ2FsbE9yYWNsZUNvbnRyYWN0LTZAAEgAQABBAkAFQQUoB3JlcXVlc3RAA0ECKAN1cmwhARNBAigGZmlsdGVyIQETQQIoDmdhc0ZvclJlc3BvbnNlIQERIQL/ACEAIABBBSgIY2FsbGJhY2tABEECKAN1cmwhARNBAigIdXNlckRhdGEhAEECKAxyZXNwb25zZUNvZGUhARFBAigIcmVzcG9uc2UhARIhAv8AIQFWIABBBSgMZ2V0U3RvcmVkVXJsQAAhARMhAoEAIABBBSgVZ2V0U3RvcmVkUmVzcG9uc2VDb2RlQAAhAREhAo4AIABBBSgRZ2V0U3RvcmVkUmVzcG9uc2VAACEBEiECpQAgAEAAQAJBAigUWIcXEX4KqBByr6tx0t2J/nxLkv4AQQIAAEACKBRYhxcRfgqoEHKvq3HS3Yn+fEuS/igAKAJ7fQ=="
}
$ curl -sd '{ "jsonrpc": "2.0", "id": 5, "method": "getstorage", "params": ["0xfffdc93764dbaddd97c48f252a53ea4643faa3fd", "CK0jZ3EXN89sEEVY9eNcdvti7PsS"] }' https://rpc.t5.n3.nspcc.ru:20331 | json_pp
{
   "id" : 5,
   "jsonrpc" : "2.0",
   "result" : "QAUhAvAEIQAoFK0jZ3EXN89sEEVY9eNcdvti7PsSKP0AAU5FRjNuZW93M2otMy4yMC4yAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACyVwADDBRYhxcRfgqoEHKvq3HS3Yn+fEuS/nh5DAhjYWxsYmFjawt6FcNKURRQ0EpRE1DQSlESUNBKURFQ0EpREFDQUB9QDAdyZXF1ZXN0UEFifVtSRUBXAARBm/ZnzhB4U0HmPxiEQZv2Z84RelNB5j8YhEGb9mfOEntTQeY/GIRAQfa0a+IQUEGSXegxQEH2tGviEVBBkl3oMUrYJgZFECIE2yFAQfa0a+ISUEGSXegxQIdP7BNBCCgUQ2FsbE9yYWNsZUNvbnRyYWN0LTZAAEgAQABBAkAFQQUoB3JlcXVlc3RAA0ECKAN1cmwhARNBAigGZmlsdGVyIQETQQIoDmdhc0ZvclJlc3BvbnNlIQERIQL/ACEAIABBBSgIY2FsbGJhY2tABEECKAN1cmwhARNBAigIdXNlckRhdGEhAEECKAxyZXNwb25zZUNvZGUhARFBAigIcmVzcG9uc2UhARIhAv8AIQFWIABBBSgMZ2V0U3RvcmVkVXJsQAAhARMhAoEAIABBBSgVZ2V0U3RvcmVkUmVzcG9uc2VDb2RlQAAhAREhAo4AIABBBSgRZ2V0U3RvcmVkUmVzcG9uc2VAACEBEiECpQAgAEAAQAJBAigUWIcXEX4KqBByr6tx0t2J/nxLkv4AQQIAAEACKBRYhxcRfgqoEHKvq3HS3Yn+fEuS/gAoAnt9"
}

That's where the state diff comes from.

@roman-khimov
Copy link
Member Author

Literally one byte:

 00000230  02 a5 00 20 00 40 00 40  02 41 02 28 14 58 87 17  |... .@.@.A.(.X..|
 00000240  11 7e 0a a8 10 72 af ab  71 d2 dd 89 fe 7c 4b 92  |.~...r..q....|K.|
 00000250  fe 00 41 02 00 00 40 02  28 14 58 87 17 11 7e 0a  |..A...@.(.X...~.|
-00000260  a8 10 72 af ab 71 d2 dd  89 fe 7c 4b 92 fe 28 00  |..r..q....|K..(.|
-00000270  28 02 7b 7d                                       |(.{}|
-00000274
+00000260  a8 10 72 af ab 71 d2 dd  89 fe 7c 4b 92 fe 00 28  |..r..q....|K...(|
+00000270  02 7b 7d                                          |.{}|
+00000273

@roman-khimov
Copy link
Member Author

The problem is

   "trusts" : [
      "0xfe924b7cfe89ddd271abaf7210a80a7e11178758",
      "*"
   ]

And I think NeoGo behavior is a correct one here.

@roman-khimov
Copy link
Member Author

Let's keep this to track C# fix.

@AnnaShaleva
Copy link
Member

Agree with the diff reason.

@ixje
Copy link
Contributor

ixje commented Aug 31, 2023

Let's keep this to track C# fix.

Just to make sure; you're referring to neo-project/neo#2890 right? Cause then I can track this one, since I got a panic on failing to get this contract state (as in; it fails to process the wildcard in the trusts section of the manifest) when converting from a stack item.

@roman-khimov
Copy link
Member Author

you're referring to neo-project/neo#2890 right?

Yep.

@roman-khimov
Copy link
Member Author

Not a problem for NeoGo 0.102.0 btw with the same state on T5 as 3.6

@roman-khimov roman-khimov closed this as not planned Won't fix, can't repro, duplicate, stale Sep 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants