[ https://issues.apache.org/activemq/browse/AMQ-528?page=all ]
Hiram Chirino updated AMQ-528: ------------------------------ Fix Version/s: 4.0.3 (was: 4.0.2) > 4.0 M4 NullPointerException while shutting down > ----------------------------------------------- > > Key: AMQ-528 > URL: https://issues.apache.org/activemq/browse/AMQ-528 > Project: ActiveMQ > Issue Type: Bug > Affects Versions: 4.0 > Environment: RedHat Linux Enterprise Server 3, Tomcat 5.5.15, MySQL > 5.0.18 for Linux > Reporter: Leon Hu > Priority: Critical > Fix For: 4.0.3, 4.1 > > > Setup: > 3 networked brokers, B1, B2, and B3, on 3 servers, connected using multicast > discovery. activemq.xml: > <broker useJmx="false" brokerName="B1"> > > <persistenceAdapter> > <journaledJDBC journalLogFiles="5" dataDirectory="foo" > dataSource="#mysql-ds"/> > </persistenceAdapter> > > <transportConnectors> > <transportConnector uri="tcp://localhost:61616" > discoveryUri="multicast://default"/> > </transportConnectors> > > <networkConnectors> > <networkConnector uri="multicast://default"/> > </networkConnectors> > > </broker> > > <bean id="mysql-ds" class="org.apache.commons.dbcp.BasicDataSource" > destroy-method="close"> > <property name="driverClassName" value="com.mysql.jdbc.Driver"/> > <property name="url" > value="jdbc:mysql://localhost/activemq?relaxAutoCommit=true"/> > <property name="username" value="activemqUser"/> > <property name="password" value="activemqPwd"/> > <property name="poolPreparedStatements" value="true"/> > </bean> > Similar for B2 and B3. > Two queues: Q1 and Q2. > Two producers, one for each queue, both producers connected to B1. > One Q1 cosumer connected to B1, another Q1 consumer on B2. > One Q2 consumer connected to B2, another Q2 consumer connected to B3. > Steps: > Start the brokers and start sending messages to the queue. > After a while, stop the brokers (Sequence does not matter) > See the errors in catalina.out of the Tomcat that has a broker with both > producers and consumers connected > The problems: > 1. > Exception in thread "ActiveMQ Scheduler" java.lang.NullPointerException > at > edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils$SunPerfProvider.nanoTime(Utils.java:219) > at > edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils.nanoTime(Utils.java:99) > at > edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor.now(ScheduledThreadPoolExecutor.java:88) > at > edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.getDelay(ScheduledThreadPoolExecutor.java:137) > Exception in thread "ActiveMQ Scheduler" Exception in thread "ActiveMQ > Scheduler" Exception in thread "ActiveMQ Scheduler" at > edu.emory.mathcs.backport.java.util.concurrent.DelayQueue.take(DelayQueue.java:154) > at > edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470) > at > edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:667) > at java.lang.Thread.run(Thread.java:595) > java.lang.NullPointerException > at > edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils$SunPerfProvider.nanoTime(Utils.java:219) > Exception in thread "ActiveMQ Scheduler" Exception in thread "ActiveMQ > Scheduler" Exception in thread "ActiveMQ Scheduler" at > edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils.nanoTime(Utils.java:99) > at > edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor.now(ScheduledThreadPoolExecutor.java:88) > at > edu.emory.mathcs.backport.java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.getDelay(ScheduledThreadPoolExecutor.java:137) > at > edu.emory.mathcs.backport.java.util.concurrent.DelayQueue.take(DelayQueue.java:154) > at > edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470) > Exception in thread "ActiveMQ Scheduler" Exception in thread "ActiveMQ > Scheduler" at > edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:667) > at java.lang.Thread.run(Thread.java:595) > 2. The same exception is logged to the log file (in my case catalina.out) for > hundreds of times, resulting a log file exceeding 150 MB in 2 minutes. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/activemq/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira