XRPLF / rippled

Decentralized cryptocurrency blockchain daemon implementing the XRP Ledger protocol in C++
https://xrpl.org
ISC License
4.48k stars 1.45k forks source link

The TX that was viewed just a moment ago cannot be viewed. #4922

Open junghyun0783 opened 4 months ago

junghyun0783 commented 4 months ago

hello! I am posting a question because I have a question while operating the node. We are currently operating a testnet through Docker. We created a TX through our node and called submit RPC. TX information was confirmed through the TX PRC function. however!! Shockingly, we searched with our TX hash on the "https://blockexplorer/" site, but it did not work.... ㅡ0ㅡ And after some time, we called the TX RPC function with our node... and the TX that was queried was

{ "result": { "error": "txnNotFound", "error_code": 29, "error_message": "Transaction not found.", "request": { "binary": false, "command": "tx", "transaction": "A9EAE77170075FAD7491B6795FD6BF7DFCFEB13F952B2694D5FDA14A7FAB1AB0" }, "status": "error" } }

It said that it couldn't be found as above... Why is TX, which was clearly viewable, suddenly not viewable? What is the reason? Developer Ko Soo, please. I am very curious about the reason. Thank you for reading this long article.

sublimator commented 4 months ago

Are you operating your own separate testnet? Or a node on the public testnet?

On Tue, 20 Feb 2024, 2:28 pm junghyun0783, @.***> wrote:

hello! I am posting a question because I have a question while operating the node. We are currently operating a testnet through Docker. We created a TX through our node and called submit RPC. TX information was confirmed through the TX PRC function. however!! Shockingly, we searched with our TX hash on the "https://blockexplorer/" site, but it did not work.... ㅡ0ㅡ And after some time, we called the TX RPC function with our node... and the TX that was queried was

{ "result": { "error": "txnNotFound", "error_code": 29, "error_message": "Transaction not found.", "request": { "binary": false, "command": "tx", "transaction": "A9EAE77170075FAD7491B6795FD6BF7DFCFEB13F952B2694D5FDA14A7FAB1AB0" }, "status": "error" } }

It said that it couldn't be found as above... Why is TX, which was clearly viewable, suddenly not viewable? What is the reason? Developer Ko Soo, please. I am very curious about the reason. Thank you for reading this long article.

— Reply to this email directly, view it on GitHub https://github.com/XRPLF/rippled/issues/4922, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAEAHG2E6VA3XIJTN6KWKGLYURGC3AVCNFSM6AAAAABDQT2TRGVHI2DSMVQWIX3LMV43ASLTON2WKOZSGE2DGNZQHA2TOMI . You are receiving this because you are subscribed to this thread.Message ID: @.***>

junghyun0783 commented 4 months ago

@sublimator We are currently running a separate testnet on a PC.

At first, TX could only be viewed on the node I was operating separately, and later, the TX itself could not be viewed.

sublimator commented 4 months ago

If it is separate, your tx wont appear on the public test net explorers

On Tue, 20 Feb 2024, 2:32 pm junghyun0783, @.***> wrote:

@sublimator https://github.com/sublimator We are currently running a separate testnet on a PC.

— Reply to this email directly, view it on GitHub https://github.com/XRPLF/rippled/issues/4922#issuecomment-1953627997, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAEAHG7S54QBUO4VZ43QO7DYURGSFAVCNFSM6AAAAABDQT2TRGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJTGYZDOOJZG4 . You are receiving this because you were mentioned.Message ID: @.***>

junghyun0783 commented 4 months ago

@sublimator I think I explained it wrong? Currently, my node is synchronizing, So far, tx information has been searched well at "https://blockexplorer/". But this time, for the first time, it didn't show up. So, I called RPC to my PC node and the inquiry was made. And after some time, I couldn't see it in my RPC either.

junghyun0783 commented 4 months ago

@sublimator To give you a brief thought, Could it be that my node's blocks have been discarded? So, I think my transaction data was lost when the block containing my transaction was discarded. Is that right?

sublimator commented 4 months ago

Maybe u saw a provisional result? success on open ledger? But didn't make it into a consensus ledger?

On Tue, 20 Feb 2024, 2:49 pm junghyun0783, @.***> wrote:

@sublimator https://github.com/sublimator I think I explained it wrong? Currently, my node is synchronizing, So far, tx information has been searched well at "https://blockexplorer/". But this time, for the first time, it didn't show up. So, I called RPC to my PC node and the inquiry was made. And after some time, I couldn't see it in my RPC either.

