Open sgramkumar opened 8 months ago
If completed_ledgers
is ~present~ empty, then the server has not found and downloaded a validated ledger yet. In a sense, it is talking to itself. You need to wait until you have a validated_ledger
, and complete_ledgers
shows something other than empty.
It's a little odd that you're server thought it was in full
, but I don't have enough information to speculate why.
The pages listed here may be useful for you. https://xrpl.org/troubleshoot-the-rippled-server.html#troubleshooting
(Edited to fix a typo)
Here is another instance from devnet when server_state
is full & complete_ledgers
is not empty
2024-02-10 16:04:42 {'info': {'build_version': '2.1.0-rc1', 'complete_ledgers': '4114610-4114615', 'fetch_pack': 1, 'hostid': 'runner-9eueyzwy-project-1346-concurrent-0', 'initial_sync_duration_us': '195177947', 'io_latency_ms': 1, 'jq_trans_overflow': '0', 'last_close': {'converge_time_s': 2, 'proposers': 10}, 'load': {'job_types': [{'in_progress': 1, 'job_type': 'clientRPC'}, {'job_type': 'untrustedValidation', 'per_second': 23}, {'job_type': 'ledgerData', 'peak_time': 3, 'per_second': 1}, {'job_type': 'advanceLedger', 'per_second': 1}, {'job_type': 'trustedValidation', 'per_second': 2}, {'job_type': 'trustedProposal', 'per_second': 3}, {'job_type': 'peerCommand', 'per_second': 57}, {'job_type': 'SyncReadNode', 'peak_time': 1, 'per_second': 73}, {'job_type': 'AsyncReadNode', 'peak_time': 3, 'per_second': 222}, {'job_type': 'WriteNode', 'peak_time': 1, 'per_second': 74}], 'threads': 6}, 'load_factor': 1, 'network_id': 2, 'node_size': 'medium', 'peer_disconnects': '7', 'peer_disconnects_resources': '0', 'peers': 2, 'ports': [{'port': '51234', 'protocol': ['http']}, {'port': '51235', 'protocol': ['peer']}, {'port': '6006', 'protocol': ['ws']}], 'pubkey_node': 'n94HbtjeMG65igSpm5koQpo9rKMyFQ9mQB2cohpYiQeMcssEBhuQ', 'pubkey_validator': 'none', 'published_ledger': 4114615, 'server_state': 'full', 'server_state_duration_us': '13984191', 'state_accounting': {'connected': {'duration_us': '137111898', 'transitions': '3'}, 'disconnected': {'duration_us': '56064692', 'transitions': '3'}, 'full': {'duration_us': '13984191', 'transitions': '1'}, 'syncing': {'duration_us': '2001348', 'transitions': '1'}, 'tracking': {'duration_us': '5', 'transitions': '1'}}, 'time': '2024-Feb-10 16:04:42.848356 UTC', 'uptime': 209, 'validated_ledger': {'age': 1, 'base_fee_xrp': 1e-05, 'hash': '13105CDFCE417C636577E9F5B5611B0A9E9BAEA2D13911C92A0663AC1CCBF06C', 'reserve_base_xrp': 10, 'reserve_inc_xrp': 2, 'seq': 4114637}, 'validation_quorum': 8, 'validator_list': {'count': 1, 'expiration': '2031-Aug-07 19:36:22.000000000 UTC', 'status': 'active'}}, 'status': 'success'}
Payment transaction was submitted at
2024-02-10 16:05:43: 'hash': 'FF8A562D76AB8D950C2F37049F9752FA2FF601B50A6A9B43EC5B3103941C8F5A'
Querying tx() every 5 seconds, returns 'validated': False, even after 29 seconds when the transaction was actually validated well before Here is tx() response 29 seconds after the Payment transaction was submitted 2024-02-10 16:06:12: 'hash': 'FF8A562D76AB8D950C2F37049F9752FA2FF601B50A6A9B43EC5B3103941C8F5A', 'status': 'success', 'validated': False}
Verifying the transaction on the explorer, the transaction was actually validated 7 seconds after the Payment was submitted. As seen on the explorer:
This transaction was successful, and validated in ledger 4114659 on February 10, 2024 at 4:05:50 PM UTC
local rippled.log: https://gist.github.com/sgramkumar/84d80b65805175ff78cee036a25a3fd6
@sgramkumar please work with @mtrippled and @seelabs on this
Issue Description
This issue was seen on altnet, where a
Payment
transaction was validated on the network, buttx()
still responds'validated': False
even after 30 secondsSteps to Reproduce
Question: First of all, should this happen when
server_state
is full,complete_ledgers
be "empty"?Assuming, it was ok, after 30 seconds, a
Payment
transaction was submittedQuerying
tx()
every 5 seconds, returns'validated': False
Here istx()
response 29 seconds after thePayment
transaction was submittedVerifying the transaction on the explorer, the transaction was actually validated exactly at the time the
Payment
transaction was submitted.As seen on the explorer:
Expected Result
Shouldn't
tx()
be returning'status': 'success', 'validated': True
Actual Result
'hash': 'CEB1FBCA545CB2E3A607888DBE2B0AC50A77BE1282EF4672E7DA4D7C45299325', 'status': 'success', 'validated': False}
Environment
Local rippled: 2.0.1-b1
Supporting Files
rippled (61).log