Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Threaded View
Avro >> mail # user >> Deadlock using Avro 1.5.0


Copy link to this message
-
Deadlock using Avro 1.5.0
Hello,

I'm seeing a deadlock condition using avro 1.5.0. See the relevant thread
dump:

2011-05-09 20:24:50
Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.0-b11 mixed mode):

"pool-1-thread-2" prio=10 tid=0x0000000040c66800 nid=0x1e38 in Object.wait()
[0x00007f4746257000]
   java.lang.Thread.State: RUNNABLE
at org.apache.avro.io.parsing.Symbol.<clinit>(Symbol.java:542)
at
org.apache.avro.io.parsing.ResolvingGrammarGenerator.generate(ResolvingGrammarGenerator.java:79)
at
org.apache.avro.io.parsing.ResolvingGrammarGenerator.generate(ResolvingGrammarGenerator.java:50)
at org.apache.avro.io.ResolvingDecoder.resolve(ResolvingDecoder.java:82)
at org.apache.avro.io.ResolvingDecoder.<init>(ResolvingDecoder.java:46)
at
org.apache.avro.io.DecoderFactory.resolvingDecoder(DecoderFactory.java:307)
at
org.apache.avro.generic.GenericDatumReader.getResolver(GenericDatumReader.java:112)
at
org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:127)
at
com.aol.service.provider.ServiceContainer$JobExecutor.run(ServiceContainer.java:152)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)

"pool-1-thread-1" prio=10 tid=0x0000000040c65800 nid=0x1e32 in Object.wait()
[0x00007f4746359000]
   java.lang.Thread.State: RUNNABLE
at
org.apache.avro.io.parsing.ResolvingGrammarGenerator.resolveRecords(ResolvingGrammarGenerator.java:237)
at
org.apache.avro.io.parsing.ResolvingGrammarGenerator.generate(ResolvingGrammarGenerator.java:118)
at
org.apache.avro.io.parsing.ResolvingGrammarGenerator.generate(ResolvingGrammarGenerator.java:50)
at org.apache.avro.io.ResolvingDecoder.resolve(ResolvingDecoder.java:82)
at org.apache.avro.io.ResolvingDecoder.<init>(ResolvingDecoder.java:46)
at
org.apache.avro.io.DecoderFactory.resolvingDecoder(DecoderFactory.java:307)
at
org.apache.avro.generic.GenericDatumReader.getResolver(GenericDatumReader.java:112)
at
org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:127)
at
com.aol.service.provider.ServiceContainer$JobExecutor.run(ServiceContainer.java:152)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)

I was able to workaround this condition by adding the following code at
server startup:
Class.forName(Symbol.class.getName());

Is this a known issue?

--
Regards,
Shalin Shekhar Mangar.
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB