-
Notifications
You must be signed in to change notification settings - Fork 152
Block Node #1081
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
base: main
Are you sure you want to change the base?
Block Node #1081
Conversation
✅ Deploy Preview for hedera-hips ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
About half way through the hip document so far.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Finally reached the end of the document.
Hello everyone, I hope this message finds you well! I am reaching out just to give a gentle reminder regarding the open PR titled "Block Node". Currently, we still have 42 unresolved discussions which need your valuable input. It'd be really helpful if we could collaborate and get these discussions resolved to make further progress on this PR. I appreciate your time, commitment, and collaboration thus far. Your thoughts and perspectives continue to be essential in making sure we're moving in the right direction. Thank you again for your contributions to this project. Looking forward to concluding these discussions and achieving our overall goal together! Best regards, |
Thanks @mgarbs |
b358e97
to
04e11af
Compare
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
…nd service definitions Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Joseph Sinclair <121976561+jsync-swirlds@users.noreply.github.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
* Added skip block message to block service `PublishStreamResponse` * Added resend block message to block service `PublishStreamResponse` * Renamed end of stream response to `end_of_stream` for clarity. * Added persitence failed response * Removed (unnecessary) item acknowledgement Signed-off-by: Joseph Sinclair <121976561+jsync-swirlds@users.noreply.github.com>
04e11af
to
b8f0062
Compare
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
…section Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
…atest Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
|
… for non-technical folks. Thanks mark@swirldslabs.com Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not done, but sending what's there so far.
…s from @jasperpotts @rbair and @atul-hedera Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still reading through, but have a few suggestions, corrections, and clarifications.
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Need to circle back for another pass to update the protocol and response code descriptions with the latest from BN repo |
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
HIP/hip-1081.md
Outdated
| **Verified Block** | A verified block is a block for which a Block Proof is received and for which the TSS signature of the network ledger ID is valid. | | ||
| **Full History Block Node** | A Block Node that maintains block history from network streaming start. | | ||
| **Archive Block Node** | A Block Node that maintains block history but does not expose consumer API services. | | ||
| **Rolling History Block Node** | A Block Node that maintains blocks but prunes them after a configured period of time. | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Light Node, maybe ? Similar to what other networks are calling nodes with similar behaviour.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using names common in other networks, such as "Light Node", implies a lot of things not stated and not accurate about block nodes because the name is common in other networks (which don't have the hashgraph algorithm).
It's very hard to connect block nodes to node types in other networks without creating confusion, as they really don't properly match the setup used anywhere else.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I proposed Light Block Node as naming, because the other two already somewhat match the naming of nodes from other environments, like geth (for example). And it might be easier for folks from other networks, if we are consistent with the naming that they are familiar with.
However I agree with you, and in the future we might add additional template, which more closely match Light Nodes behaviour. So it's fine either way 👍
HIP/hip-1081.md
Outdated
12. As a Block Node Operator, I want to offer filtered block streams to external clients, so that consumers only | ||
receive the data relevant to their use cases, reducing bandwidth and processing overhead |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Might want to remove this and defer to a future "Fitlering" HIP.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure, filtering got bumped up so we need to define the API soon but the user story may be more timely.
Let's confirm though. If indeed a different HIP it can be removed
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
Signed-off-by: Nana Essilfie-Conduah <nana@swirldslabs.com>
* Address some review comments. * Updated sequence diagrams with latest publisher protocol expectations. * Fixed some grammar and spelling. * Added a use case for snapshot format compatibility. Signed-off-by: Joseph S <121976561+jsync-swirlds@users.noreply.github.com>
Description:
Abstract
This HIP introduces and proposes the adoption of a new node type that is designed to parse the block stream, store
latest state and serve up additional network APIs such as state proofs and block retrieval that support decentralized
querying and verification of state.
A block node will primarily sit in between a consensus node and a mirror node to serve as a decentralized source of
verifiable network state and transaction information. As an emergent feature a block node will introduce a new node
economy through independent community operations. Anyone will be able to independently run a block node or block
stream parsing product that provides value added services to users e.g. aggregated data insights, data availability.
Block Nodes will have a rich API, allowing consumers to receive a subset of the stream, or the full stream. Block Nodes
can innovate on payment -- they can be commercial and have connectivity rules / rate limits / SLAs for customers.
They can require payment for serving blocks, or they can serve blocks for free.
Related issue(s):
Expands on #1055
Notes for reviewer:
Checklist