I encountered the same issue, but the context is totally different:
- JBoss 3.2.5, Windows 2000 SP4, 1GB RAM memory
- JBoss is configured with 256MB of memory
- number of concurrent JMS messages are not more than 50
- consumers are MDB's
The following log sequence is repeating itself until OutOfMemoryError is generated (I will post about 5 of these log cycles):
2005-01-11 17:09:02,937 DEBUG [org.jboss.mq.referenceable.SpyConnectionFactoryObjectFactory] Extracting SpyConnectionFactory from reference
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.referenceable.SpyConnectionFactoryObjectFactory] The GenericConnectionFactory is: GenericConnectionFactory[server=org.jboss.mq.il.uil2.UILServerIL@14c72c8 connectionProperties={UIL_ADDRESS_KEY=192.168.3.92, UIL_CHUNKSIZE_KEY=1000000, UIL_TCPNODELAY_KEY=yes, ClientILService=org.jboss.mq.il.uil2.UILClientILService, UIL_PORT_KEY=8093, UIL_BUFFERSIZE_KEY=2048, PingPeriod=60000}]
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Exiting on IOE
java.net.SocketException: socket closed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:183)
at java.io.BufferedInputStream.read(BufferedInputStream.java:201)
at org.jboss.util.stream.NotifyingBufferedInputStream.read(NotifyingBufferedInputStream.java:67)
at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2133)
at java.io.ObjectInputStream$BlockDataInputStream.readBlockHeader(ObjectInputStream.java:2313)
at java.io.ObjectInputStream$BlockDataInputStream.refill(ObjectInputStream.java:2380)
at java.io.ObjectInputStream$BlockDataInputStream.read(ObjectInputStream.java:2452)
at java.io.ObjectInputStream$BlockDataInputStream.readByte(ObjectInputStream.java:2601)
at java.io.ObjectInputStream.readByte(ObjectInputStream.java:845)
at org.jboss.mq.il.uil2.SocketManager$ReadTask.run(SocketManager.java:279)
at java.lang.Thread.run(Thread.java:534)
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
2005-01-11 17:09:02,953 DEBUG [org.jboss.mq.il.uil2.UILClientILService] Starting
2005-01-11 17:09:02,968 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Setting up the UILClientIL Connection
2005-01-11 17:09:02,968 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] The UILClientIL Connection is set up
2005-01-11 17:09:02,968 DEBUG [org.jboss.mq.referenceable.SpyDestinationObjectFactory] SpyDestinationObjectFactory->getObjectInstance()
2005-01-11 17:09:02,968 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run
2005-01-11 17:09:02,968 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run
2005-01-11 17:09:02,968 DEBUG [org.jboss.mq.il.uil2.UILClientILService] Stopping
2005-01-11 17:09:02,968 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Exiting on IOE
java.net.SocketException: socket closed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:183)
at java.io.BufferedInputStream.read(BufferedInputStream.java:201)
at org.jboss.util.stream.NotifyingBufferedInputStream.read(NotifyingBufferedInputStream.java:67)
at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2133)
at java.io.ObjectInputStream$BlockDataInputStream.readBlockHeader(ObjectInputStream.java:2313)
at java.io.ObjectInputStream$BlockDataInputStream.refill(ObjectInputStream.java:2380)
at java.io.ObjectInputStream$BlockDataInputStream.read(ObjectInputStream.java:2452)
at java.io.ObjectInputStream$BlockDataInputStream.readByte(ObjectInputStream.java:2601)
at java.io.ObjectInputStream.readByte(ObjectInputStream.java:845)
at org.jboss.mq.il.uil2.SocketManager$ReadTask.run(SocketManager.java:279)
at java.lang.Thread.run(Thread.java:534)
2005-01-11 17:09:02,968 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run
2005-01-11 17:09:02,984 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.referenceable.SpyConnectionFactoryObjectFactory] Extracting SpyConnectionFactory from reference
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.referenceable.SpyConnectionFactoryObjectFactory] The GenericConnectionFactory is: GenericConnectionFactory[server=org.jboss.mq.il.uil2.UILServerIL@17a95c6 connectionProperties={UIL_ADDRESS_KEY=192.168.3.92, UIL_CHUNKSIZE_KEY=1000000, UIL_TCPNODELAY_KEY=yes, ClientILService=org.jboss.mq.il.uil2.UILClientILService, UIL_PORT_KEY=8093, UIL_BUFFERSIZE_KEY=2048, PingPeriod=60000}]
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.il.uil2.UILClientILService] Starting
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Setting up the UILClientIL Connection
2005-01-11 17:09:03,015 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] The UILClientIL Connection is set up
2005-01-11 17:09:03,031 DEBUG [org.jboss.mq.referenceable.SpyDestinationObjectFactory] SpyDestinationObjectFactory->getObjectInstance()
2005-01-11 17:09:03,031 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run
2005-01-11 17:09:03,031 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run
2005-01-11 17:09:03,031 DEBUG [org.jboss.mq.il.uil2.UILClientILService] Stopping
2005-01-11 17:09:03,031 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Exiting on IOE
java.net.SocketException: socket closed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:183)
at java.io.BufferedInputStream.read(BufferedInputStream.java:201)
at org.jboss.util.stream.NotifyingBufferedInputStream.read(NotifyingBufferedInputStream.java:67)
at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2133)
at java.io.ObjectInputStream$BlockDataInputStream.readBlockHeader(ObjectInputStream.java:2313)
at java.io.ObjectInputStream$BlockDataInputStream.refill(ObjectInputStream.java:2380)
at java.io.ObjectInputStream$BlockDataInputStream.read(ObjectInputStream.java:2452)
at java.io.ObjectInputStream$BlockDataInputStream.readByte(ObjectInputStream.java:2601)
at java.io.ObjectInputStream.readByte(ObjectInputStream.java:845)
at org.jboss.mq.il.uil2.SocketManager$ReadTask.run(SocketManager.java:279)
at java.lang.Thread.run(Thread.java:534)
2005-01-11 17:09:03,031 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run
2005-01-11 17:09:03,031 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run
2005-01-11 17:09:03,078 DEBUG [org.jboss.mq.referenceable.SpyConnectionFactoryObjectFactory] Extracting SpyConnectionFactory from reference
2005-01-11 17:09:03,078 DEBUG [org.jboss.mq.referenceable.SpyConnectionFactoryObjectFactory] The GenericConnectionFactory is: GenericConnectionFactory[server=org.jboss.mq.il.uil2.UILServerIL@d4aaf6 connectionProperties={UIL_ADDRESS_KEY=192.168.3.92, UIL_CHUNKSIZE_KEY=1000000, UIL_TCPNODELAY_KEY=yes, ClientILService=org.jboss.mq.il.uil2.UILClientILService, UIL_PORT_KEY=8093, UIL_BUFFERSIZE_KEY=2048, PingPeriod=60000}]
2005-01-11 17:09:03,078 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
2005-01-11 17:09:03,078 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
2005-01-11 17:09:03,078 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
2005-01-11 17:09:03,078 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
2005-01-11 17:09:03,078 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
2005-01-11 17:09:03,078 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
2005-01-11 17:09:03,078 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
2005-01-11 17:09:03,078 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
2005-01-11 17:09:03,093 DEBUG [org.jboss.mq.il.uil2.UILClientILService] Starting
2005-01-11 17:09:03,093 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Setting up the UILClientIL Connection
2005-01-11 17:09:03,093 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] The UILClientIL Connection is set up
2005-01-11 17:09:03,093 DEBUG [org.jboss.mq.referenceable.SpyDestinationObjectFactory] SpyDestinationObjectFactory->getObjectInstance()
2005-01-11 17:09:03,093 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Exiting on IOE
java.io.EOFException
at java.io.ObjectInputStream$BlockDataInputStream.readByte(ObjectInputStream.java:2603)
at java.io.ObjectInputStream.readByte(ObjectInputStream.java:845)
at org.jboss.mq.il.uil2.SocketManager$ReadTask.run(SocketManager.java:279)
at java.lang.Thread.run(Thread.java:534)
2005-01-11 17:09:03,093 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run
2005-01-11 17:09:03,093 DEBUG [org.jboss.mq.il.uil2.UILClientILService] Stopping
2005-01-11 17:09:03,093 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run
2005-01-11 17:09:03,109 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run
2005-01-11 17:09:03,109 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.referenceable.SpyConnectionFactoryObjectFactory] Extracting SpyConnectionFactory from reference
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.referenceable.SpyConnectionFactoryObjectFactory] The GenericConnectionFactory is: GenericConnectionFactory[server=org.jboss.mq.il.uil2.UILServerIL@fcc6e8 connectionProperties={UIL_ADDRESS_KEY=192.168.3.92, UIL_CHUNKSIZE_KEY=1000000, UIL_TCPNODELAY_KEY=yes, ClientILService=org.jboss.mq.il.uil2.UILClientILService, UIL_PORT_KEY=8093, UIL_BUFFERSIZE_KEY=2048, PingPeriod=60000}]
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin ReadTask.run
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.il.uil2.SocketManager] Begin WriteTask.run
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectOutputStream
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.il.uil2.SocketManager] Created ObjectInputStream
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.il.uil2.UILClientILService] Starting
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Setting up the UILClientIL Connection
2005-01-11 17:09:03,140 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] The UILClientIL Connection is set up
2005-01-11 17:09:03,156 DEBUG [org.jboss.mq.referenceable.SpyDestinationObjectFactory] SpyDestinationObjectFactory->getObjectInstance()
2005-01-11 17:09:03,156 DEBUG [org.jboss.mq.il.uil2.SocketManager] Exiting on unexpected error in read task
java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start(Native Method)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor.addThread(PooledExecutor.java:520)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor.execute(PooledExecutor.java:880)
at org.jboss.mq.il.uil2.SocketManager$ReadTask.run(SocketManager.java:296)
at java.lang.Thread.run(Thread.java:534)
2005-01-11 17:09:03,156 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run
2005-01-11 17:09:03,156 DEBUG [org.jboss.mq.il.uil2.ServerSocketManagerHandler] Exiting on IOE
java.io.EOFException
at java.io.ObjectInputStream$BlockDataInputStream.readByte(ObjectInputStream.java:2603)
at java.io.ObjectInputStream.readByte(ObjectInputStream.java:845)
at org.jboss.mq.il.uil2.SocketManager$ReadTask.run(SocketManager.java:279)
at java.lang.Thread.run(Thread.java:534)
2005-01-11 17:09:03,156 DEBUG [org.jboss.mq.il.uil2.SocketManager] End ReadTask.run
2005-01-11 17:09:03,156 DEBUG [org.jboss.mq.il.uil2.UILClientILService] Stopping
2005-01-11 17:09:03,156 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run
2005-01-11 17:09:03,171 DEBUG [org.jboss.mq.il.uil2.SocketManager] End WriteTask.run