[opennms-devel] OpenNMS 1.14+ on FreeBSD 8, 9, 10, 11

Paul Pathiakis ppathiakis at atlantisservices.net
Tue Mar 31 01:48:53 UTC 2015


Seth,

THANK YOU!

I needed to know that.  However, when did this all change?  (I know, I 
could read the RELEASE NOTES etc, but it's easier is someone who knows 
just tells me. :-)  )  Here's the thing, I was trying to get OpenNMS 
1.14 working with all the versions of JDK and they all failed on FreeBSD.

I assume the advanced features continued to be implemented from 1.10 to 
1.14.  Now, I can at least get some idea of where to start.  I might be 
able to track this down to things that were implemented in a certain 
version from 1.10 to 1.14.

I don't know how long I'll be able to use openjdk6 before having to go 
to openjdk7 on 1.1x, but at least it's a start. Like I said, I'm more 
than willing to help assist in this.

Do you think that I should be able to use openjdk7 from 1.10 going 
forward?  Is JDK 1.7 backward compatible with everything in 1.6?  If so, 
I should just start 1.7 on OpenNMS 1.10 and go forward from there.  Is 
that a good plan?

On 03/30/2015 19:42, Seth Leger wrote:
> Hi Paul,
>
> One thing to keep in mind is that the JVM standard has changed 
> drastically since OpenNMS 1.10 was released. OpenNMS 1.10 running on 
> JDK 6 is a very different ecosystem than OpenNMS 15. OpenNMS 15 uses a 
> variety of modern JVM features that require us to use JDK 7. Our 
> dependencies exercise advanced JVM features such as dynamic proxy 
> generation and bytecode manipulation. We have an entire OSGi plugin 
> framework embedded inside our system now that didn't exist in OpenNMS 
> 1.10.
>
> For this reason, we rely on some of the newest, least-tested code in 
> the JVM in some cases. JVM code can and does have bugs that can cause 
> crashes. I ran into a case today where the JAXB implementation in 
> Oracle's JDK7 on Linux would not run some of our topology code correctly.
>
> As Ben noted, our code is written in Java and as far as we can tell, 
> the bytecode that is compiled by javac conforms properly to the Java 
> bytecode standards (as you would trust any compiler to do). If you 
> have valid bytecode, than any further crash in the JVM is, as Ben 
> noted, a JVM issue.
>
> -- Seth
>
>
> On 3/30/15 6:02 PM, Paul Pathiakis wrote:
>>
>> On 03/30/2015 11:56, Benjamin Reed wrote:
>>> On 3/28/15 3:06 PM, Paul Pathiakis wrote:
>>>> Openjdk crashes almost
>>>> immediately while the linux java continues for a longer duration but
>>>> also crashes.
>>> Unless it is crashing in jrrd or jicmp which we wrote, it is by
>>> definition a JVM issue.  Unless we're running out of memory, it should
>>> be impossible to put something in a jar that crashes the JVM, and if it
>>> does, it's a JVM bug.  Since the Linux JDK doesn't crash under the Linux
>>> kernel, that would mean it has to be some interaction in the FreeBSD
>>> side breaking it.
>>>
>>> Without a crash log, though, it's hard to say.  :)
>>>
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Dive into the World of Parallel Programming The Go Parallel Website, sponsored
>>> by Intel and developed in partnership with Slashdot Media, is your hub for all
>>> things parallel software development, from weekly thought leadership blogs to
>>> news, videos, case studies, tutorials and more. Take a look and join the
>>> conversation now.http://goparallel.sourceforge.net/
>>>
>>>
>>> _______________________________________________
>>> Please read the OpenNMS Mailing List FAQ:
>>> http://www.opennms.org/index.php/Mailing_List_FAQ
>>>
>>> opennms-devel mailing list
>>>
>>> To *unsubscribe* or change your subscription options, see the bottom of this page:
>>> https://lists.sourceforge.net/lists/listinfo/opennms-devel
>> Ben,
>>
>>     More than happy to provide any crash dumps.  However, I can't 
>> agree with it 'must be' the JVM.  Ron Roskens and I have delved into 
>> this and found some interesting things going on. The behavior differs 
>> between the Linux JVM on FreeBSD linuxlator and the openjdk on FreeBSD.
>>     Once upon a time, previous OpenNMS versions always worked on 
>> FreeBSD on Java 1.4, 1.5, 1.6.  There was never an issue with getting 
>> it running, there just wasn't a package/port.
>>
>> Here's one of the e-mails that I've received regarding this:
>>
>> *Hi Paul, good morning.***
>>
>> **
>>
>> ***I’ve been reading a lot of your posts to the lists about OpenNMS 
>> on FreeBSD.***
>>
>> **
>>
>> *I have been running OpenNMS v1.10.6 on FreeBSD 9 for years with no 
>> trouble, but decided to upgrade.  Heh.***
>>
>> **
>>
>> *See versions of software I’m running below.***
>>
>> **
>>
>> *I have the same symptoms you described last fall:  it runs for a 
>> while, then boom – JVM blows up.***
>>
>> **
>>
>> *Have you had any luck getting it working?***
>>
>> **
>>
>> *Thanks!***
>>
>> **
>>
>> *___________________________***
>>
>> **
>>
>> *Kris Jacobs***
>>
>> *Network Administrator**
>> **% uname –a**
>> **
>> **FreeBSD NETMONv2.calhouncountymi.local 10.1-RELEASE FreeBSD 
>> 10.1-RELEASE #0 r274401: Tue Nov 11 21:02:49 UTC 2014 
>> root at releng1.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64**
>> **
>> **% pkg version | grep jdk **
>> **
>> **openjdk-7.76.13_1,1**
>> **
>> **opennms-15.0.1-1**
>> *
>>
>> So, here's an example of someone running OpenNMS 1.10.6 on FreeBSD 9 
>> and openjdk6.  It ran "for years".  I had run FreeBSD 8.0 with 
>> OpenNMS 1.{5,6}(I think) with an unknown JDK version and it ran for 
>> years without issue.  Again, what has happened? The user, Kris, 
>> (above) has tried getting it to work on OpenNMS 1.15 with openjdk 
>> 6,7,8.  None of it works.  I believe OpenNMS to be the best NMS 
>> system out there right  now.  However, I'm using Zabbix for all of my 
>> new installs which seems to be my only alternative at this point.
>>
>> Could someone tell me if this is working on OSX reliably?  That may 
>> be an alternative.  BTW, I don't have any other issues with other 
>> apps that are using openjdk crashing on FreeBSD, it seems to be 
>> OpenNMS is the only app with a problem.
>>
>> I'm also sending this to the java maillist at FreeBSD.  I'm hoping 
>> that the two groups can work together to resolve the issue.
>>
>> My being in the middle may be hampering the issue but what seems to 
>> be hurting more is the fact that there doesn't seem to be anyone 
>> willing to work the issue to PROVE it is something having to do with 
>> the JDK.  People stating "Well, it works on Linux, with the Linux 
>> JDK, which we have Linux specific conditionals set in XML code and it 
>> works fine" comes across as a serious dodge.  (Ron Roskens pointed 
>> out a couple of issues with the code using specific 'epoll' calls.  
>> Kudos to him for digging in and finding that.)
>>
>> Seriously, if OpenNMS says "We will not support OpenNMS on FreeBSD", 
>> then please make the statement for everyone to see so they know to 
>> stop using and supporting this product.  Just close the door and well 
>> meaning people like myself will just walk away. Sevan used to 
>> complain that the upstream support in the OpenNMS group was what kept 
>> the product from being stable on more platforms, I'm starting to lean 
>> that way as well.  (With Ron Roskens being the exception, of 
>> course.)  (Sad considering that Juniper uses FreeBSD for JunOS and 
>> Playstation is built on it, and Apple is built on it.... etc)
>>
>> Something that the OpenNMS project should consider:  software being 
>> well-supported on more than just one or two platforms is the best way 
>> to hedge your bets.  Right now, there is serious slippage on a couple 
>> of platforms in the industry.  Any software project that has all 
>> their eggs in one or two baskets could end up blowing away if those 
>> eggs lose market share.
>>
>> Tarus, can you weigh in on this?
>>
>> BTW, where can I get the source for 10.x?  I'd like to see if it 
>> still runs on openjdk6.  That might be a solid place to start on my 
>> end.  If that can work, I'll try openjdk 7.
>>
>> Thank you,
>>
>> Paul Pathiakis
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Dive into the World of Parallel Programming The Go Parallel Website, sponsored
>> by Intel and developed in partnership with Slashdot Media, is your hub for all
>> things parallel software development, from weekly thought leadership blogs to
>> news, videos, case studies, tutorials and more. Take a look and join the
>> conversation now.http://goparallel.sourceforge.net/
>>
>>
>> _______________________________________________
>> Please read the OpenNMS Mailing List FAQ:
>> http://www.opennms.org/index.php/Mailing_List_FAQ
>>
>> opennms-devel mailing list
>>
>> To *unsubscribe* or change your subscription options, see the bottom of this page:
>> https://lists.sourceforge.net/lists/listinfo/opennms-devel
>
>
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming The Go Parallel Website, sponsored
> by Intel and developed in partnership with Slashdot Media, is your hub for all
> things parallel software development, from weekly thought leadership blogs to
> news, videos, case studies, tutorials and more. Take a look and join the
> conversation now. http://goparallel.sourceforge.net/
>
>
> _______________________________________________
> Please read the OpenNMS Mailing List FAQ:
> http://www.opennms.org/index.php/Mailing_List_FAQ
>
> opennms-devel mailing list
>
> To *unsubscribe* or change your subscription options, see the bottom of this page:
> https://lists.sourceforge.net/lists/listinfo/opennms-devel



More information about the freebsd-java mailing list