— Reply to this email directly, view it on GitHub https://github.com/XRPLF/rippled/issues/4922#issuecomment-1953647840, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAEAHG76QTPYBOI2ZIFAQ33YURIQZAVCNFSM6AAAAABDQT2TRGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJTGY2DOOBUGA . You are receiving this because you were mentioned.Message ID: @.***>

junghyun0783 commented 4 months ago

@sublimator you're right. TX has been temporarily viewed. “Status” was also marked as “success”.

When you say consensus ledger, you mean the ledger marked “https://blockexplorer/”, right? you're right. It was not included in the consensus ledger.

sublimator commented 4 months ago

Provisonal results are only temporary, may not succeed. Make sure to check validated ledger for results. Not just check response to submit rpc

junghyun0783 commented 4 months ago

@sublimator Let me show you an example If I call the following through RPC on my node, { "method": "tx", "params": [ { "transaction": "E6C80F15807CCA10C7221AECA531AE4BBEB95A598368AEB1A02DE1DAB2EFBD85" ,"binary": false } ] }

The result is

{ "result": { "Account": "rNsi7pGJtnwP9fugYfqu2L7JDS5ZBhGjKM", "Amount": "9999000", "DeliverMax": "9999000", "Destination": "rLWGRJpgPyfsThbyMF6QHDtdtfAvKq5nWS", "DestinationTag": 0, "Fee": "1000", "Flags": 2147483648, "Sequence": 44774912, "SigningPubKey": "ED343A3E8E359CE3AC7983CA873EB42A7005F8514D7A2C6C9009F98E24830CD434", "TransactionType": "Payment", "TxnSignature": "A0EAF75C21A138AC6A1E1B85BECC3CABDFB6EDBBDE6EA4F16E9DFA2DBAA73DDD2DA0CBA29585A062939FF7C84E5EA443C2A06AEB98D1945EC0011FB5C664260E", "ctid": "C2B70A6600040001", "date": 761731272, "hash": "E6C80F15807CCA10C7221AECA531AE4BBEB95A598368AEB1A02DE1DAB2EFBD85", "inLedger": 45550182, "ledger_index": 45550182, "meta": { "AffectedNodes": [ { "ModifiedNode": { "FinalFields": { "Account": "rNsi7pGJtnwP9fugYfqu2L7JDS5ZBhGjKM", "Balance": "5678953055", "Flags": 0, "OwnerCount": 0; "Sequence": 44774913 }, "LedgerEntryType": "AccountRoot", "LedgerIndex": "2B28DCA6429CE5F19B02777FBA2DBA1C65B6DB8DBC52F96E9993FE1E1FE1A277", "PreviousFields": { "Balance": "5688953055", "Sequence": 44774912 }, "PreviousTxnID": "78D5B69A5DC745E6B04134D177238CBB419512229D604238029B4A70B9527AFE", "PreviousTxnLgrSeq": 45550182 } }, { "ModifiedNode": { "FinalFields": { "Account": "rLWGRJpgPyfsThbyMF6QHDtdtfAvKq5nWS", "Balance": "270100588", "Flags": 0, "OwnerCount": 0; "Sequence": 45033191 }, "LedgerEntryType": "AccountRoot", "LedgerIndex": "803D53C311FFA45D61600A2EB568BC8DD4E82F245552FD7172A3F8B381341B94", "PreviousFields": { "Balance": "260101588" }, "PreviousTxnID": "78D5B69A5DC745E6B04134D177238CBB419512229D604238029B4A70B9527AFE", "PreviousTxnLgrSeq": 45550182 } } ], "TransactionIndex": 4, "TransactionResult": "tesSUCCESS", "delivered_amount": "9999000" }, "status": "success", "validated": true } } It appears like this. Does this mean that this response value is temporary? So, is it impossible to receive the confirmed value from my node?

junghyun0783 commented 4 months ago

@sublimator rippled.zip This is my node's rippled.cfg file. So, is it impossible to receive confirmed data through my node?

sublimator commented 4 months ago

I dont have time to look But beware of temporary vs final results It may explain your mystery

On Tue, 20 Feb 2024, 3:10 pm junghyun0783, @.***> wrote:

@sublimator https://github.com/sublimator rippled.zip https://github.com/XRPLF/rippled/files/14341268/rippled.zip This is my node's rippled.cfg file. So, is it impossible to receive confirmed data through my node?

