Nathan, could you expand on what you mean by "your data structure".
yang...@bupt.edu.cn, could you try turning off *Config.TOPOLOGY_FALL_BACK_ON_JAVA_SERIALIZATION ?**Config conf = new backtype.storm.Config();* conf.setFallBackOnJavaSerialization(false);StormSubmitter.submitTopology(topo_name, conf, builder.createTopology()); If what I think is happening is true, you will receive a different error in your worker. Thank you for your time! +++++++++++++++++++++ Jeff Maass <maas...@gmail.com> linkedin.com/in/jeffmaass stackoverflow.com/users/373418/maassql +++++++++++++++++++++ On Tue, May 19, 2015 at 10:23 PM, Nathan Leung <ncle...@gmail.com> wrote: > Looks like you have a reference loop in your data structure > On May 19, 2015 11:07 PM, "yang...@bupt.edu.cn" <yang...@bupt.edu.cn> > wrote: > >> hi, >> >> I encountered the following error exception: >> >> java.lang.StackOverflowError at >> java.io.ObjectStreamClass$FieldReflector.getPrimFieldValues(ObjectStreamClass.java:1930) >> at >> java.io.ObjectStreamClass.getPrimFieldValues(ObjectStreamClass.java:1233) >> at >> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1532) >> at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508) >> at >> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431) >> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177) at >> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547) >> at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508) >> at >> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431) >> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177) at >> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547) >> at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508) >> at >> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431) >> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177) at >> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547) >> at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508) >> at >> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431) >> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177) at >> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547) >> at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508) >> at >> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431) >> at >> >> ………… >> >> I tried to locate the error, but I could hardly figure it out. >> >> I checked all my for loop and while loop, and there is no infinite loop. >> >> all tuples are 'newed' and kept imutable. >> >> how can I figure this out? >> >> thanks ... >> >> ps. this happened both in clusters and local mode. >> >> ------------------------------ >> yang...@bupt.edu.cn >> >