Bug 1399793
Summary: | When sending error report ... java.lang.UnsatisfiedLinkError: could not locate stub library in jar file. Tried [jni/x86_64-Linux/libjffi-1.2.so, /jni/x86_64-Linux/libjffi-1.2.so] | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Matěj Cepl <mcepl> |
Component: | eclipse-pydev | Assignee: | Roland Grunberg <rgrunber> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | high | Docs Contact: | |
Priority: | high | ||
Version: | 25 | CC: | akurtako, dgunchev, eclipse-sig, jamundso, jjohnstn, matt.weiss, mcepl, rgrunber |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | eclipse-pydev-5.5.0-3.fc25 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2017-03-15 18:21:52 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Matěj Cepl
2016-11-29 18:27:08 UTC
Mat has pointed out that this could be some kind of race condition from having multiple plugins that use the JNR stack on the system at once. I did have both installed and wasn't able to reproduce but that doesn't rule it out. The line : 'Caused by: java.lang.IllegalStateException: Can't overwrite cause with ...' looks really suspicious. Could you try uninstalling one of eclipse-pydev or eclipse-epp-logging and seeing if the issue goes away ? Matej has been able to confirm that removing 'eclipse-pydev' allows him to send an error report to ABRT and have it show up in the application. This would point to some kind of race condition when both multiple plugins access some jnr code path. Reassigning to you Roland as you're the one investigating it. *** Bug 1424750 has been marked as a duplicate of this bug. *** JNR has various ways of locating the shared object libjffi-1.2.so . It is capable of locating it on the system (java library path) but we don't currently use this approach. Much like upstream, we package the .so file into a jar file, jffi-native.jar and JNR must load the jar and locate the .so from there. JNR will look for libjffi-1.2.so in the "resource" corresponding to the classloader that loaded com.kenai.jffi.internal.StubLoader (ie. StubLoader.class.getClassLoader()). Generally this will be the bundle "com.github.jnr.jffi.native" and of course that contains libjffi-1.2.so. However, it's also possible that "org.python.pydev.jython" will be idenitified as the classloader for the StubLoader because it has a Bundle-ClassPath on jffi.jar. It doesn't contain jffi-native, so the loading will always fail going forward. I would think the only error here is that Eclipse PyDev is missing a symbolic link to jffi-native in /usr/lib64/eclipse/droplets/pydev-core/eclipse/plugins/org.python.pydev.jython_5.5.0.201701241700/ . I was able to reproduce with eclipse-abrt, and eclipse-pydev installed, and by simply triggering some error in eclipse-pydev and attempting to report it. The following resolve the issue : pushd /usr/lib64/eclipse/droplets/pydev-core/eclipse/plugins/org.python.pydev.jython_5.5.0.201701241700/ && ln -s /usr/lib/java/jffi-native.jar && popd (Also add 'jffi-native.jar' to the Bundle-ClassPath entry in /usr/lib64/eclipse/droplets/pydev-core/eclipse/plugins/org.python.pydev.jython_5.5.0.201701241700/META-INF/MANIFEST.MF) I've built https://koji.fedoraproject.org/koji/buildinfo?buildID=862989 (eclipse-pydev-5.5.0-3.fc25) which should resolve this. eclipse-pydev-5.5.0-3.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2017-aa8f9266db eclipse-pydev-5.5.0-3.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-aa8f9266db BTW: Same problem on fedora 24. I tried comment #6 but with no luck. eclipse-pydev-5.5.0-3.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report. |