[
https://issues.apache.org/jira/browse/STORM-1540?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15148426#comment-15148426
]
ASF GitHub Bot commented on STORM-1540:
---------------------------------------
GitHub user arunmahadevan opened a pull request:
https://github.com/apache/storm/pull/1112
[STORM-1540] Fix Debug/Sampling for Trident
When ConsList emitted by a trident spout has to be transferred over
the network, it fails during Serialization. The proposed fix is to make
ConsList
kyro serializable.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/arunmahadevan/storm STORM-1540-new
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/storm/pull/1112.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1112
----
commit 0f0dea0b4d2b17d6e8dc32e82341b8aec70ef6e9
Author: Arun Mahadevan <[email protected]>
Date: 2016-02-16T10:25:25Z
[STORM-1540] Fix Debug/Sampling for Trident
When ConsList emitted by a trident spout has to be transferred over
the network, it fails during Serialization. The proposed fix is to make
ConsList
kyro serializable.
----
> Topology Debug/Sampling Breaks Trident Topologies
> -------------------------------------------------
>
> Key: STORM-1540
> URL: https://issues.apache.org/jira/browse/STORM-1540
> Project: Apache Storm
> Issue Type: Bug
> Components: storm-core, trident
> Affects Versions: 1.0.0
> Reporter: P. Taylor Goetz
> Assignee: Arun Mahadevan
> Priority: Blocker
>
> Steps to reproduce:
> 1. Deploy a Trident topology.
> 2. Turn on debug/sampling.
> Workers will crash with the following error:
> 2016-02-11 14:13:23.617 o.a.s.util [ERROR] Async loop died!
> java.lang.RuntimeException: java.lang.RuntimeException:
> java.io.NotSerializableException: org.apache.storm.trident.tuple.ConsList
> at
> org.apache.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:448)
> ~[storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> at
> org.apache.storm.utils.DisruptorQueue.consumeBatchWhenAvailable(DisruptorQueue.java:414)
> ~[storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> at
> org.apache.storm.disruptor$consume_batch_when_available.invoke(disruptor.clj:73)
> ~[storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> at
> org.apache.storm.disruptor$consume_loop_STAR_$fn__7651.invoke(disruptor.clj:83)
> ~[storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> at org.apache.storm.util$async_loop$fn__554.invoke(util.clj:484)
> [storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> at clojure.lang.AFn.run(AFn.java:22) [clojure-1.7.0.jar:?]
> at java.lang.Thread.run(Thread.java:745) [?:1.8.0_72]
> Caused by: java.lang.RuntimeException: java.io.NotSerializableException:
> org.apache.storm.trident.tuple.ConsList
> at
> org.apache.storm.serialization.SerializableSerializer.write(SerializableSerializer.java:41)
> ~[storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> at com.esotericsoftware.kryo.Kryo.writeClassAndObject(Kryo.java:568)
> ~[kryo-2.21.jar:?]
> at
> com.esotericsoftware.kryo.serializers.CollectionSerializer.write(CollectionSerializer.java:75)
> ~[kryo-2.21.jar:?]
> at
> com.esotericsoftware.kryo.serializers.CollectionSerializer.write(CollectionSerializer.java:18)
> ~[kryo-2.21.jar:?]
> at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:486)
> ~[kryo-2.21.jar:?]
> at
> org.apache.storm.serialization.KryoValuesSerializer.serializeInto(KryoValuesSerializer.java:44)
> ~[storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> at
> org.apache.storm.serialization.KryoTupleSerializer.serialize(KryoTupleSerializer.java:44)
> ~[storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> at
> org.apache.storm.daemon.worker$mk_transfer_fn$transfer_fn__8346.invoke(worker.clj:186)
> ~[storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> at
> org.apache.storm.daemon.executor$start_batch_transfer__GT_worker_handler_BANG_$fn__8037.invoke(executor.clj:309)
> ~[storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> at
> org.apache.storm.disruptor$clojure_handler$reify__7634.onEvent(disruptor.clj:40)
> ~[storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> at
> org.apache.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:435)
> ~[storm-core-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
> ... 6 more
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)