cleanup unchained continuation#8079
Conversation
|
im not sure what to do with this test https://github.com/puhtaytow/agave/blob/25bbb89f961e5289b273af7180924728bab68d0b/ledger/src/blockstore.rs#L11747 it explicitly says that can we just remove the test last part*? its blocking me from removing |
|
@alexpyattaev @steviez could you have a look when you find a moment? 🙏 |
I would kill that part of the test. |
steviez
left a comment
There was a problem hiding this comment.
The changes from this PR aren't too crazy, I think we can remove Option from this function and update all callers at least:
Line 72 in b984691
I haven't dug through the functions beneath that, but I'm inclined to think that removing Option throughout shouldn't be too bad
… does not contain retransmitter shreds
…with_index_and_chained_merkle_and_last_in_slot
…hreds_from_entries
…erkle_shreds_for_tests
|
Took your suggestions and now its cleaned up till Please have a look when you find a moment 🙏 if you think it should be splitted then let me know. |
There was a problem hiding this comment.
Wanna update this one too ?
Lines 1014 to 1020 in f9294b1
Took your suggestions and now its cleaned up till shredder/make_merkle_shreds_from_entries, which already result in changes across 22 files.
Yep, we have touched a handful of files. However, all of the changes are of the same type / pretty easy to follow. So, I don't mind lumping them all into a PR like this.
On the other hand, the logic below shred::merkle::make_shreds_from_data() is deserving of more scrutiny. So, getting all of the mechanical changes in this PR should allow for a pretty small diff in the subsequent PR
| 0, | ||
| 10, | ||
| 0, | ||
| Hash::default(), |
There was a problem hiding this comment.
note to other reviewers - there are other instances where we use Hash::default() so changing None to that here shouldn't be an issue.
No code changes being requested, just calling this out
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #8079 +/- ##
=========================================
- Coverage 82.9% 82.9% -0.1%
=========================================
Files 823 823
Lines 360421 360393 -28
=========================================
- Hits 299016 298949 -67
- Misses 61405 61444 +39 🚀 New features to boost your workflow:
|
Good point. Fixed.
Makes sense. I fixed stuff that you addressed, lets wait what Ashwin would say about the last part of test. To my understanding we omitt this way testing not-retransmitted full one, but unchained shreds aren't real now, so it could only be a negative test? and question would be if its needed and if it is needed, then that might be good thing to address in the #8048 |
|
Thank you guys 🥇 |
Problem
There is still remaining parts of code that allows for unchained shreds. The unchained shreds are nomore in production.
Cleaning it all at once would result in hard to review PR, that is why taking iterative approach seem to be the way.
This PR is one of many, towards the unchained shreds removal.
Summary of Changes
Removed option from chained_merkle_root param:
blockstore/setup_erasure_shreds_with_index_and_chained_merkleblockstore/setup_erasure_shreds_with_index_and_chained_merkle_and_last_in_slotledger/benches/make_shreds_from_entriesledger/shredder/entries_to_merkle_shreds_for_testsledger/shredder/make_merkle_shreds_from_entriesledger/shredder/make_shreds_from_data_sliceRemoved chained switch param in:
ledger/sigverify_shreds/make_shredsledger/shred/make_merkle_shreds_for_testsledger/testsRemoved last part of test
test_check_last_fec_setin blockstore as suggested