-
Notifications
You must be signed in to change notification settings - Fork 711
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
Bootstrap #4430
Comments
If we start a labnet without keeping the ledger, just a normal one without any operations on the branch It seams that some changes I added in the branch |
I figured out why the |
EDIT: Disregard this comment, I made a mistake while writing it, see below |
Nice research! I think the easiest to ensure that all necessary keys are found would be to start from a working ledger (built normally by the node), and then only add your crafted keys. |
That's actually what I already do
(Note that most of what I listed above is automated so I don't forget a step while doing it) So the whole basis of the ledger comes from an (almost) empty ledger generated by the massa-node. |
@Leo-Besancon My bad, I made a mistake while writing the message, when using smaller datastore key + value, the hashes DOES MATCH, so it seams that's it's linked to the size of the data inside the ledger. |
Ok thanks for the clarification! In that case testing the message serialization should be the next step? :) |
Update:
|
I'm confused, I just tested again inserting a single data with length 500 and it DOESN'T work anymore... From now on, I think I'll have to consider that any ledger crafted using |
4453: Bootstrap improvements r=litchipi a=litchipi Take most of the work done in #4420 to merge it in `main` Replace the `MAX_BOOTSTRAP_NEW_ELEMENTS` with a size limit `MAX_BOOTSTRAP_NEW_ELEMENTS_SIZE` so that voluminous messages (because of big datastore values or bytecodes) can be transferred without going through the limit. Limits on the timeouts, and message size had to be raised in order to allow messages crafted to be very voluminous to be transferred without any problem. They may not have to be reduced down, but high enough to allow a big ledger to bootstrap successfully. This will have to be done after all the issues documented in #4430 and #4406 Co-authored-by: Litchi Pi <[email protected]> Co-authored-by: Litchi Pi (Tim) <[email protected]>
4453: Bootstrap improvements r=litchipi a=litchipi Take most of the work done in #4420 to merge it in `main` Replace the `MAX_BOOTSTRAP_NEW_ELEMENTS` with a size limit `MAX_BOOTSTRAP_NEW_ELEMENTS_SIZE` so that voluminous messages (because of big datastore values or bytecodes) can be transferred without going through the limit. Limits on the timeouts, and message size had to be raised in order to allow messages crafted to be very voluminous to be transferred without any problem. They may not have to be reduced down, but high enough to allow a big ledger to bootstrap successfully. This will have to be done after all the issues documented in #4430 and #4406 Co-authored-by: Litchi Pi <[email protected]> Co-authored-by: Litchi Pi (Tim) <[email protected]>
@sydhds Some of the tests you are doing are ticking the boxes on this issue I think |
Potential Problems
inject_operations > 0
. To testImprovements
config.toml
that sets themax_open_files
configuration of rocksdb (default config < 1024)In
massa-node > src > main.rs
:Validation
U64VarIntDeserializer
max bound forstate_new_elements_length_deserializer
(same)The text was updated successfully, but these errors were encountered: