Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 30 Mar 2015 19:42:09 -0400
From:      Seth Leger <seth@opennms.org>
To:        OpenNMS Code Development and Bugs <opennms-devel@lists.sourceforge.net>, java@freebsd.org, tarus@opennms.org
Subject:   Re: [opennms-devel] OpenNMS 1.14+ on FreeBSD 8, 9, 10, 11
Message-ID:  <5519DF51.90909@opennms.org>
In-Reply-To: <5519C7DC.9010801@atlantisservices.net>
References:  <5516FBCD.4050009@atlantisservices.net>	<55197228.4050808@opennms.org> <5519C7DC.9010801@atlantisservices.net>

next in thread | previous in thread | raw e-mail | index | archive | help
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@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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5519DF51.90909>