Michal, here are the logs from the scenario where there is an idle Hotrod connection, with an eviction thread running.  You can see that there have been 76 sockets created:
 
[Timer-0] TRACE [TransportObjectFactory.makeObject() 59] - Created tcp transport: TcpTransport{socket=Socket[addr=cache.dev.norcal.pgilab.net/10.81.224.166,port=11222,localport=48987], serverAddress=cache.dev.norcal.pgilab.net/10.81.224.166:11222, id =5}
 
Opened socket channel by thread:Timer-0 on Fri Aug 30 14:58:48 UTC 2013
  at sun.nio.ch.SocketChannelImpl.<init>(Unknown Source)
  at sun.nio.ch.SelectorProviderImpl.openSocketChannel(Unknown Source)
  at java.nio.channels.SocketChannel.open(Unknown Source)
  at org.infinispan.client.hotrod.impl.transport.tcp.TcpTransport.<init>(TcpTransport.java:84)
  at org.infinispan.client.hotrod.impl.transport.tcp.TransportObjectFactory.makeObject(TransportObjectFactory.java:57)
  at org.infinispan.client.hotrod.impl.transport.tcp.TransportObjectFactory.makeObject(TransportObjectFactory.java:38)
  at org.apache.commons.pool.impl.GenericKeyedObjectPool.addObject(GenericKeyedObjectPool.java:1729)
  at org.apache.commons.pool.impl.GenericKeyedObjectPool.ensureMinIdle(GenericKeyedObjectPool.java:2095)
  at org.apache.commons.pool.impl.GenericKeyedObjectPool.ensureMinIdle(GenericKeyedObjectPool.java:2060)
  at org.apache.commons.pool.impl.GenericKeyedObjectPool.access$1600(GenericKeyedObjectPool.java:204)
  at org.apache.commons.pool.impl.GenericKeyedObjectPool$Evictor.run(GenericKeyedObjectPool.java:2360)
  at java.util.TimerThread.mainLoop(Unknown Source)
  at java.util.TimerThread.run(Unknown Source)
 
but do destroy transport.  You can also see that this is occurring twice every 2 mins:
 
Line 198: 2013-08-30 14:58:48,486 [Timer-0] TRACE [TransportObjectFactory.makeObject() 59] - Created tcp transport: TcpTransport{socket=Socket[addr=cache.dev.norcal.pgilab.net/10.81.224.166,port=11222,localport=48987], serverAddress=cache.dev.norcal.pgilab.net/10.81.224.166:11222, id =5}
Line 202: 2013-08-30 14:58:49,008 [Timer-0] TRACE [TransportObjectFactory.makeObject() 59] - Created tcp transport: TcpTransport{socket=Socket[addr=cache.dev.norcal.pgilab.net/10.81.224.166,port=11222,localport=48988], serverAddress=cache.dev.norcal.pgilab.net/10.81.224.166:11222, id =6}
Line 238: 2013-08-30 15:00:48,467 [Timer-0] TRACE [TransportObjectFactory.makeObject() 59] - Created tcp transport: TcpTransport{socket=Socket[addr=cache.dev.norcal.pgilab.net/10.81.224.166,port=11222,localport=48996], serverAddress=cache.dev.norcal.pgilab.net/10.81.224.166:11222, id =7}
Line 242: 2013-08-30 15:00:49,008 [Timer-0] TRACE [TransportObjectFactory.makeObject() 59] - Created tcp transport: TcpTransport{socket=Socket[addr=cache.dev.norcal.pgilab.net/10.81.224.166,port=11222,localport=48997], serverAddress=cache.dev.norcal.pgilab.net/10.81.224.166:11222, id =8}
Line 279: 2013-08-30 15:02:48,474 [Timer-0] TRACE [TransportObjectFactory.makeObject() 59] - Created tcp transport: TcpTransport{socket=Socket[addr=cache.dev.norcal.pgilab.net/10.81.224.166,port=11222,localport=49005], serverAddress=cache.dev.norcal.pgilab.net/10.81.224.166:11222, id =9}
Line 283: 2013-08-30 15:02:49,008 [Timer-0] TRACE [TransportObjectFactory.makeObject() 59] - Created tcp transport: TcpTransport{socket=Socket[addr=cache.dev.norcal.pgilab.net/10.81.224.166,port=11222,localport=49006], serverAddress=cache.dev.norcal.pgilab.net/10.81.224.166:11222, id =10}
 
The application is creating a hotrod connection as shown in an earlier post.  We actually create connections to multiple remote caches:
 
2013-08-30 14:56:49,087 [main] INFO  [DatabaseCacheManager$RemoteCacheContainer.getRemoteCache() 87] - Connected to RemoteCache PropertiesCache
2013-08-30 14:56:49,090 [main] INFO  [DatabaseCacheManager$RemoteCacheContainer.getRemoteCache() 87] - Connected to RemoteCache ReservationCache
2013-08-30 14:56:49,093 [main] INFO  [DatabaseCacheManager$RemoteCacheContainer.getRemoteCache() 87] - Connected to RemoteCache PhoneGroupProductCache
2013-08-30 14:56:49,095 [main] INFO  [DatabaseCacheManager$RemoteCacheContainer.getRemoteCache() 87] - Connected to RemoteCache PasscodeCache
2013-08-30 14:56:49,098 [main] INFO  [DatabaseCacheManager$RemoteCacheContainer.getRemoteCache() 87] - Connected to RemoteCache DeviceCache
2013-08-30 14:56:49,100 [main] INFO  [DatabaseCacheManager$RemoteCacheContainer.getRemoteCache() 87] - Connected to RemoteCache CallBrandingCache
2013-08-30 14:56:49,126 [main] INFO  [DatabaseCacheManager$RemoteCacheContainer.getRemoteCache() 87] - Connected to RemoteCache CallBrandingLookupCache
 
All this application is doing is getting properties from the PropertiesCache, and then there is no further application communication with hotrod, though the connection remains active.
 
Let me know if you need any further information.
 
Mitchell