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

Feed List<BlockItemUnparsed> to the ring buffer for streaming blocks #652

Open
Tracked by #368
jsync-swirlds opened this issue Feb 14, 2025 · 1 comment
Open
Tracked by #368
Assignees
Labels
Improvement Code changes driven by non business requirements
Milestone

Comments

@jsync-swirlds
Copy link
Member

jsync-swirlds commented Feb 14, 2025

As a Block Node Engineer
I want to have a simple List<BlockItemUnparsed> as the object on the ring buffer
So that I have a consistent interface for all services that is entirely service-agnostic.

Technical Considerations:
We discussed object creation rate for all consumers and we determined it's not going to be an issue (around 3-5k/sec in normal usage and no more than 50k/sec under heavy load, which is very small as a percentage of the overall system).
We're now free to transmit block item batches as the type on the mediator ring buffer.

@mattp-swirldslabs
Copy link
Contributor

We discussed object creation rate for all consumers and we determined it's not going to be an issue. We're now free to transmit block item batches as the type on the mediator ring buffer.

@jsync-swirlds jsync-swirlds added the Improvement Code changes driven by non business requirements label Feb 14, 2025
@jsync-swirlds jsync-swirlds added this to the 0.5.0 milestone Feb 14, 2025
@jsync-swirlds jsync-swirlds changed the title Feed List<BlockItemUnparsed> to a ring buffer for "historical" block streaming, if that's the requested process (task moved from #329) Feed List<BlockItemUnparsed> to the ring buffer for streaming blocks Feb 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Improvement Code changes driven by non business requirements
Projects
None yet
Development

No branches or pull requests

2 participants