I am trying to run parallel stream and each block of code under one execution makes hundreds of call to redis cluster (AWS Elasticache), but it's failing with below error on EKS cluster whereas same code works well on Windows VM. java.io.IOException: java.lang.RuntimeException: class not found CLASSNAME:com.mycomp.project.common.domain.Price
Could I get a guide here. Thanks in advance.
Attaching my redis-config.yaml and error log.
clusterServersConfig:
checkSlotsCoverage: true
idleConnectionTimeout: 30000
connectTimeout: 10000
timeout: 10000
retryAttempts: 3
retryInterval: 1500
failedSlaveReconnectionInterval: 3000
failedSlaveCheckInterval: 10000
subscriptionsPerConnection: 20
subscriptionConnectionMinimumIdleSize: 5
subscriptionConnectionPoolSize: 150
slaveConnectionMinimumIdleSize: 30
slaveConnectionPoolSize: 150
masterConnectionMinimumIdleSize: 64
masterConnectionPoolSize: 64
readMode: "SLAVE" #MASTER_SLAVE , SLAVE
subscriptionMode: "SLAVE" #MASTER
scanInterval: 2000
pingConnectionInterval: 30000
keepAlive: true
tcpNoDelay: true
threads: 200
nettyThreads: 400
codec: !<org.redisson.codec.FstCodec> {}
transportMode: "NIO"
Error log:
2022-09-02 07:22:46.529 [redisson-netty-2-126] ERROR o.r.client.handler.CommandDecoder - Unable to decode data. channel: [id: 0xccb087e8, L:/10.196.5.71:38250 - R:10.196.57.107/10.196.57.107:6379], reply: ReplayingDecoderByteBuf(ridx=66, widx=1225), command: (EVAL), promise: java.util.concurrent.CompletableFuture@69f0dc32[Not completed, 1 dependents], params: [local expireHead = redis.call('zrange', KEYS[2], 0, 0, 'withscores'); local currentTime = tonumber(t..., 5, project_MARKET_DATA, redisson__timeout__set:{project_MARKET_DATA}, redisson__idle__set:{project_MARKET_DATA}, redisson__map_cache__last_access__set:{project_MARKET_DATA}, {project_MARKET_DATA}:redisson_options, 1662117766526, PooledUnsafeDirectByteBuf(ridx: 0, widx: 67, cap: 256), PooledUnsafeDirectByteBuf(ridx: 0, widx: 67, cap: 256), ...] java.io.IOException: java.lang.RuntimeException: class not found CLASSNAME:com.mycomp.project.common.domain.Price loader:jdk.internal.loader.ClassLoaders$AppClassLoader@5cb0d902 at org.nustaq.serialization.FSTObjectInput.readObject(FSTObjectInput.java:247) at org.redisson.codec.FstCodec$1.decode(FstCodec.java:250) at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:383) at org.redisson.client.handler.CommandDecoder.decodeList(CommandDecoder.java:427) at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:392) at org.redisson.client.handler.CommandDecoder.decodeCommand(CommandDecoder.java:198) at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:137) at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:113) at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:503) at io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:366) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:281) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352) at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1478) at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1227) at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1274) at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:503) at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:442) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:281) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1422) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:931) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:700) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:635) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:552) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:514) at io.netty.util.concurrent.SingleThreadEventExecutor$6.run(SingleThreadEventExecutor.java:1050) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:834) Caused by: java.lang.RuntimeException: class not found CLASSNAME:com.mycomp.project.common.domain.Price loader:jdk.internal.loader.ClassLoaders$AppClassLoader@5cb0d902 at org.nustaq.serialization.FSTClazzNameRegistry.classForName(FSTClazzNameRegistry.java:235) at org.nustaq.serialization.FSTClazzNameRegistry.classForName(FSTClazzNameRegistry.java:190) at org.nustaq.serialization.FSTClazzNameRegistry.decodeClass(FSTClazzNameRegistry.java:173) at org.nustaq.serialization.coders.FSTStreamDecoder.readClass(FSTStreamDecoder.java:478) at org.nustaq.serialization.FSTObjectInput.readClass(FSTObjectInput.java:939) at org.nustaq.serialization.FSTObjectInput.readObjectWithHeader(FSTObjectInput.java:347) at org.nustaq.serialization.FSTObjectInput.readObjectInternal(FSTObjectInput.java:331) at org.nustaq.serialization.FSTObjectInput.readObject(FSTObjectInput.java:311) at org.nustaq.serialization.FSTObjectInput.readObject(FSTObjectInput.java:245) ... 35 common frames omitted Caused by: java.lang.ClassNotFoundException: com.mycomp.project.common.domain.Price at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) at java.base/java.lang.Class.forName0(Native Method) at java.base/java.lang.Class.forName(Class.java:398) at org.nustaq.serialization.FSTClazzNameRegistry.classForName(FSTClazzNameRegistry.java:197) ... 43 common frames omitted 2022-09-02 07:22:46.529 [redisson-netty-2-126] ERROR o.r.c.handler.ErrorsLoggingHandler - Exception occured. Channel: [id: 0xccb087e8, L:/10.196.5.71:38250 - R:10.196.57.107/10.196.57.107:6379] io.netty.handler.codec.DecoderException: java.io.IOException: java.lang.RuntimeException: class not found CLASSNAME:com.mycomp.project.common.domain.Price loader:jdk.internal.loader.ClassLoaders$AppClassLoader@5cb0d902 at io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:421) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:281) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352) at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1478) at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1227) at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1274) at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:503) at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:442) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:281) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1422) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:931) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:700) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:635) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:552) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:514) at io.netty.util.concurrent.SingleThreadEventExecutor$6.run(SingleThreadEventExecutor.java:1050) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:834) Caused by: java.io.IOException: java.lang.RuntimeException: class not found CLASSNAME:com.mycomp.project.common.domain.Price loader:jdk.internal.loader.ClassLoaders$AppClassLoader@5cb0d902 at org.nustaq.serialization.FSTObjectInput.readObject(FSTObjectInput.java:247) at org.redisson.codec.FstCodec$1.decode(FstCodec.java:250) at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:383) at org.redisson.client.handler.CommandDecoder.decodeList(CommandDecoder.java:427) at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:392) at org.redisson.client.handler.CommandDecoder.decodeCommand(CommandDecoder.java:198) at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:137) at org.redisson.client.handler.CommandDecoder.decode(CommandDecoder.java:113) at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:503) at io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:366) ... 26 common frames omitted Caused by: java.lang.RuntimeException: class not found CLASSNAME:com.mycomp.project.common.domain.Price loader:jdk.internal.loader.ClassLoaders$AppClassLoader@5cb0d902 at org.nustaq.serialization.FSTClazzNameRegistry.classForName(FSTClazzNameRegistry.java:235) at org.nustaq.serialization.FSTClazzNameRegistry.classForName(FSTClazzNameRegistry.java:190) at org.nustaq.serialization.FSTClazzNameRegistry.decodeClass(FSTClazzNameRegistry.java:173) at org.nustaq.serialization.coders.FSTStreamDecoder.readClass(FSTStreamDecoder.java:478) at org.nustaq.serialization.FSTObjectInput.readClass(FSTObjectInput.java:939) at org.nustaq.serialization.FSTObjectInput.readObjectWithHeader(FSTObjectInput.java:347) at org.nustaq.serialization.FSTObjectInput.readObjectInternal(FSTObjectInput.java:331) at org.nustaq.serialization.FSTObjectInput.readObject(FSTObjectInput.java:311) at org.nustaq.serialization.FSTObjectInput.readObject(FSTObjectInput.java:245) ... 35 common frames omitted Caused by: java.lang.ClassNotFoundException: com.mycomp.project.common.domain.Price at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) at java.base/java.lang.Class.forName0(Native Method) at java.base/java.lang.Class.forName(Class.java:398) at org.nustaq.serialization.FSTClazzNameRegistry.classForName(FSTClazzNameRegistry.java:197) ... 43 common frames omitted