Skip to content

Support for frontier requests in stateless bootstrap server #4337

Merged
pwojcikdev merged 7 commits intonanocurrency:developfrom
pwojcikdev:stateless-frontier-server
Dec 1, 2023
Merged

Support for frontier requests in stateless bootstrap server #4337
pwojcikdev merged 7 commits intonanocurrency:developfrom
pwojcikdev:stateless-frontier-server

Conversation

@pwojcikdev
Copy link
Copy Markdown
Contributor

@pwojcikdev pwojcikdev commented Nov 8, 2023

A missing piece for transitioning from legacy bootstrap to full ascending bootstrap was a missing frontier query. This query is needed for efficient (bulk) scanning of accounts for updates. Currently we are forced to do a request - reply for every single account that we want to check for changes. This PR adds a new payload type for ascending bootstrap messages and support for serving those requests in bootstrap_server.

  • frontier request:

    • start: account (0 for starting from beginning)
    • count: uint16_t (bounded to 1000 due to 65kb size limit of a single message)
  • frontier response:

    • frontiers: <account, block hash> list

This also bumps the current protocol version to 20, keeping compatibility with previous versions as is.

@pwojcikdev pwojcikdev merged commit 1ef520a into nanocurrency:develop Dec 1, 2023
@qwahzi qwahzi added this to the V26.0 milestone Dec 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants