SyslogTest.canReceiveSyslogMessages() failed with AMQ classloader error

Description

I saw a failure in SyslogTest.canReceiveSyslogMessages() at appears to be a race condition while refreshing the bundles on startup of the Minion container:

Exception in thread "ActiveMQ InactivityMonitor WriteCheckTimer" java.lang.NoClassDefFoundError: org/apache/activemq/transport/AbstractInactivityMonitor$3 at org.apache.activemq.transport.AbstractInactivityMonitor.writeCheck(AbstractInactivityMonitor.java:158) at org.apache.activemq.transport.AbstractInactivityMonitor$2.run(AbstractInactivityMonitor.java:122) at org.apache.activemq.thread.SchedulerTimerTask.run(SchedulerTimerTask.java:33) at java.util.TimerThread.mainLoop(Timer.java:555) at java.util.TimerThread.run(Timer.java:505) Caused by: java.lang.ClassNotFoundException: Unable to load class 'org.apache.activemq.transport.AbstractInactivityMonitor$3' because the bundle wiring for org.apache.activemq.activemq-osgi is no longer valid. at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1539) at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:79) at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:2018) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 5 more

This might be caused because we aren't shutting down ActiveMQ completely whenever the blueprint contexts refresh. I'll check on this behavior.

The inactivity timers might also be involved in bug https://opennms.atlassian.net/browse/NMS-8714#icft=NMS-8714.

Acceptance / Success Criteria

None

Lucidchart Diagrams

Activity

Seth Leger January 17, 2017 at 8:40 PM

Gonna mark this as fixed since I think it was resolved by refreshing the bundles fewer times on startup.

Seth Leger December 5, 2016 at 3:23 PM

I haven't seen this particular error in a while and it is likely less of an issue since Jesse changed the Karaf extender so that bundles are only refreshed once instead of multiple times when the Minion starts up. Reducing priority.

Seth Leger October 4, 2016 at 6:44 PM

Occurred again on Bamboo today.

Fixed

Details

Assignee

Reporter

Components

Fix versions

Affects versions

Priority

PagerDuty

Created October 2, 2016 at 5:42 PM
Updated January 17, 2017 at 8:40 PM
Resolved January 17, 2017 at 8:40 PM

Flag notifications