Hi, There was a Kafka Client update in version 2.7.1 (if I recall correctly): https://archive.apache.org/dist/storm/apache-storm-2.7.1/RELEASE_NOTES.html
Additionally, there was a change to the KafkaTrident Spouts here: https://github.com/apache/storm/pull/3679 It might be a good idea to first verify if you're using the correct versions, as a NoSuchMethodError could indicate you're running an older version of the Kafka client library in your shade. Gruß r Am Dienstag, dem 04.03.2025 um 16:35 +0000 schrieb Dabalos, Rahmat Peter: > Hello, > > Good day, as we are now updating our Storm topologies, we are now > experiencing an error upon startup. The version we are coming from is > 2.6.4, and we want to upgrade it to the latest 2.8.0. Do you have a > guide regarding this migration? And if there are changes that we need > to do in our code before migration? > > For your references here are the errors we encountered: > 1. java.lang.NoSuchMethodError: > 'org.apache.kafka.clients.consumer.ConsumerRecords > org.apache.kafka.clients.consumer.Consumer.poll(java.time.Duration)'\ > at > org.apache.storm.kafka.spout.trident.KafkaTridentSpoutEmitter.emitBat > chNew(KafkaTridentSpoutEmitter.java:178) ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.storm.kafka.spout.trident.KafkaTridentOpaqueSpoutEmitter.e > mitBatchNew(KafkaTridentOpaqueSpoutEmitter.java:45) > ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.storm.trident.spout.OpaquePartitionedTridentSpoutExecutor$ > Emitter.emitBatch(OpaquePartitionedTridentSpoutExecutor.java:166) > ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.trident.spout.TridentSpoutExecutor.execute(TridentSp > outExecutor.java:77) ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.trident.topology.TridentBoltExecutor.execute(Trident > BoltExecutor.java:235) ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.executor.bolt.BoltExecutor.tupleActionFn(BoltExecuto > r.java:212) ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.executor.Executor.acceptTupleAction(Executor.java:29 > 8) ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.executor.Executor.accept(Executor.java:292) ~[storm- > client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.utils.JCQueue.consumeImpl(JCQueue.java:113) ~[storm- > client-2.8.0.jar:2.8.0]\ > at org.apache.storm.utils.JCQueue.consume(JCQueue.java:89) > ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java: > 154) ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.executor.bolt.BoltExecutor$1.call(BoltExecutor.java: > 140) ~[storm-client-2.8.0.jar:2.8.0]\ > at org.apache.storm.utils.Utils$1.run(Utils.java:398) [storm- > client-2.8.0.jar:2.8.0]\ > at java.base/java.lang.Thread.run(Thread.java:840) [?:?]\ > 2. 2025-03-04 09:13:19.527 o.a.k.c.n.SslTransportLayer ShutdownHook- > shutdownFunc [WARN] Failed to send SSL Close message\ > java.io.IOException: Unexpected status returned by SSLEngine.wrap, > expected CLOSED, received OK. Will not send close message to peer.\ > at > org.apache.kafka.common.network.SslTransportLayer.close(SslTransportL > ayer.java:158) ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.common.utils.Utils.closeAll(Utils.java:663) > ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.common.network.KafkaChannel.close(KafkaChannel.java: > 59) ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.common.network.Selector.doClose(Selector.java:584) > ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.common.network.Selector.close(Selector.java:575) > ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.common.network.Selector.close(Selector.java:541) > ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.common.network.Selector.close(Selector.java:250) > ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.clients.NetworkClient.close(NetworkClient.java:506) > ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.clo > se(ConsumerNetworkClient.java:439) ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.clients.ClientUtils.closeQuietly(ClientUtils.java:71 > ) ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.clients.consumer.KafkaConsumer.close(KafkaConsumer.j > ava:1614) ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.clients.consumer.KafkaConsumer.close(KafkaConsumer.j > ava:1574) ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.kafka.clients.consumer.KafkaConsumer.close(KafkaConsumer.j > ava:1550) ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.storm.kafka.spout.trident.KafkaTridentSpoutEmitter.close(K > afkaTridentSpoutEmitter.java:377) ~[stormjar.jar:dev-3.0.8.8]\ > at > org.apache.storm.kafka.spout.trident.KafkaTridentOpaqueSpoutEmitter.c > lose(KafkaTridentOpaqueSpoutEmitter.java:67) ~[stormjar.jar:dev- > 3.0.8.8]\ > at > org.apache.storm.trident.spout.OpaquePartitionedTridentSpoutExecutor$ > Emitter.close(OpaquePartitionedTridentSpoutExecutor.java:218) > ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.trident.spout.TridentSpoutExecutor.cleanup(TridentSp > outExecutor.java:84) ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.trident.topology.TridentBoltExecutor.cleanup(Trident > BoltExecutor.java:253) ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.executor.ExecutorShutdown.shutdown(ExecutorShutdown. > java:120) ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.daemon.worker.Worker.shutdown(Worker.java:518) > ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.utils.Utils.lambda$addShutdownHookWithDelayedForceKi > ll$1(Utils.java:357) ~[storm-client-2.8.0.jar:2.8.0]\ > at java.base/java.lang.Thread.run(Thread.java:840) [?:?]\ > \ > \'97\ > 2025-03-04 09:13:20.376 o.a.s.u.Utils Thread-20-b-0-message-spout- > deserializer-validator-storm-event-extractor-executor[7, 7] [ERROR] > Async loop died!\ > java.lang.IllegalStateException: Timer is not active\ > at > org.apache.storm.StormTimer.checkActive(StormTimer.java:159) ~[storm- > client-2.8.0.jar:2.8.0]\ > at org.apache.storm.StormTimer.scheduleMs(StormTimer.java:85) > ~[storm-client-2.8.0.jar:2.8.0]\ > at org.apache.storm.StormTimer.schedule(StormTimer.java:65) > ~[storm-client-2.8.0.jar:2.8.0]\ > at org.apache.storm.StormTimer.schedule(StormTimer.java:69) > ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.StormTimer.scheduleRecurring(StormTimer.java:107) > ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.executor.Executor.setupTicks(Executor.java:517) > ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.executor.bolt.BoltExecutor.init(BoltExecutor.java:13 > 2) ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.executor.bolt.BoltExecutor.call(BoltExecutor.java:13 > 8) ~[storm-client-2.8.0.jar:2.8.0]\ > at > org.apache.storm.executor.bolt.BoltExecutor.call(BoltExecutor.java:54 > ) ~[storm-client-2.8.0.jar:2.8.0]\ > at org.apache.storm.utils.Utils$1.run(Utils.java:393) [storm- > client-2.8.0.jar:2.8.0]\ > at java.base/java.lang.Thread.run(Thread.java:840) [?:?]\ > > > Best regards, > Rahm Dabalos > ----------------------------------------------------------------- > ATTENTION: > The information in this e-mail is confidential and only meant for the > intended recipient. If you are not the intended recipient, don't use > or disclose it in any way. Please let the sender know and delete the > message immediately. > -----------------------------------------------------------------
