We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
Summary or problem description This is an issue similar to #1667. Currently incoming transactions will be handled in the following steps:
(1) Deserialized by RemoteNode
RemoteNode
(2) Sent to Blockchain, check whether it's within mempool
Blockchain
mempool
(3) Sent to TransactionRouter to check witness
TransactionRouter
(4) Sent to Blockchain again to check fee, whether it's within mempool, and added to mempool
There are 2 porblems:
(1) There is a circled stream from step (2) to (4). Blockchain is called twice which would cause TPS drop.
(2) Func ContainsTransaction is called twice for a single transaction in step (2) and (4)
ContainsTransaction
Do you have any solution you want to propose?
A new scenario for incoming transactions:
(2) Sent to TransactionRouter to check witness
(3) Sent to Blockchain to check fee, whether it's within mempool, and added to mempool
Neo Version
The text was updated successfully, but these errors were encountered:
Successfully merging a pull request may close this issue.
Summary or problem description
This is an issue similar to #1667. Currently incoming transactions will be handled in the following steps:
(1) Deserialized by
RemoteNode
(2) Sent to
Blockchain
, check whether it's withinmempool
(3) Sent to
TransactionRouter
to check witness(4) Sent to
Blockchain
again to check fee, whether it's withinmempool
, and added tomempool
There are 2 porblems:
(1) There is a circled stream from step (2) to (4).
Blockchain
is called twice which would cause TPS drop.(2) Func
ContainsTransaction
is called twice for a single transaction in step (2) and (4)Do you have any solution you want to propose?
A new scenario for incoming transactions:
(1) Deserialized by
RemoteNode
(2) Sent to
TransactionRouter
to check witness(3) Sent to
Blockchain
to check fee, whether it's withinmempool
, and added tomempool
Neo Version
The text was updated successfully, but these errors were encountered: