[jboss-user] [JBoss Messaging] - StackOverflowError while deleting Expired MSG

Markus Lutum do-not-reply at jboss.com
Wed Jul 13 08:08:39 EDT 2011


Markus Lutum [http://community.jboss.org/people/mclu] created the discussion

"StackOverflowError while deleting Expired MSG"

To view the discussion, visit: http://community.jboss.org/message/614879#614879

--------------------------------------------------------------
Hi out there.
We have issues with a client which uses JBM.

We get a StackOverflowError while the server is restarted.
I think this has somethink to do with deleting of Expired Messages if there is no expiry queue...

Environment:
Oracle, JBoss 4.2.3 with JBM 1.4.5 on a solaris system. see below..

12:28:47,521 INFO  [APP.DbManager] Database Product Name= Oracle
12:28:47,521 INFO  [APP.DbManager] Database Product Version= Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining Scoring Engine and Real Application Testing options
12:28:47,521 INFO  [APP.DbManager] JDBC Driver Name= Oracle JDBC driver
12:28:47,521 INFO  [APP.DbManager] JDBC Driver Version= 11.1.0.6.0-Production+
12:28:47,521 INFO  [APP.DbManager] JDBC Driver supports batch updates
12:28:47,960 INFO  [org.jboss.jms.server.ServerPeer] JBoss Messaging 1.4.5.GA server [1] started
12:28:48,504 INFO  [org.jboss.jms.server.connectionfactory.ConnectionFactory] Connector sslbisocket://OURSYSTEMURL:4457 has leasing enabled, lease period 10000 milliseconds
12:28:48,504 INFO  [org.jboss.jms.server.connectionfactory.ConnectionFactory] org.jboss.jms.server.connectionfactory.ConnectionFactory at 14fe17 started
....

Then a lot of msg are removed:
....
12:29:35,506 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380028172599583]:RELIABLE
12:29:35,568 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380028172763424]:RELIABLE
12:29:35,582 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380028172960033]:RELIABLE
12:29:35,594 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380028173091106]:RELIABLE
12:29:35,608 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380028173287715]:RELIABLE
12:29:35,616 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380028173451556]:RELIABLE
.... cuttet some ....
12:29:36,825 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380909924778400]:RELIABLE
12:29:36,834 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380911717908897]:RELIABLE
12:29:36,843 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380912000729506]:RELIABLE  *<<<<------------------   this one is mentioned below*
12:29:36,854 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380914197332387]:RELIABLE
12:29:36,864 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380914815435172]:RELIABLE
12:29:36,876 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380915428000165]:RELIABLE
12:29:36,885 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380998091964838]:RELIABLE
12:29:36,894 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23380998143345063]:RELIABLE
12:29:36,902 WARN  [org.jboss.jms.server.endpoint.ServerSessionEndpoint] No expiry queue has been configured so removing expired Reference[23381029873287592]:RELIABLE
12:29:36,916 ERROR [org.jboss.messaging.core.impl.RoundRobinDistributor] The receiver ConsumerEndpoint[w1-1eje52qg-1-av4d52qg-nuauxy-vv5n4e4] is broken
12:29:36,917 ERROR [org.jboss.messaging.core.impl.ChannelSupport] Queue[12748390/1/2-notifications_mediumretry] Failed to deliver
12:29:36,918 ERROR [org.jboss.jms.server.endpoint.ServerConsumerEndpoint] Failed to expire delivery: Delivery[Reference[23380912000729506]:RELIABLE]
java.lang.StackOverflowError
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    at org.apache.log4j.spi.ThrowableInformation.getThrowableStrRep(ThrowableInformation.java:58)
    at org.apache.log4j.spi.LoggingEvent.getThrowableStrRep(LoggingEvent.java:342)
    at org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:304)
    at org.apache.log4j.DailyRollingFileAppender.subAppend(DailyRollingFileAppender.java:358)
    at org.apache.log4j.WriterAppender.append(WriterAppender.java:159)
    at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:230)
    at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:65)
    at org.apache.log4j.Category.callAppenders(Category.java:203)
    at org.apache.log4j.Category.forcedLog(Category.java:388)
    at org.apache.log4j.Category.log(Category.java:853)
    at org.jboss.logging.Log4jLoggerPlugin.error(Log4jLoggerPlugin.java:206)
    at org.jboss.logging.Logger.error(Logger.java:234)
    at org.jboss.messaging.core.impl.ChannelSupport.deliverInternal(ChannelSupport.java:747)
    at org.jboss.messaging.core.impl.MessagingQueue.deliverInternal(MessagingQueue.java:506)
    at org.jboss.messaging.core.impl.ChannelSupport.acknowledgeInternal(ChannelSupport.java:844)
    at org.jboss.messaging.core.impl.ChannelSupport.acknowledge(ChannelSupport.java:290)
    at org.jboss.messaging.core.impl.SimpleDelivery.acknowledge(SimpleDelivery.java:103)
    at org.jboss.jms.server.endpoint.ServerSessionEndpoint.expireDelivery(ServerSessionEndpoint.java:1109)
    at org.jboss.jms.server.endpoint.ServerConsumerEndpoint.handle(ServerConsumerEndpoint.java:236)
    at org.jboss.messaging.core.impl.RoundRobinDistributor.handle(RoundRobinDistributor.java:119)
    at org.jboss.messaging.core.impl.MessagingQueue$DistributorWrapper.handle(MessagingQueue.java:583)
    at org.jboss.messaging.core.impl.ClusterRoundRobinDistributor.handle(ClusterRoundRobinDistributor.java:79)
    at org.jboss.messaging.core.impl.ChannelSupport.deliverInternal(ChannelSupport.java:665)
    at org.jboss.messaging.core.impl.MessagingQueue.deliverInternal(MessagingQueue.java:506)
    at org.jboss.messaging.core.impl.ChannelSupport.acknowledgeInternal(ChannelSupport.java:844)
    at org.jboss.messaging.core.impl.ChannelSupport.acknowledge(ChannelSupport.java:290)
    at org.jboss.messaging.core.impl.SimpleDelivery.acknowledge(SimpleDelivery.java:103)
    at org.jboss.jms.server.endpoint.ServerSessionEndpoint.expireDelivery(ServerSessionEndpoint.java:1109)
    at org.jboss.jms.server.endpoint.ServerConsumerEndpoint.handle(ServerConsumerEndpoint.java:236)
    at org.jboss.messaging.core.impl.RoundRobinDistributor.handle(RoundRobinDistributor.java:119)
    at org.jboss.messaging.core.impl.MessagingQueue$DistributorWrapper.handle(MessagingQueue.java:583)
    at org.jboss.messaging.core.impl.ClusterRoundRobinDistributor.handle(ClusterRoundRobinDistributor.java:79)
    at org.jboss.messaging.core.impl.ChannelSupport.deliverInternal(ChannelSupport.java:665)
    at org.jboss.messaging.core.impl.MessagingQueue.deliverInternal(MessagingQueue.java:506)
    at org.jboss.messaging.core.impl.ChannelSupport.acknowledgeInternal(ChannelSupport.java:844)
    at org.jboss.messaging.core.impl.ChannelSupport.acknowledge(ChannelSupport.java:290)
    at org.jboss.messaging.core.impl.SimpleDelivery.acknowledge(SimpleDelivery.java:103)
    at org.jboss.jms.server.endpoint.ServerSessionEndpoint.expireDelivery(ServerSessionEndpoint.java:1109)
....

Any Idea what we can do about it?
Does it help to configure an expiry queue?
Is this a known issue?

Greets 
Markus Lutum
--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/614879#614879]

Start a new discussion in JBoss Messaging at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2042]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20110713/a0caeaca/attachment-0001.html 


More information about the jboss-user mailing list