DB2 - Problem description
Problem IT39265 | Status: Closed |
WIRE LISTENER FAILS TO ACCEPT NEW COMMAND POST EXCEPTION | |
product: | |
DB2 CONNECT / DB2CONNCT / B50 - DB2 | |
Problem description: | |
wire listener fails to accept new command post exception and wire listener need to be restarted. When an error occurs, wire listener throws exception. Post exception, the output buffer of wirelistener is not cleaned and it continuously logs "Error processing message; java.lang.IllegalStateException : in the middle of something" as in below stack: An exception has been thrown: Error processing message; java.lang.IllegalArgumentException : can't serialize class java.lang.RuntimeException at com.ibm.nosql.wireListener.bson.BasicBSONEncoder._putObjectField (BasicBSONEncoder.java:269) at com.ibm.nosql.wireListener.bson.BasicBSONEncoder.putObject(Basic BSONEncoder.java:173) at com.ibm.nosql.wireListener.bson.BasicBSONEncoder.putObject(Basic BSONEncoder.java:119) at com.ibm.nosql.wireListener.bson.BasicBSONEncoder.encode(BasicBSO NEncoder.java:86) at com.ibm.nosql.driver.opMessage.writer(opMessage.java:198) at com.ibm.nosql.socket.channel.NoSQLInboundLink.handleMessage(NoSQ LInboundLink.java:432) at com.ibm.nosql.socket.channel.NoSQLInboundLink.complete(NoSQLInbo undLink.java:196) at com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.requestComplete( WorkQueueManager.java:551) at com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQu eueManager.java:601) at com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.workerRun(WorkQu eueManager.java:948) at com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQ ueueManager.java:1027) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExec utor.java:1156) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExe cutor.java:626) at com.ibm.ws.objectgrid.thread.XSThreadPool$Worker.run(XSThreadPoo l.java:282) An exception has been thrown: Error processing message; java.lang.IllegalStateException : in the middle of something at com.ibm.nosql.wireListener.bson.BasicBSONEncoder.set(BasicBSONEn coder.java:93) at com.ibm.nosql.wireListener.bson.BasicBSONEncoder.encode(BasicBSO NEncoder.java:85) at com.ibm.nosql.driver.opReply.writer(opReply.java:27) at com.ibm.nosql.socket.channel.NoSQLInboundLink.handleMessage(NoSQ LInboundLink.java:417) at com.ibm.nosql.socket.channel.NoSQLInboundLink.complete(NoSQLInbo undLink.java:196) at com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.requestComplete( WorkQueueManager.java:551) at com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQu eueManager.java:601) at com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.workerRun(WorkQu eueManager.java:948) at com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQ ueueManager.java:1027) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExec utor.java:1156) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExe cutor.java:626) at com.ibm.ws.objectgrid.thread.XSThreadPool$Worker.run(XSThreadPoo l.java:282) | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * When mongo application connect to IBM NoSQL/JSON Wire * * Listener * **************************************************************** * PROBLEM DESCRIPTION: * * When an error occurs, wire listener throws exception. Post * * exception, the output buffer of wirelistener is not cleaned * * and * * it continuously logs "Error processing * * message;java.lang.IllegalStateException : in the middle of * * something" as * * in below stack: * * * * An exception has been thrown: Error processing message; * * java.lang.IllegalStateException : in the middle of something * * at * * com.ibm.nosql.wireListener.bson.BasicBSONEncoder.set(BasicBS * * ONEncoder.java:93) * * at * * com.ibm.nosql.wireListener.bson.BasicBSONEncoder.encode(Basi * * cBSONEncoder.java:85) * * at com.ibm.nosql.driver.opReply.writer(opReply.java:27) * * at * * com.ibm.nosql.socket.channel.NoSQLInboundLink.handleMessage( * * NoSQLInboundLink.java:417) * * at * * com.ibm.nosql.socket.channel.NoSQLInboundLink.complete(NoSQL * * InboundLink.java:196) * * at * * com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.requestCompl * * ete(WorkQueueManager.java:551) * * at * * com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.attemptIO(Wo * * rkQueueManager.java:601) * * at * * com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.workerRun(Wo * * rkQueueManager.java:948) * * at * * com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager$Worker.run(W * * orkQueueManager.java:1027) * **************************************************************** * RECOMMENDATION: * * Upgrade to Db2 version 11.5.7.1 or later releases. * **************************************************************** | |
Local Fix: | |
Solution | |
Workaround | |
**************************************************************** * USERS AFFECTED: * * When mongo application connect to IBM NoSQL/JSON Wire * * Listener * **************************************************************** * PROBLEM DESCRIPTION: * * When an error occurs, wire listener throws exception. Post * * exception, the output buffer of wirelistener is not cleaned * * and * * it continuously logs "Error processing * * message;java.lang.IllegalStateException : in the middle of * * something" as * * in below stack: * * * * An exception has been thrown: Error processing message; * * java.lang.IllegalStateException : in the middle of something * * at * * com.ibm.nosql.wireListener.bson.BasicBSONEncoder.set(BasicBS * * ONEncoder.java:93) * * at * * com.ibm.nosql.wireListener.bson.BasicBSONEncoder.encode(Basi * * cBSONEncoder.java:85) * * at com.ibm.nosql.driver.opReply.writer(opReply.java:27) * * at * * com.ibm.nosql.socket.channel.NoSQLInboundLink.handleMessage( * * NoSQLInboundLink.java:417) * * at * * com.ibm.nosql.socket.channel.NoSQLInboundLink.complete(NoSQL * * InboundLink.java:196) * * at * * com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.requestCompl * * ete(WorkQueueManager.java:551) * * at * * com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.attemptIO(Wo * * rkQueueManager.java:601) * * at * * com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager.workerRun(Wo * * rkQueueManager.java:948) * * at * * com.ibm.ws.xs.tcp.channel.impl.WorkQueueManager$Worker.run(W * * orkQueueManager.java:1027) * **************************************************************** * RECOMMENDATION: * * Upgrade to Db2 version 11.5.7.1 or later releases. * **************************************************************** | |
Comment | |
Db2_v11571 contains fix of this issue. After fix, Wire listener no longer hangs and it is able to run next command. | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 30.11.2021 15.12.2021 24.10.2022 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) |