Hi,

I am running a topology on a storm 0.8.2 cluster, and got the following
exception. The exception is thrown out by the worker, not from the code of
bolts or spouts. Is this a known issue that has been fixed in the latest
version of storm?  Does anyone know if there is a workaround for this
exception by tuning some parameters?

Thanks!

Regards,
Yu


java.lang.RuntimeException: java.lang.RuntimeException:
java.io.NotSerializableException: java.nio.HeapByteBuffer
        at 
backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:87)
        at 
backtype.storm.utils.DisruptorQueue.consumeBatchWhenAvailable(DisruptorQueue.java:58)
        at 
backtype.storm.disruptor$consume_batch_when_available.invoke(disruptor.clj:62)
        at 
backtype.storm.disruptor$consume_loop_STAR_$fn__1619.invoke(disruptor.clj:73)
        at backtype.storm.util$async_loop$fn__465.invoke(util.clj:377)
        at clojure.lang.AFn.run(AFn.java:24)
        at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.RuntimeException:
java.io.NotSerializableException: java.nio.HeapByteBuffer
        at 
backtype.storm.serialization.SerializableSerializer.write(SerializableSerializer.java:24)
        at com.esotericsoftware.kryo.Kryo.writeClassAndObject(Kryo.java:554)
        at 
com.esotericsoftware.kryo.serializers.CollectionSerializer.write(CollectionSerializer.java:77)
        at 
com.esotericsoftware.kryo.serializers.CollectionSerializer.write(CollectionSerializer.java:18)
        at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:472)
        at 
backtype.storm.serialization.KryoValuesSerializer.serializeInto(KryoValuesSerializer.java:27)
        at 
backtype.storm.serialization.KryoTupleSerializer.serialize(KryoTupleSerializer.java:27)
        at 
backtype.storm.daemon.worker$mk_transfer_fn$fn__4152$fn__4156.invoke(worker.clj:99)
        at backtype.storm.util$fast_list_map.invoke(util.clj:771)
        at 
backtype.storm.daemon.worker$mk_transfer_fn$fn__4152.invoke(worker.clj:99)
        at 
backtype.storm.daemon.executor$start_batch_transfer__GT_worker_handler_BANG_$fn__3914.invoke(executor.clj:238)
        at 
backtype.storm.disruptor$clojure_handler$reify__1606.onEvent(disruptor.clj:43)
        at 
backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:84)
        ... 6 more
Caused by: java.io.NotSerializableException: java.nio.HeapByteBuffer
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1164)
        at 
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518)
        at 
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483)
        at 
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158)
        at 
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518)
        at 
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483)
        at 
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158)
        at 
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518)
        at 
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483)
        at 
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400)
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158)
        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330)
        at 
backtype.storm.serialization.SerializableSerializer.write(SerializableSerializer.java:21)
        ... 18 more

Reply via email to