Skip to content
This repository has been archived by the owner on Jun 16, 2023. It is now read-only.

storm-trident-stream重构为jstorm时,运行topology报错。在storm上能正常运行 #647

Open
jiangsy01 opened this issue Nov 5, 2018 · 2 comments

Comments

@jiangsy01
Copy link

[ERROR 2018-11-05 15:22:13 c.a.j.c.AsyncLoopRunnable:116 b-11-aggregate-stat-calc-aggregate-stat-all-agg-stat-ana-round-machine-agg-stat-ana-round-test-agg-stat-ana-round:33-TransferRunnable-0] Async loop died!!!null
java.lang.StackOverflowError: null
at com.alibaba.jstorm.esotericsoftware.kryo.Kryo.writeObjectOrNull(Kryo.java:590) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.serializers.ObjectField.write(ObjectField.java:87) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:518) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:552) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.serializers.ObjectField.write(ObjectField.java:80) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:518) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:552) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.serializers.ObjectField.write(ObjectField.java:80) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:518) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:552) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.serializers.ObjectField.write(ObjectField.java:80) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:518) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:552) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.serializers.ObjectField.write(ObjectField.java:80) ~[jstorm-core-2.2.1.jar:na]
at com.alibaba.jstorm.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:518) ~[jstorm-core-2.2.1.jar:na]

@jiangsy01
Copy link
Author

com.alibaba.jstorm.transactional.BatchGroupIdSerializer.write() 这个方法会导致com.esotericsoftware.kryo.serializers.ObjectField.write(Output output, Object object)和com.esotericsoftware.kryo.serializers.FieldSerializer.write(Kryo kryo, Output output, T object)的互相循环调用,最终StackOverflowError

@jiangsy01
Copy link
Author

com.alibaba.jstorm.task.TaskTransfer.serialize(KryoTupleSerializer serializer, Object event) 方法的320行是bug,导致stackOverFlow

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant