[jira] Commented: (AMQ-528) 4.0 M4 NullPointerException while shutting down
[ https://issues.apache.org/activemq/browse/AMQ-528?page=comments#action_36465 ] will gunadi commented on AMQ-528: - Holger wrote: So it seems a proper shutdown of the Executor will solve this. Is this something that can be done from the application code? or do I have to wait for the new version of the backport-*.jar? what's the ETA if I may ask? I tried to use the backport MillisProvider but I can't get the JVM to see the class (ClassNotFoundException) no matter where i put the backport*.jar file (I even tried it in tomcat's /shared/lib and it still can't find the class). Yet the class is there, albeit it looks like an inner class (??) Until Sun releases the next jvm after 1.5_06 for Linux, I don't have any other JVM to go to. 4.0 M4 NullPointerException while shutting down --- Key: AMQ-528 URL: https://issues.apache.org/activemq/browse/AMQ-528 Project: ActiveMQ Type: Bug Versions: 4.0 M4 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 RC2 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
[jira] Reopened: (AMQ-528) 4.0 M4 NullPointerException while shutting down
[ https://issues.apache.org/activemq/browse/AMQ-528?page=all ] will gunadi reopened AMQ-528: - Using: - backport-util-concurrent-2.1.jar activemq-core-4.0.jar activemq-ra-4.0.jar jencks-all-1.1.3.jar broker.xml: --- ?xml version=1.0 encoding=UTF-8? beans xmlns=http://activemq.org/config/1.0; bean class=org.springframework.beans.factory.config.PropertyPlaceholderConfigurer/ broker useJmx=false persistent=false !-- persistenceAdapter journaledJDBC journalLogFiles=5 dataDirectory=foo/ /persistenceAdapter -- transportConnectors transportConnector uri=tcp://localhost:51616/ /transportConnectors /broker /beans Exception when shutting down tomcat: [EMAIL PROTECTED]:~/dev/env/apache-tomcat-5.5.15/bin$ ./shutdown.sh Using CATALINA_BASE: /home/tomcat/dev/env/apache-tomcat-5.5.15 Using CATALINA_HOME: /home/tomcat/dev/env/apache-tomcat-5.5.15 Using CATALINA_TMPDIR: /home/tomcat/dev/env/apache-tomcat-5.5.15/temp Using JRE_HOME: /usr/lib/j2sdk1.5-sun Jun 22, 2006 4:53:19 PM org.apache.coyote.http11.Http11BaseProtocol pause INFO: Pausing Coyote HTTP/1.1 on http-8080 [EMAIL PROTECTED]:~/dev/env/apache-tomcat-5.5.15/bin$ Jun 22, 2006 4:53:20 PM org.a pache.catalina.core.StandardService stop INFO: Stopping service Catalina Jun 22, 2006 4:53:22 PM org.apache.coyote.http11.Http11BaseProtocol destroy INFO: Stopping Coyote HTTP/1.1 on http-8080 Jun 22, 2006 4:53:22 PM org.apache.catalina.core.AprLifecycleListener lifecycleE vent INFO: Failed shutdown of Apache Portable Runtime Exception in thread AcitveMQ Connection Worker: tcp://localhost/127.0.0.1:51616 Exception in thread AcitveMQ Connection Worker: tcp://localhost/127.0.0.1:516 16 java.lang.NullPointerException at edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils$SunPerfP rovider.nanoTime(Utils.java:223) Exception in thread AcitveMQ Connection Worker: tcp://localhost/127.0.0.1:51616 at edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils.nanoTime (Utils.java:103) at edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue.po ll(LinkedBlockingQueue.java:336) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.get Task(ThreadPoolExecutor.java:482) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor ker.run(ThreadPoolExecutor.java:674) Exception in thread AcitveMQ Connection Worker: tcp://localhost/127.0.0.1:51616 at java.lang.Thread.run(Thread.java:595) java.lang.NullPointerException at edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils$SunPerfP rovider.nanoTime(Utils.java:223) at edu.emory.mathcs.backport.java.util.concurrent.helpers.Utils.nanoTime (Utils.java:103) Exception in thread AcitveMQ Connection Worker: tcp://localhost/127.0.0.1:51616 at edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue.po ll(LinkedBlockingQueue.java:336) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.get Task(ThreadPoolExecutor.java:482) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Wor 4.0 M4 NullPointerException while shutting down --- Key: AMQ-528 URL: https://issues.apache.org/activemq/browse/AMQ-528 Project: ActiveMQ Type: Bug Versions: 4.0 M4 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 RC2 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