Installer classloader descends into share/rrd (probably crawls all of opennms.home)

Description

I've noticed that, on a particular system with nearly 11,000 directories under share/rrd/snmp, the installer seems to take forever to run; so much so that I typically just break out once it's done the library checks since there are no applicable schema changes.

Today I decided to do a thread dump to see what it's up to. Turns out it's in java.io.File.listFiles() six levels of recursion deep from org.opennms.install.Installer.install() (line 246). Sorry, I lost the clipboard of the trace; should be easy to reproduce so hit me up if you need it. I broke out, removed the symlink (share -> /var/opennms/rrd), ran the installer again, and it quickly completed successfully. Yes, I put the symlink back

I think this method is descending the whole OPENNMS_HOME tree when it's meant to stay under OPENNMS_HOME/lib.

Environment

Any system with a shedload of RRD files in OPENNMS_HOME/share/rrd :)

Acceptance / Success Criteria

None

Lucidchart Diagrams

Activity

Show:

Ken Eshelby May 21, 2012 at 12:35 PM

I ran into a hefty delay on a 10.3 snapshot update during the install script and also have a shedload of rrd directories. Will try the symlink removal trick on the full 10.3 release.

Duplicate

Details

Assignee

Reporter

Components

Affects versions

Priority

PagerDuty

Created May 20, 2012 at 7:50 PM
Updated November 25, 2013 at 11:50 PM
Resolved November 25, 2013 at 11:50 PM