]
Steven Hawkins resolved TEIID-4254.
-----------------------------------
Fix Version/s: 9.0
Resolution: Done
Simply removed the handshake call.
PG transport SSL Warning during the client connection
-----------------------------------------------------
Key: TEIID-4254
URL:
https://issues.jboss.org/browse/TEIID-4254
Project: Teiid
Issue Type: Bug
Components: ODBC
Affects Versions: 9.0
Reporter: Ramesh Reddy
Assignee: Steven Hawkins
Fix For: 9.0
While using a ODBC client with SSL is throwing this following exception on server at the
time of connection. I used the script here
https://developer.jboss.org/wiki/JDBCODBCSSLConnectionUsingSelf-signedSSL...
It seemed to work fine after that
{code}
5:42:02,651 WARNING [io.netty.util.concurrent.DefaultPromise] (NIO2) An exception was
thrown by org.teiid.transport.PgBackendProtocol$SSLEnabler.operationComplete():
io.netty.util.concurrent.BlockingOperationException:
SslHandler$LazyChannelPromise@5a8a25ae(incomplete)
at io.netty.util.concurrent.DefaultPromise.checkDeadLock(DefaultPromise.java:390)
at io.netty.util.concurrent.DefaultPromise.await(DefaultPromise.java:251)
at io.netty.util.concurrent.DefaultPromise.sync(DefaultPromise.java:218)
at io.netty.util.concurrent.DefaultPromise.sync(DefaultPromise.java:32)
at
org.teiid.transport.PgBackendProtocol$SSLEnabler.operationComplete(PgBackendProtocol.java:90)
at
org.teiid.transport.PgBackendProtocol$SSLEnabler.operationComplete(PgBackendProtocol.java:77)
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:680)
at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:567)
at io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:406)
at io.netty.channel.DefaultChannelPromise.trySuccess(DefaultChannelPromise.java:82)
at io.netty.channel.ChannelOutboundBuffer.safeSuccess(ChannelOutboundBuffer.java:639)
at io.netty.channel.ChannelOutboundBuffer.remove(ChannelOutboundBuffer.java:259)
at io.netty.channel.ChannelOutboundBuffer.removeBytes(ChannelOutboundBuffer.java:334)
at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:317)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:750)
at
io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:303)
at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:719)
at
io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1119)
at
io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:735)
at
io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:765)
at
io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:753)
at org.teiid.transport.PgBackendProtocol.sendSslResponse(PgBackendProtocol.java:591)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.teiid.transport.PgBackendProtocol.write(PgBackendProtocol.java:219)
at
io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:705)
at
io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:763)
at
io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:698)
at io.netty.channel.ChannelDuplexHandler.write(ChannelDuplexHandler.java:106)
at
io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:705)
at
io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:763)
at
io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:698)
at
io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:684)
at io.netty.channel.DefaultChannelPipeline.write(DefaultChannelPipeline.java:940)
at io.netty.channel.AbstractChannel.write(AbstractChannel.java:234)
at
org.teiid.transport.SSLAwareChannelHandler$ObjectChannelImpl.write(SSLAwareChannelHandler.java:93)
at org.teiid.transport.ODBCClientInstance$1.invoke(ODBCClientInstance.java:60)
at com.sun.proxy.$Proxy58.sendSslResponse(Unknown Source)
at org.teiid.odbc.ODBCServerRemoteImpl.sslRequest(ODBCServerRemoteImpl.java:1034)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.teiid.transport.ODBCClientInstance.processMessage(ODBCClientInstance.java:127)
at org.teiid.transport.ODBCClientInstance.receivedMessage(ODBCClientInstance.java:116)
at
org.teiid.transport.SSLAwareChannelHandler.messageReceived(SSLAwareChannelHandler.java:212)
at
org.teiid.transport.SSLAwareChannelHandler.channelRead(SSLAwareChannelHandler.java:218)
at
io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
at
io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
at
io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:242)
at
io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339)
at
io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324)
at
io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:847)
at
io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
at
io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
at
io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
at java.lang.Thread.run(Thread.java:745)
{code}