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

Block Parsing error on mainnet #103

Open
satran004 opened this issue Jan 3, 2025 · 1 comment
Open

Block Parsing error on mainnet #103

satran004 opened this issue Jan 3, 2025 · 1 comment

Comments

@satran004
Copy link
Member

   at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.107.Final.jar!/:4.1.107.Final]
        at java.base/java.lang.Thread.run(Thread.java:1583) ~[na:na]

2025-01-03T13:06:26.515Z ERROR 160695 --- [ntLoopGroup-5-1] c.b.c.y.c.p.blockfetch.BlockfetchAgent   : BlockHeader >> Block No: 11303764, Slot: 144343295
2025-01-03T13:06:26.516Z ERROR 160695 --- [ntLoopGroup-5-1] c.b.c.y.s.c.service.BlockFetchService    : Block parsing error

co.nstant.in.cbor.CborException: Reserved additional information
        at co.nstant.in.cbor.decoder.AbstractDecoder.getLengthAsBigInteger(AbstractDecoder.java:165) ~[cbor-0.9.jar!/:na]
        at co.nstant.in.cbor.decoder.UnsignedIntegerDecoder.decode(UnsignedIntegerDecoder.java:17) ~[cbor-0.9.jar!/:na]
        at co.nstant.in.cbor.CborDecoder.decodeNext(CborDecoder.java:140) ~[cbor-0.9.jar!/:na]
        at com.bloxbean.cardano.yaci.core.model.serializers.util.WitnessUtil.getRedeemerMapBytes(WitnessUtil.java:105) ~[yaci-core-0.3.3.jar!/:na]
        at com.bloxbean.cardano.yaci.core.model.serializers.BlockSerializer.handleWitnessDatumRedeemer(BlockSerializer.java:217) ~[yaci-core-0.3.3.jar!/:na]
        at com.bloxbean.cardano.yaci.core.model.serializers.BlockSerializer.deserializeBlock(BlockSerializer.java:83) ~[yaci-core-0.3.3.jar!/:na]
        at com.bloxbean.cardano.yaci.core.model.serializers.BlockSerializer.deserialize(BlockSerializer.java:32) ~[yaci-core-0.3.3.jar!/:na]
        at com.bloxbean.cardano.yaci.core.protocol.blockfetch.BlockfetchAgent.onReceiveBlocks(BlockfetchAgent.java:128) ~[yaci-core-0.3.3.jar!/:na]
        at com.bloxbean.cardano.yaci.core.protocol.blockfetch.BlockfetchAgent.processResponse(BlockfetchAgent.java:83) ~[yaci-core-0.3.3.jar!/:na]
        at com.bloxbean.cardano.yaci.core.protocol.Agent.receiveResponse(Agent.java:44) ~[yaci-core-0.3.3.jar!/:na]
        at com.bloxbean.cardano.yaci.core.network.handlers.MiniProtoClientInboundHandler.channelRead(MiniProtoClientInboundHandler.java:39) ~[yaci-core-0.3.3.jar!/:na]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346) ~[netty-codec-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:318) ~[netty-codec-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562) ~[netty-transport-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[netty-common-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.107.Final.jar!/:4.1.107.Final]
        at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.107.Final.jar!/:4.1.107.Final]
        at java.base/java.lang.Thread.run(Thread.java:1583) ~[na:na]

2025-01-03T13:06:26.516Z  WARN 160695 --- [ntLoopGroup-5-1] i.netty.channel.DefaultChannelPipeline   : An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.

java.lang.NullPointerException: Cannot invoke "com.bloxbean.cardano.yaci.helper.BlockFetcher.shutdown()" because "this.blockFetcher" is null
        at com.bloxbean.cardano.yaci.helper.BlockRangeSync.stop(BlockRangeSync.java:92) ~[yaci-helper-0.3.3.jar!/:na]
        at com.bloxbean.cardano.yaci.store.core.service.BlockFetchService.stopSyncOnError(BlockFetchService.java:268) ~[yaci-store-core-0.1.0.jar!/:na]
        at com.bloxbean.cardano.yaci.store.core.service.BlockFetchService.onParsingError(BlockFetchService.java:338) ~[yaci-store-core-0.1.0.jar!/:na]
        at com.bloxbean.cardano.yaci.helper.listener.BlockFetchAgentListenerAdapter.onParsingError(BlockFetchAgentListenerAdapter.java:137) ~[yaci-helper-0.3.3.jar!/:na]
        at com.bloxbean.cardano.yaci.core.protocol.blockfetch.BlockfetchAgent.lambda$onReceiveBlocks$5(BlockfetchAgent.java:150) ~[yaci-core-0.3.3.jar!/:na]
        at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708) ~[na:na]
        at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762) ~[na:na]
        at com.bloxbean.cardano.yaci.core.protocol.blockfetch.BlockfetchAgent.onReceiveBlocks(BlockfetchAgent.java:150) ~[yaci-core-0.3.3.jar!/:na]
        at com.bloxbean.cardano.yaci.core.protocol.blockfetch.BlockfetchAgent.processResponse(BlockfetchAgent.java:83) ~[yaci-core-0.3.3.jar!/:na]
        at com.
satran004 added a commit that referenced this issue Jan 3, 2025
* #103 - Workaround: Incase of redeemer parse error, catch the error and continue

* Bump version for release
@satran004
Copy link
Member Author

Workaround: Catch the redeemer parse exception and continue.

Known Limitation: The problemetic redeemer in block 11303764 will not be available in yaci store database.

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

No branches or pull requests

1 participant