[CONTROLLER-873] Classpath error when loading neutron northbound api Created: 20/Sep/14 Updated: 19/Oct/17 Resolved: 05/May/15 |
|
| Status: | Resolved |
| Project: | controller |
| Component/s: | adsal |
| Affects Version/s: | Helium |
| Fix Version/s: | None |
| Type: | Bug | ||
| Reporter: | Dave Tucker | Assignee: | Unassigned |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Operating System: All |
||
| External issue ID: | 2002 |
| Priority: | High |
| Description |
|
This could have been caused by the maven bundle plugin version bump but no clear evidence as to what the root cause is here... 2014-09-19 23:45:35,466 | ERROR | Event Dispatcher | [/controller/nb/v2/neutron] | 255 - org.apache.juli.extras - 7.0.53.v201406060720 | StandardWrapper.Throwable |
| Comments |
| Comment by Dave Tucker [ 20/Sep/14 ] |
|
Adding some further info Mac OSX 10.9.4 I've tested this against RC1-2 and RC1-4 and I still hit the same issue. This could be an environment issue so dropping to "normal" for now. The bundle worked fine for me before using Karaf |
| Comment by Dave Tucker [ 21/Sep/14 ] |
|
Pushing this to a blocker as IMO this issue breaks OpenStack integration *** Tested to today on a clean Ubuntu 14.04 build with RC1-5 from nexus. The bad news is that this prevents the Neutron API fro To replicate: 1) Install the Oracle JDK 2) Download and extract the RC1-5 from nexus 3) ./bin/karaf 4) feature:install odl-adsal-compatibility odl-ovsdb-openstack 5) log:tail shows the classpath error linked in #1 6) All requests to Neutron API fail https://www.dropbox.com/s/ri934w9t76nrmua/Screenshot%202014-09-21%2019.30.28.png?dl=0 *** Environment details vagrant@mininet:~/distribution-karaf-0.2.0-Helium-RC1-5-v201409210001$ java -version opendaylight-user@root>exports | grep javax.ws.rs.ext opendaylight-user@root>exports | grep moxy opendaylight-user@root>exports | grep moxy opendaylight-user@root>bundle:list | grep -i eclipselink *** In both cases, my mac and this VM, JDK version has been 1.7.0_67 so there is a good chance that this could be related to the JDK version. Equally, those who have been unable to reproduce have been using a lower JDK version. |
| Comment by Dave Tucker [ 22/Sep/14 ] |
|
Tried with JDK version 1.7.0_40, 60, 65 and so far no luck on OSX |
| Comment by Vina Ermagan [ 22/Sep/14 ] |
|
I have tested RC-6 with JDK 1.7.0_51 on Linux. Neutron API seem to work fine in my setup. |
| Comment by Dave Tucker [ 22/Sep/14 ] |
|
(In reply to Vina Ermagan from comment #4) Did you test with a GET to http://127.0.0.1:8080/controller/nb/v2/neutron/networks/ ? Can you replicate the issue with JDK 1.7.0_67? |
| Comment by Vina Ermagan [ 22/Sep/14 ] |
|
Yes, I used the same REST call you refer to. Getting on a plane now. Will try to test with JDK 1.7.0_67, but may take a while before I land (will be after 5 pm PST). Can you check to see if the neutron feature (I think it is odl-nsf-managers) is loaded in karaf? |
| Comment by Ryan Moats [ 22/Sep/14 ] |
|
There is a workaround for this bug. at karaf startup first "feature:install odl-base-jackson" Fixing this bug requires direct dependencies between the features that contain the neutron northbound bundle, the moxy bundles, and the jackson json provider bundle |
| Comment by Dave Tucker [ 23/Sep/14 ] |
|
T(In reply to Ryan Moats from comment #7) Thanks Ryan! This works for me. |
| Comment by Vishal Patil [ 30/Sep/14 ] |
|
I am hitting this error as well and the workaround did not help |
| Comment by Vishal Patil [ 01/Oct/14 ] |
|
I just downloaded the helium karaf rc2 candidate (http://nexus.opendaylight.org/content/groups/staging/org/opendaylight/integration/distribution-karaf/0.2.0-Helium/distribution-karaf-0.2.0-Helium.zip) and am not hitting this problem any more. |
| Comment by Flavio Fernandes [ 09/Oct/14 ] |
|
When using Karaf distro built from ovsdb repo, I still hit this issue: https://gist.github.com/da66fc1ab10cd251d21b The workaround mentioned above does not seem to help. |
| Comment by Flavio Fernandes [ 09/Oct/14 ] |
|
Also hit issue when using Helium distribution. |
| Comment by Flavio Fernandes [ 10/Oct/14 ] |
|
Using these Karaf bundles will make the problem not occur: feature:install odl-ovsdb-openstack odl-ovsdb-northbound |
| Comment by Vishal Patil [ 10/Oct/14 ] |
|
Inspite of installing those packages I am still hitting those errors. |
| Comment by Flavio Fernandes [ 21/Oct/14 ] |
|
From: Colin Dixon <colin@colindixon.com> Did you base your distribution off the opendaylight-karaf distribution? If so, this might have fixed it. I fixed that because some guys inside Brocade were having issues where the opendaylight-karaf distribution in the controller wasn't coming up. It could be related to what you're saying. --Colin On Mon, Oct 20, 2014 at 4:47 PM, Flavio Fernandes <ffernand@redhat.com> wrote: I don’t understand pom / Karaf enough to know what is the cause of All I know is that some good Samaritan recently fixed the issue on master and the fix was outside the ovsdb repository. Any chance the changes you did (below) could been it? If so, any chance we could have this fix in stable/helium? Thanks, — flavio ======= commit 25f58fff9ad2bd275465e63a5bdb3cb2e3c52cb3 Adding restconf to the opendaylight-karaf distribution Change-Id: I91cbee656e2f4da2af62f8a26e7800401f9c6aa4 |
| Comment by Sam Hague [ 04/Nov/14 ] |
|
https://git.opendaylight.org/gerrit/#/c/12132/ Looks like some sort of issue where karaf doesn't wire up dependencies correctly. The error comes out when northbound neutron rest calls come in containing json. This eventually leads to org.eclipse.persistence.core loading and it in turn needing org.eclipse.persistence.antlr. The odl-adsal-northbound feature includes both bundles. In the failing case, the wiring of core needing antlr fails when core is installed before antlr. The odl-base-all feature is typically installed very early. It includes the odl-base-eclipselink-persistence which installs core. Later when odl-adsal-northbound is installed the wiring fails. The fix is to install antlr before core in the odl-base-eclipselink-peristence feature. Also related is https://bugs.opendaylight.org/show_bug.cgi?id=2213. |
| Comment by Carol Sanders [ 05/May/15 ] |
|
This bug is part of the project to Move all ADSAL associated component bugs to ADSAL. |