OmniLayer / omnicore

OmniCore staging tree
http://www.omnilayer.org/
MIT License
753 stars 226 forks source link

one big risk that tx result from omnicore rpc is different from omniexplorer.info #1255

Open kiddx01 opened 2 years ago

kiddx01 commented 2 years ago

using version: omnicore-0.11.0

tx: 9633206b86437bdedbc0efa8aef39887c1666a92d14e6f75b6af02991d18cf2e

query from rpc:

curl -u $A -X POST --header 'content-type: application/json'   --data '{"jsonrpc":"2.0", "method":"omni_gettransaction", "params":["9633206b86437bdedbc0efa8aef39887c1666a92d14e6f75b6af02991d18cf2e"]}'  

result:

{
    "result": {
        "txid": "9633206b86437bdedbc0efa8aef39887c1666a92d14e6f75b6af02991d18cf2e",
        "fee": "0.00004050",
        "sendingaddress": "1Cjyz41RWkigaq7zU8YRNbLmk8EmCzsvrJ",
        "referenceaddress": "16TZEuNoE2u36vMUwjNap7pCb3WskwnJKB",
        "ismine": false,
        "version": 0,
        "type_int": 0,
        "type": "Simple Send",
        "propertyid": 31,
        "divisible": true,
        "amount": "77059.80000000",
        "valid": true,
        "blockhash": "00000000000000000000c06cbb2cbaa05508fa288530c9f59957e9e11d45a7c0",
        "blocktime": 1648992488,
        "positioninblock": 498,
        "block": 730250,
        "confirmations": 6043
    },
    "error": null,
    "id": null
}

query from omniexplorer:

curl  https://api.omniexplorer.info/v1/transaction/tx/9633206b86437bdedbc0efa8aef39887c1666a92d14e6f75b6af02991d18cf2e

result:

{
  "amount": "77059.80000000",
  "block": 730250,
  "blockhash": "00000000000000000000c06cbb2cbaa05508fa288530c9f59957e9e11d45a7c0",
  "blocktime": 1648992488,
  "confirmations": 6043,
  "divisible": true,
  "fee": "0.00004050",
  "flags": null,
  "invalidreason": "Sender has insufficient balance",
  "ismine": false,
  "positioninblock": 498,
  "propertyid": 31,
  "propertyname": "TetherUS",
  "referenceaddress": "16TZEuNoE2u36vMUwjNap7pCb3WskwnJKB",
  "sendingaddress": "1Cjyz41RWkigaq7zU8YRNbLmk8EmCzsvrJ",
  "txid": "9633206b86437bdedbc0efa8aef39887c1666a92d14e6f75b6af02991d18cf2e",
  "type": "Simple Send",
  "type_int": 0,
  "valid": false,
  "version": 0
}

please check the key: "valid"

now i found actual the tx is fail . so why node rpc tell me the tx is valid ?

achamely commented 2 years ago

@kiddx01 from your local node can you provide the output of omnicore-cli omni_gettransaction b1862f316a01e6e2fc2d95f89b8fd69df91ee51021d4654854fe52c9da9b8ab2

can you also please provide the output of omnicore-cli omni_getcurrentconsensushash

dexX7 commented 2 years ago

Hello @kiddx01,

thanks a lot for reporting!

Can you please restart Omni Core with -startclean flag, so reparsing of historical transaction is done? This may take a few hours, but should resolve this issue and bring back both clients in synchronization.

Please let me know, how it went.

kiddx01 commented 2 years ago

@kiddx01 from your local node can you provide the output of omnicore-cli omni_gettransaction b1862f316a01e6e2fc2d95f89b8fd69df91ee51021d4654854fe52c9da9b8ab2

can you also please provide the output of omnicore-cli omni_getcurrentconsensushash

{"result":{"txid":"b1862f316a01e6e2fc2d95f89b8fd69df91ee51021d4654854fe52c9da9b8ab2","fee":"0.00192750","sendingaddress":"1Cjyz41RWkigaq7zU8YRNbLmk8EmCzsvrJ","referenceaddress":"1A8yz3V6RJhNsxXMTGo7gRxtyFgrMudvJm","ismine":false,"version":0,"type_int":0,"type":"Simple Send","propertyid":31,"divisible":true,"amount":"8167.40000000","valid":true,"blockhash":"000000000000000000081756f5c9f9373d5ebf5366d221f67c0ba310a7b1d49c","blocktime":1631620480,"positioninblock":1,"block":700511,"confirmations":36299},"error":null,"id":null}
kiddx01 commented 2 years ago

Hello @kiddx01,

thanks a lot for reporting!

Can you please restart Omni Core with -startclean flag, so reparsing of historical transaction is done? This may take a few hours, but should resolve this issue and bring back both clients in synchronization.

Please let me know, how it went.

thank i will have a try .

achamely commented 2 years ago

@kiddx01 make sure to provide the consensushash output before restarting

kiddx01 commented 2 years ago

omni_getcurrentconsensushash

omnicore/bin/omnicore-cli -datadir=/data/data -conf=/data/data/omnicore.conf omni_getcurrentconsensushash { "block": 736810, "blockhash": "000000000000000000024c7b08647a30a8587f274e2252fbcd870a89267c60dd", "consensushash": "c4a91c7b3948b265fa48483dcc6a0e44029a730790c0124e0aa281e94f9d1a76" }

achamely commented 2 years ago

@kiddx01 thanks, please proceed with Dexx's recommendation next and report back after.

Also can you provide a little more detail about your setup. Did you start with 0.11 from scratch and sync to current? or did you originally have 0.10 and upgrade recently? also have you had any unexpected stops/failures that you've had to recover from in any capacity recently/ or noticed any other odd behavior beyond what you've already mentioned?

if you can, also save a copy of your omnicore.log and debug.log from the data directory before restarting and attach them here if possible

kiddx01 commented 2 years ago

2022-05-18T00:11:07Z init message: Still scanning.. at block 548102 of 736810. Progress: 46.48 % (about 7:44:50 hours remaining) 2022-05-18T02:11:58Z init message: Still scanning.. at block 558881 of 736810. Progress: 49.46 % (about 8:56:04 hours remaining) 2022-05-18T05:40:52Z init message: Still scanning.. at block 571227 of 736810. Progress: 53.27 % (about 10:43:19 hours remaining) 2022-05-18T12:38:10Z init message: Still scanning.. at block 583140 of 736810. Progress: 57.31 % (about 14:17:14 hours remaining)

I'm surprised. It's getting longer and longer.

  1. the node upgrade from version omnicore-0.9.0 which upgrade from omnicore-0.8.2
  2. all node program download from https://github.com/OmniLayer/omnicore/releases
  3. the server has experienced a midstream power outage
dexX7 commented 2 years ago

Hi @kiddx01,

the update takes a long time, however, I would recommend using the latest version of Omni Core.