Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1357823

Summary: [GSS](6.6.x) Expose configuration for the SSLContext protocol in the Hot Rod client
Product: [JBoss] JBoss Data Grid 6 Reporter: wfink
Component: InfinispanAssignee: Tristan Tarrant <ttarrant>
Status: CLOSED UPSTREAM QA Contact: Martin Gencur <mgencur>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.5.0, 6.6.0, 6.5.1CC: jdg-bugs, pzapataf, vjuranek
Target Milestone: ER1Keywords: Security
Target Release: 6.6.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-02-10 03:49:07 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1309749, 1338942, 1357934    

Description wfink 2016-07-19 10:12:32 UTC
Currently in the HotRod client the SSLContext is created with the hardcoded "TLS" protocol. This prevents java 7 clients to make usage of TLS 1.2, since it is not enabled by default and needs "TLSv1.2" protocol setting to force it.


The client is running Java7 (JDG6.6) and the server is JDG7.
From the server log the connection fail with different messages, the reported version differ any time:
ERROR [org.infinispan.server.hotrod.CacheDecodeContext] (HotRodServerWorker-4-2) ISPN005003: Exception reported: org.infinispan.server.hotrod.UnknownVersionException: Unknown version:-96
	at org.infinispan.server.hotrod.HotRodDecoder.readHeader(HotRodDecoder.java:199)
	at org.infinispan.server.hotrod.HotRodDecoder.decodeHeader(HotRodDecoder.java:129)
	at org.infinispan.server.hotrod.HotRodDecoder.decode(HotRodDecoder.java:87)
	at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:387)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:245)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:292)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:278)
	at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1070)
	at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:904)
	at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:387)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:245)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:292)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:278)
	at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86)
	at org.infinispan.server.core.transport.StatsChannelHandler.channelRead(StatsChannelHandler.java:30)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:292)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:278)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:962)
	at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:879)
	at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:360)
	at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:276)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:112)
	at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137)
	at java.lang.Thread.run(Thread.java:745)


The client shows connection failures:
----------------------------------------
RemoteCacheManager [INFO] ISPN004021: Infinispan version: 6.4.0-redhat-SNAPSHOT
2016-07-18 13:11:30 TcpTransportFactory [DEBUG] Statically configured servers: [/192.168.1.1:11222]
TcpTransportFactory [DEBUG] Load balancer class: org.infinispan.client.hotrod.impl.transport.tcp.RoundRobinBalancingStrategy
TcpTransportFactory [DEBUG] Tcp no delay = true; client socket timeout = 60000 ms; connect timeout = 60000 ms
RoundRobinBalancingStrategy [TRACE] New server list is: [/192.168.1.1:11222]
2016-07-18 13:11:31 TcpTransport [TRACE] Could not connect to server: /192.168.1.1:11222
java.net.ConnectException: Connection refused: connect
	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
	at java.net.Socket.connect(Socket.java:579)
	at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618)
	at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransport.<init>(TcpTransport.java:66)
	at org.infinispan.client.hotrod.impl.transport.tcp.SaslTransportObjectFactory.makeObject(SaslTransportObjectFactory.java:47)
	at org.infinispan.client.hotrod.impl.transport.tcp.SaslTransportObjectFactory.makeObject(SaslTransportObjectFactory.java:31)
	at org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:1220)
	at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransportFactory.pingServersIgnoreException(TcpTransportFactory.java:179)
	at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransportFactory.start(TcpTransportFactory.java:157)
	at org.infinispan.client.hotrod.RemoteCacheManager.start(RemoteCacheManager.java:529)
	at org.infinispan.client.hotrod.RemoteCacheManager.<init>(RemoteCacheManager.java:183)
	at org.infinispan.jcache.remote.JCacheManager.<init>(JCacheManager.java:44)
	at org.infinispan.jcache.remote.JCachingProvider.createCacheManager(JCachingProvider.java:35)
	at org.infinispan.jcache.AbstractJCachingProvider.getCacheManager(AbstractJCachingProvider.java:67)
	at org.infinispan.jcache.AbstractJCachingProvider.getCacheManager(AbstractJCachingProvider.java:80)
	at org.infinispan.jcache.AbstractJCachingProvider.getCacheManager(AbstractJCachingProvider.java:95)
	at mkes.test.distcaches.performance.test.RemoteJCacheTesterFlatsts.main(RemoteJCacheTesterFlatsts.java:32)


Version-Release number of selected component (if applicable):
HotRod Client : JDG 6.6
JDG server    : JDG 7.0.0

How reproducible:
Client is JDG6 run with Java7 or Java6
Server run with Java8

Comment 4 Red Hat Bugzilla 2025-02-10 03:49:07 UTC
This product has been discontinued or is no longer tracked in Red Hat Bugzilla.