Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #160 +/- ##
==========================================
+ Coverage 57.65% 62.76% +5.10%
==========================================
Files 33 32 -1
Lines 1913 1614 -299
==========================================
- Hits 1103 1013 -90
+ Misses 717 600 -117
+ Partials 93 1 -92 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
087c01c to
945ab02
Compare
514cc36 to
8ecec1c
Compare
AnnaShaleva
left a comment
There was a problem hiding this comment.
Let's align dbft code wrt nspcc-dev/neo-go@ff4eb10. No decoding optimisation is required. Both old (master) and new (feature) behaviour should be preserved, the behaviour switch (something like a configurable callback or an additional parameter to (DBFT).Start or (DBFT).Reset) should be exposed to the external user to enable the extension starting from some point without dBFT shutdown.
8ecec1c to
dcfb34e
Compare
| MissingTransactions []H | ||
| // Transactions is a map containing actual transactions for the current block. | ||
| // Transactions stores transactions collected so far for the current block, | ||
| // indexed by hash. It's used for pre-Huyao behaviour (FullTransactionsEnabled |
There was a problem hiding this comment.
Remove all Huyao mentions from the dBFT. For the dBFT library it's just an extension that enables new way of PrepareRequest construction. This extension will be used in NeoX network with a different hardfork name. So refer to it as to an extension.
a8774e3 to
eb4f98d
Compare
d59d366 to
22729f1
Compare
AnnaShaleva
left a comment
There was a problem hiding this comment.
Should work now. Before the merge you need to finalize the NeoGo part and test the Huyao transition on the running privnet. From my side an integration with NeoX is required, will push the PR soon.
Signed-off-by: Tural Devrishev <tural@nspcc.ru>
22729f1 to
aa29c57
Compare
Signed-off-by: Tural Devrishev <tural@nspcc.ru>
aa29c57 to
cd348ce
Compare
AnnaShaleva
left a comment
There was a problem hiding this comment.
LGTM, waiting for the NeoX part to settle before the merge.
1. Do not rely on PrepareRequestExtension-disabled-specific Transactions/TransactionHashes fields to detect missing transactions. Instead, use the MissingTransactions map to detect if all transactions are fetched. 2. Change the order of MissingTransactions update and addTransaction call to ensure addTransaction relies on up-to-date MissingTransactions state. Verify other users of MissingTransactions against the similar problem. Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
A part of nspcc-dev/neo-go#4325. An alternative to #160. Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
A part of nspcc-dev/neo-go#4325. An alternative to #160. Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
1. Replace GetTx with GetTxes. 2. Drop TransactionHashes, convert Transactions to a slice. A part of nspcc-dev/neo-go#4325. An alternative to #160. Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
Extend
PrepareRequestwithTransactions().NewPrepareRequestnow also receives the full transaction bodies, andprocessMissingTxtakes them as an argument, so a backup can pull a missing transaction straight from the request instead of a network request that may go unanswered. See nspcc-dev/neo-go#4325.