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

Suppress duplicate transaction error #4582

Closed
SWvheerden opened this issue Aug 31, 2022 · 4 comments
Closed

Suppress duplicate transaction error #4582

SWvheerden opened this issue Aug 31, 2022 · 4 comments
Assignees
Labels
A-base_node Area - The Tari base node executable and libraries C-enhancement Category - New feature or request

Comments

@SWvheerden
Copy link
Collaborator

When submitting a transaction, both wallets will submit the transition, this will cause the base_nodes to erroneously flag the transaction as:

11:40 WARN  Validation failed due to already spent output
11:40 WARN  Validation failed due to already spent input: c8fe2b592101c4b3d89930bd03e59a71a695e7100bc77b8f7b514c7d985cb838 [OutputFeatures { version: V0, output_type: Standard, maturity: 0, metadata: [], sidechain_features: None }], Script: (Nop), Offset_Pubkey: (fe571c635283ab37f592212376c671a5be9222f04f8d232049666f903bbe091b), Input Hash: 23542d771f14ce3983a97f01a7641cec11345fc3c0e75b032a729c34c086f1b7, Output: b8c2f58b8999fbc2aa2e0a11e353d7bae3db0a1e14ab9e46a83aed15de8e55a2

We need to try and see if we correctly identify it as a duplicate before we reject it as invalid.
If this is not possible, we can just reduce the log to DEBUG

@stringhandler stringhandler moved this from Todo to In Progress in Tari Esme Testnet Sep 1, 2022
@SWvheerden SWvheerden self-assigned this Sep 1, 2022
@SWvheerden
Copy link
Collaborator Author

This is received due to old transactions being rebroadcast on the network.
The instances I have found personally were from Base nodes that transmit these messages again. And looking at the metadata the local node received from the remote peer it seems as if the remote peer is at the tip.

The running theory is that either the node has some stuck comms, or that a connected wallet resent that just before the node updated

@SWvheerden
Copy link
Collaborator Author

This does not solve the root cause: #4627
But at least alleviates it somewhat.

@SWvheerden
Copy link
Collaborator Author

This is renamed and logs should look like this:

 // base_layer/core/src/transactions/aggregated_body.rs:449 2022-09-08 16:32:38.936176000 [c::mp::mempool_storage] [cc1ade71a24700ddefc86457dbb6e1446229641b0e1c56bce909bcd0f1a0f950,7acd212bf3c3b5a0428ebfec90] DEBUG Validation failed due to already mined kernel: Aggregate body contains kernel excess: 2a0a69a61d762f57bad2ef18e0c9b15df2c7e818f1f8f02c2fb27689bcbdcb19 which matches already existing excess signature in chain database block hash: da321aba1fdea2426c167dc9ddc416e58dd824df49af4eaa230dfaf5bf5c1e78. Existing kernel excess: 2a0a69a61d762f57bad2ef18e0c9b15df2c7e818f1f8f02c2fb27689bcbdcb19, excess sig nonce: ce56f07746d734021be3febda031ad365733490b561fed7891881be673b6cd03, excess signature: d87e1657f007d70eab08cb0def003367a6dc64bc967768ace6a385d2bca9e205
 // base_layer/core/src/mempool/mempool_storage.rs:116 2022-09-08 16:32:38.936236000 [c::mp::service::inbound_handlers] [cc1ade71a24700ddefc86457dbb6e1446229641b0e1c56bce909bcd0f1a0f950,7acd212bf3c3b5a0428ebfec90] DEBUG Transaction inserted into mempool: d87e1657f007d70eab08cb0def003367a6dc64bc967768ace6a385d2bca9e205, pool: Not stored due to consensus rule.

@SWvheerden SWvheerden moved this from In Progress to Under observation in Tari Esme Testnet Sep 9, 2022
@SWvheerden
Copy link
Collaborator Author

We have fixed multiple issues with RPC connections, this caused nodes to get "stuck" on older tips while still connected to other network,

@stringhandler stringhandler added C-enhancement Category - New feature or request A-base_node Area - The Tari base node executable and libraries labels Nov 14, 2022
@stringhandler stringhandler added this to the Stagenet Freeze milestone Nov 14, 2022
@stringhandler stringhandler moved this from Under observation to Selected for development in Tari Esme Testnet Nov 15, 2022
@SWvheerden SWvheerden moved this from Selected for development to In Progress in Tari Esme Testnet Nov 25, 2022
@stringhandler stringhandler moved this from In Progress to In Review in Tari Esme Testnet Nov 25, 2022
@stringhandler stringhandler moved this from In Review to Done in Tari Esme Testnet Nov 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-base_node Area - The Tari base node executable and libraries C-enhancement Category - New feature or request
Projects
Archived in project
Development

No branches or pull requests

2 participants