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

Update "bulk_pull" to accept a count parameter #1431

Closed
rkeene opened this issue Dec 7, 2018 · 0 comments

Comments

Projects
None yet
2 participants
@rkeene
Copy link
Contributor

commented Dec 7, 2018

Update the "bulk_pull" primitive to accept a "count" parameter. In order for this to be backwards compatible it will need to be gated behind an unused extension bit, as well as being encoded in such a way that bootstrap servers unaware of this extension (and thus ignoring of the extension bit) do not misinterpret it as a valid command.

Implementation details:

  • Implement a "count_present" flag for bulk_pull, bit 0 (similar to node_id_handshake e.g., https://github.com/nanocurrency/raiblocks/blob/ad9479eb3ac48d7b20292f6af9f35610b4d576e0/rai/node/common.hpp#L354)
  • Implement set/test wrappers (same as node_id_handshake)
  • In the bulk_pull_server, test to see if that extension is present, if so consume an additional 8 bytes. Verify that the first of those 8 bytes is \x00, treat the next 4-bytes as a count parameter, in little endian. Ignore the remaining 3 bytes (reserved for future use).
  • Additionally, create support for generating these requests in the bulk_pull client
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.