[
https://jira.jboss.org/jira/browse/TEIID-734?page=com.atlassian.jira.plug...
]
Ramesh Reddy resolved TEIID-734.
--------------------------------
Resolution: Done
This exception was happening for two reasons. One Channel handler was throwing a exception
when the channel is closed, even when the client requested it.
Also, the ILogon.ping method was being used with dual purpose.
1) ping for the session instance
2) ping for the server instance, if there is spare server socket instance avaialble to use
by the next connection in the same JVM, if the first connection has been closed and
released the server socket instance to the pool.
In the (2) the ping was inadvertently using the cached session id, thus throwing a
exception, and making the cached instance un-usable. Now, LogonImpl correctly removes the
cached session id when the session logs off, and then if a ping calls comes thorough
without the session id, then it treats that call as server instance ping.
Exception while closing the JDBC Connection to the Teiid Runtime
----------------------------------------------------------------
Key: TEIID-734
URL:
https://jira.jboss.org/jira/browse/TEIID-734
Project: Teiid
Issue Type: Bug
Components: Server
Affects Versions: 6.1.0
Reporter: Ramesh Reddy
Assignee: Ramesh Reddy
Fix For: 6.2.0
2009-07-21 16:09:00,250 DEBUG [Worker1_SocketWorker24] org.teiid.Server - message:
MessageHolder: contents=null for request ID:4
2009-07-21 16:10:38,991 DEBUG [New I/O server worker #1-2] org.teiid.Server - processing
message:MessageHolder:
contents=com.metamatrix.common.comm.platform.socket.client.ServiceInvocationStruct@1104da7
2009-07-21 16:10:38,991 DEBUG [Worker1_SocketWorker25] org.teiid.RESOURCE_POOLING -
Beginning work with virtual worker Worker1_SocketWorker25
2009-07-21 16:10:38,991 DEBUG [Worker1_SocketWorker25] org.teiid.SESSION - closeSession
3
2009-07-21 16:10:38,992 DEBUG [Worker1_SocketWorker25] org.teiid.BUFFER_MGR - Removing
TupleSources for group 3
2009-07-21 16:10:38,992 DEBUG [Worker1_SocketWorker25] org.teiid.TXN_LOG - before
cancelTransactions:com.metamatrix.dqp.embedded.services.EmbeddedTransactionService@15d8d75(3,false)
2009-07-21 16:10:38,992 DEBUG [Worker1_SocketWorker25] org.teiid.TXN_LOG - after
cancelTransactions : null
2009-07-21 16:10:38,993 DEBUG [Worker1_SocketWorker25] org.teiid.Server - message:
MessageHolder: contents=null for request ID:5
2009-07-21 16:10:39,170 DEBUG [New I/O server worker #1-2] org.teiid.Server - Unhandled
exception, closing client instance
com.metamatrix.common.comm.exception.SingleInstanceCommunicationException: Channel
closed
at
org.teiid.transport.SSLAwareChannelHandler.channelDisconnected(SSLAwareChannelHandler.java:219)
at
org.jboss.netty.channel.SimpleChannelHandler.handleUpstream(SimpleChannelHandler.java:130)
at
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:401)
at
org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:624)
at org.jboss.netty.handler.codec.frame.FrameDecoder.cleanup(FrameDecoder.java:268)
at
org.jboss.netty.handler.codec.frame.FrameDecoder.channelDisconnected(FrameDecoder.java:182)
at
org.jboss.netty.channel.SimpleChannelHandler.handleUpstream(SimpleChannelHandler.java:130)
at
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:401)
at
org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:396)
at org.jboss.netty.channel.Channels.fireChannelDisconnected(Channels.java:366)
at org.jboss.netty.channel.socket.nio.NioWorker.close(NioWorker.java:726)
at org.jboss.netty.channel.socket.nio.NioWorker.close(NioWorker.java:371)
at org.jboss.netty.channel.socket.nio.NioWorker.readIntoHeapBuffer(NioWorker.java:304)
at org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:254)
at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:163)
at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:78)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira