IllegalStateException using java with webserver and netty front end/ curious about general issues here.
I went and downloaded 2.0 server and the related java client pieces to test out couchbase as, you may expect, an alternative to SQL. Install of server was easy but had a few questions on the client side. Most I have figured out and this one is not a disaster but I was curious about it. I am hitting couchbase using java client as part of a custom java webserver("Duphus"). The server has two listen ports offering a normal thread-per-page model and the netty front end on the alternative port. If I try to test code using a hit by normal front end it seems fine but here I get an exception using the netty call stack. I'll be the first to concede that blocking here may be a huge problem but curious about the relationship to couchebase. Sure, our entire server could hang on a couple of there pages blocking but what does couchbase care? Comments? Thanks
CouchebaseDBLocation insert error java.lang.IllegalStateException: await*() in I/O thread causes a dead lock or sudden performance drop. Use addListener() instead or call await*() from a different thread. java.lang.IllegalStateException: await*() in I/O thread causes a dead lock or sudden performance drop. Use addListener() instead or call await*() from a different thread.
at org.jboss.netty.channel.DefaultChannelFuture.checkDeadLock(DefaultChannelFuture.java:296)
at org.jboss.netty.channel.DefaultChannelFuture.awaitUninterruptibly(DefaultChannelFuture.java:208)
at com.couchbase.client.vbucket.BucketMonitor.createChannel(BucketMonitor.java:195)
at com.couchbase.client.vbucket.BucketMonitor.startMonitor(BucketMonitor.java:163)
at com.couchbase.client.vbucket.ConfigurationProviderHTTP.subscribe(ConfigurationProviderHTTP.java:229)
at com.couchbase.client.CouchbaseClient.(CouchbaseClient.java:217)
at com.couchbase.client.CouchbaseClient.(CouchbaseClient.java:156)
at com.phluant.third.data.CouchebaseDBLocation.getTableClient(CouchebaseDBLocation.java:597)
at com.phluant.third.data.CouchebaseDBLocation.insert(CouchebaseDBLocation.java:400)
at com.phluant.service.SpuriousLogCheck.insert(SpuriousLogCheck.java:321)
at com.phluant.service.SpuriousLogCheck.check(SpuriousLogCheck.java:259)
at com.phluant.service.RTLog.huntAndGather(RTLog.java:577)
at com.phluant.service.RTLog.dolog(RTLog.java:873)
at com.phluant.duhpus.DuphusRTLog.consume(DuphusRTLog.java:158)
at com.phluant.duhpus.DuphusLogPage.(DuphusLogPage.java:281)
at com.phluant.duhpus.DuphusServlet.req(DuphusServlet.java:542)
at com.phluant.netty.HttpRequestHandler.page(HttpRequestHandler.java:203)
at com.phluant.netty.HttpRequestHandler.m(HttpRequestHandler.java:352)
at com.phluant.netty.HttpRequestHandler.messageReceived(HttpRequestHandler.java:364)
at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:783)
at org.jboss.netty.handler.codec.http.HttpContentEncoder.messageReceived(HttpContentEncoder.java:83)
at org.jboss.netty.channel.SimpleChannelHandler.handleUpstream(SimpleChannelHandler.java:100)
at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:783)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:302)
at org.jboss.netty.handler.codec.replay.ReplayingDecoder.unfoldAndFireMessageReceived(ReplayingDecoder.java:527)
at org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:506)
at org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder.java:443)
at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)
at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:274)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:261)
at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:351)
at org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:282)
at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:202)
at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:44)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)