— Reply to this email directly, view it on GitHub https://github.com/XRPLF/rippled/issues/4922#issuecomment-1953674472, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAEAHG3ZOHDG4JTQDPLIE6TYURK5TAVCNFSM6AAAAABDQT2TRGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJTGY3TINBXGI . You are receiving this because you were mentioned.Message ID: @.***>

junghyun0783 commented 4 months ago

@sublimator As you can see, The result will show “validated”:false. Maybe this is the problem...is there any solution to this?

{ "result": { "Account": "rNsi7pGJtnwP9fugYfqu2L7JDS5ZBhGjKM", "Amount": "6999000", "DeliverMax": "6999000", "Destination": "rJKHUURt8ctUit8j6Kd9sK3EmBZTfELhr4", "DestinationTag": 0, "Fee": "1000", "Flags": 2147483648, "Sequence": 44775005, "SigningPubKey": "ED343A3E8E359CE3AC7983CA873EB42A7005F8514D7A2C6C9009F98E24830CD434", "TransactionType": "Payment", "TxnSignature": "F13900B3541368FF8FEC85889D2069BC65FE03C2EE87E031FE7AEB7B590CAEBD0D115F2D59F7B299D60EF8F329FA5DEC61663E237BCD6DFF1B5B028EC9C85103", "hash": "2A074AD390937065EB053413719A91AF360D382C31EF5949F0ECF86C262283B6", "status": "success", "validated": false } }

sublimator commented 4 months ago

You need to specify "ledger_index": "validated" or something like that in your tx request iirc

junghyun0783 commented 4 months ago

@sublimator Oh...when you send a request...you just have to send it like below!!? Thank you very much!!!

{ "method": "submit", "params": [ { "tx_blob": "12000022800000002402B6962E2E000000006140000000009892986840000000000003E87321EDAA5BDD409B27AF1C69ECEC3D645EF13FAA273145834030C5124A878E0953D6AE7440886A590A90E5615A3ABC51F6F53C880CEB7C38449401D18780CEAD6B49C34A2701F8C7AC5C7E11D2CDC3D802DB2CAE33F430D8C5D3B947F0145FA72BAF0CC10F8114A57183DEA110FB8FB73CBB151AFE9B68B192B6D9831436ABD9175CCE2465BB8B87685959E164554C603B" ,"ledger_index": "validated" } ] }

What does “iirc” mean!?

sublimator commented 4 months ago

iirc = "if i recall correctly"

you just have to send it like below!!?

maybe! If it's not exactly right, it's VERY CLOSE. Check the docs

mvadari commented 4 months ago

The other potential problem is that your node isn't storing enough history to hold onto all that data.

junghyun0783 commented 4 months ago

@mvadari Oh, first of all, thank you for reading this long post and responding. This is the current server_state of my node. Here, "complete_ledgers": "40332926-45568823" I can check the data I have for the blocks during this period, right? However, the above result appears.

{ "result": { "state": { "build_version": "2.0.0", "complete_ledgers": "40332926-45568823", "fetch_pack": 9796, "initial_sync_duration_us": "22386579460", "io_latency_ms": 1, "jq_trans_overflow": "26225", "last_close": { "converge_time": 2001, "proposers": 6 }, "load_base": 256, "load_factor": 256, "load_factor_fee_escalation": 256, "load_factor_fee_queue": 256, "load_factor_fee_reference": 256, "load_factor_server": 256, "network_id": 1, "peer_disconnects": "1330", "peer_disconnects_resources": "4", "peers": 10, "ports": [ { "port": "80", "protocol": [ "ws" ] }, { "port": "51235", "protocol": [ "peer" ] } ], "pubkey_node": "n9LdfzX241uCY5unBEFzGjxV6DoKxzLqdkX1Vg9PpFBVfx6uPrgS", "server_state": "full", "server_state_duration_us": "334927829", "state_accounting": { "connected": { "duration_us": "22255388547", "transitions": "449" }, "disconnected": { "duration_us": "130157595", "transitions": "2" }, "full": { "duration_us": "362647637019", "transitions": "2011" }, "syncing": { "duration_us": "2976217869", "transitions": "1570" }, "tracking": { "duration_us": "191014391", "transitions": "2017" } }, "time": "2024-Feb-21 00:50:23.114445 UTC", "uptime": 388201, "validated_ledger": { "base_fee": 10, "close_time": 761791820, "hash": "9EF6CF5F7A9DED647A9F319FCE7E8DE7F6929A9EA4639002932D16194A3E45E5", "reserve_base": 10000000, "reserve_inc": 2000000, "seq": 45568823 }, "validation_quorum": 5 }, "status": "success" } }