hashgraph / hedera-block-node

New Block Node services
Apache License 2.0
23 stars 3 forks source link

feat: optimize blockstream processing #358

Closed mattp-swirldslabs closed 15 hours ago

mattp-swirldslabs commented 5 days ago

Description:

Related issue(s):

Fixes #353 #356

Notes for reviewer:

Checklist

codecov[bot] commented 15 hours ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 97.72%. Comparing base (c2fb9d0) to head (65f3d5c). Report is 1 commits behind head on main.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #358 +/- ## ============================================ + Coverage 94.62% 97.72% +3.09% - Complexity 316 332 +16 ============================================ Files 69 69 Lines 1228 1229 +1 Branches 84 86 +2 ============================================ + Hits 1162 1201 +39 + Misses 55 19 -36 + Partials 11 9 -2 ``` | [Files with missing lines](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph) | Coverage Δ | | |---|---|---| | [...erver/consumer/ConsumerStreamResponseObserver.java](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?src=pr&el=tree&filepath=server%2Fsrc%2Fmain%2Fjava%2Fcom%2Fhedera%2Fblock%2Fserver%2Fconsumer%2FConsumerStreamResponseObserver.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph#diff-c2VydmVyL3NyYy9tYWluL2phdmEvY29tL2hlZGVyYS9ibG9jay9zZXJ2ZXIvY29uc3VtZXIvQ29uc3VtZXJTdHJlYW1SZXNwb25zZU9ic2VydmVyLmphdmE=) | `98.11% <100.00%> (ø)` | | | [...ock/server/mediator/LiveStreamMediatorBuilder.java](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?src=pr&el=tree&filepath=server%2Fsrc%2Fmain%2Fjava%2Fcom%2Fhedera%2Fblock%2Fserver%2Fmediator%2FLiveStreamMediatorBuilder.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph#diff-c2VydmVyL3NyYy9tYWluL2phdmEvY29tL2hlZGVyYS9ibG9jay9zZXJ2ZXIvbWVkaWF0b3IvTGl2ZVN0cmVhbU1lZGlhdG9yQnVpbGRlci5qYXZh) | `100.00% <100.00%> (ø)` | | | [.../block/server/mediator/LiveStreamMediatorImpl.java](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?src=pr&el=tree&filepath=server%2Fsrc%2Fmain%2Fjava%2Fcom%2Fhedera%2Fblock%2Fserver%2Fmediator%2FLiveStreamMediatorImpl.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph#diff-c2VydmVyL3NyYy9tYWluL2phdmEvY29tL2hlZGVyYS9ibG9jay9zZXJ2ZXIvbWVkaWF0b3IvTGl2ZVN0cmVhbU1lZGlhdG9ySW1wbC5qYXZh) | `100.00% <100.00%> (ø)` | | | [...block/server/mediator/MediatorInjectionModule.java](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?src=pr&el=tree&filepath=server%2Fsrc%2Fmain%2Fjava%2Fcom%2Fhedera%2Fblock%2Fserver%2Fmediator%2FMediatorInjectionModule.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph#diff-c2VydmVyL3NyYy9tYWluL2phdmEvY29tL2hlZGVyYS9ibG9jay9zZXJ2ZXIvbWVkaWF0b3IvTWVkaWF0b3JJbmplY3Rpb25Nb2R1bGUuamF2YQ==) | `100.00% <ø> (+25.00%)` | :arrow_up: | | [...block/server/mediator/SubscriptionHandlerBase.java](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?src=pr&el=tree&filepath=server%2Fsrc%2Fmain%2Fjava%2Fcom%2Fhedera%2Fblock%2Fserver%2Fmediator%2FSubscriptionHandlerBase.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph#diff-c2VydmVyL3NyYy9tYWluL2phdmEvY29tL2hlZGVyYS9ibG9jay9zZXJ2ZXIvbWVkaWF0b3IvU3Vic2NyaXB0aW9uSGFuZGxlckJhc2UuamF2YQ==) | `100.00% <100.00%> (ø)` | | | [...com/hedera/block/server/notifier/NotifierImpl.java](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?src=pr&el=tree&filepath=server%2Fsrc%2Fmain%2Fjava%2Fcom%2Fhedera%2Fblock%2Fserver%2Fnotifier%2FNotifierImpl.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph#diff-c2VydmVyL3NyYy9tYWluL2phdmEvY29tL2hlZGVyYS9ibG9jay9zZXJ2ZXIvbm90aWZpZXIvTm90aWZpZXJJbXBsLmphdmE=) | `100.00% <ø> (ø)` | | | [...a/block/server/pbj/PbjBlockAccessServiceProxy.java](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?src=pr&el=tree&filepath=server%2Fsrc%2Fmain%2Fjava%2Fcom%2Fhedera%2Fblock%2Fserver%2Fpbj%2FPbjBlockAccessServiceProxy.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph#diff-c2VydmVyL3NyYy9tYWluL2phdmEvY29tL2hlZGVyYS9ibG9jay9zZXJ2ZXIvcGJqL1BiakJsb2NrQWNjZXNzU2VydmljZVByb3h5LmphdmE=) | `100.00% <100.00%> (+10.20%)` | :arrow_up: | | [...a/block/server/pbj/PbjBlockStreamServiceProxy.java](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?src=pr&el=tree&filepath=server%2Fsrc%2Fmain%2Fjava%2Fcom%2Fhedera%2Fblock%2Fserver%2Fpbj%2FPbjBlockStreamServiceProxy.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph#diff-c2VydmVyL3NyYy9tYWluL2phdmEvY29tL2hlZGVyYS9ibG9jay9zZXJ2ZXIvcGJqL1BiakJsb2NrU3RyZWFtU2VydmljZVByb3h5LmphdmE=) | `91.07% <100.00%> (+34.70%)` | :arrow_up: | | [...server/persistence/PersistenceInjectionModule.java](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?src=pr&el=tree&filepath=server%2Fsrc%2Fmain%2Fjava%2Fcom%2Fhedera%2Fblock%2Fserver%2Fpersistence%2FPersistenceInjectionModule.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph#diff-c2VydmVyL3NyYy9tYWluL2phdmEvY29tL2hlZGVyYS9ibG9jay9zZXJ2ZXIvcGVyc2lzdGVuY2UvUGVyc2lzdGVuY2VJbmplY3Rpb25Nb2R1bGUuamF2YQ==) | `80.00% <ø> (ø)` | | | [...rver/persistence/StreamPersistenceHandlerImpl.java](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?src=pr&el=tree&filepath=server%2Fsrc%2Fmain%2Fjava%2Fcom%2Fhedera%2Fblock%2Fserver%2Fpersistence%2FStreamPersistenceHandlerImpl.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph#diff-c2VydmVyL3NyYy9tYWluL2phdmEvY29tL2hlZGVyYS9ibG9jay9zZXJ2ZXIvcGVyc2lzdGVuY2UvU3RyZWFtUGVyc2lzdGVuY2VIYW5kbGVySW1wbC5qYXZh) | `100.00% <100.00%> (ø)` | | | ... and [6 more](https://app.codecov.io/gh/hashgraph/hedera-block-node/pull/358?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=hashgraph) | |