This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | Keyring-related crash on GNOME 3 | ||
---|---|---|---|
Product: | platform | Reporter: | Samsagax |
Component: | Options&Settings | Assignee: | Jesse Glick <jglick> |
Status: | VERIFIED FIXED | ||
Severity: | normal | CC: | jglick, mmirilovic, ralphbenjamin |
Priority: | P2 | ||
Version: | 7.0.1 | ||
Hardware: | PC | ||
OS: | Linux | ||
Issue Type: | DEFECT | Exception Reporter: | |
Attachments: |
messages.log from last crash
Quick fix Proposed patch |
Description
Samsagax
2011-05-26 16:38:35 UTC
(In reply to comment #0) > I tried ... forcing Netbeans to use svn on command line How? Could you try running the IDE with -J-DsvnClientAdapterFactory=svnkit ? And try to locate and attach the crash log from the NB session, i think hs_err* file somewhere either in current working dir or install dir. >> I tried ... forcing Netbeans to use svn on command line
>How? Could you try running the IDE with -J-DsvnClientAdapterFactory=svnkit ?
I did it changing -J-DsvnClientAdapterFactory=commandline in the netbeans.conf file (/usr/share/netbeans/etc/netbeans.conf). Tried the above, didn't work.
Couldn't find the crash log. Where are these files? I found a ~/.netbeans/var/log and had no other logs than messages.log (which none of them have the crash report)
(In reply to comment #3) > Couldn't find the crash log. Where are these files? Try NETBEANS_INSTALL_DIR/bin/hs_err_pid*.log or you can force the location with -XX:ErrorFile=./hs_err_pid<pid>.log And have you tried reinstalled/use a different JDK? > Try NETBEANS_INSTALL_DIR/bin/hs_err_pid*.log Nothing there. It seemes that it is not creating any error logs. > And have you tried reinstalled/use a different JDK? Tried OpenJDK, same error. Reinstalled sun JDK and still got the same error. > -XX:ErrorFile=./hs_err_pid<pid>.log Where goes this line? in netbeans.conf file? Unknown option -XX:ErrorFile=/home/joaquin/.netbeans/7.0/hs_err_pid.log Got this error trying to set an error file. > Unknown option -XX:ErrorFile=/home/joaquin/.netbeans/7.0/hs_err_pid.log
-J-XX:ErrorFile=/home/joaquin/.netbeans/7.0/hs_err_pid<pid>.log in netbeans.conf
(In reply to comment #7) > > Unknown option -XX:ErrorFile=/home/joaquin/.netbeans/7.0/hs_err_pid.log > -J-XX:ErrorFile=/home/joaquin/.netbeans/7.0/hs_err_pid<pid>.log in > netbeans.conf That's exactly what I did. First it failed to start with error saying it could not establish pid so I changed <pid> to {$pid}. Then had that error came up. Nevermind, erased "pid" variable call and got rid of that error (put something like -J-XX:ErrorFile=/home/joaquin/.netbeans/7.0/hs_err.log) Crashed Netbeans again and no error log was created. > Crashed Netbeans again and no error log was created.
Then i am affraid i cannot help. At least attach the full message.log (from ~/.netbeans/7.0/var/log/). And have you tried JDK 7?
Created attachment 108538 [details]
messages.log from last crash
I think this is crashing the entire JVM.
The last two messages are:
INFO [org.netbeans.modules.subversion.client.SvnClientFactory]: svnClientAdapter running on svnkit
INFO [org.netbeans.ui.metrics.vcs]: USG_VCS_ACTION
So the svn module loaded successfully but when it try to open something just crash.
One more thing. You mentioned you tried to work-around a gnome-keyring problem, could you please evaluate? What problem and what how did you try to solve it? (In reply to comment #12) > One more thing. You mentioned you tried to work-around a gnome-keyring problem, > could you please evaluate? What problem and what how did you try to solve it? I've read in some forum that a problem with https repositories where related with gnome-keyring and the solution was to create an entry in the gnome-keyring database by accessing the repository via the command line. That didn't work for me. My problem is present even in read-only repositories (http protocol) with no authentication. Netbeans does not show any message, just crash, disappear. Try running (adding the option to netbeans.conf) with -J-Dnetbeans.keyring.no.native=true (In reply to comment #14) > Try running (adding the option to netbeans.conf) with > -J-Dnetbeans.keyring.no.native=true It worked like a charm! Is an issue with gnome-keyring integration then. Since I'm using GNOME 3 I'll be glad to test fixes to this if there are to be made. Thanks! Reassinging to keyring. I think the bug should be look at more closely, if the gnome-keyring support crashes the entire JVM on Gnome 3 regularly i believe it should not be used in the IDE and automatically disabled. Maybe this has something to do with an API change in gnome-keyring? http://mail.gnome.org/archives/gnome-keyring-list/2011-February/msg00004.html ? The GNOME commits referred to are: http://git.gnome.org/browse/libgnome-keyring/commit/?id=617345edace57edc35a7b66cbb6b5830d47d7d9f http://git.gnome.org/browse/gnome-keyring/commit/?id=24d586d74b4959cf7d103a3b9a76a9de5796b281 (In reply to comment #0) > process 8167: arguments to dbus_message_iter_append_basic() were incorrect This looks to me like your libgnome-keyring.so does not match your keyring daemon. Perhaps you are not running on a clean system? (In reply to comment #16) > Maybe this has something to do with an API change in gnome-keyring? From what I can ascertain, there was no API change in the client side of libgnome-keyring that NetBeans uses; rather, there was an API change in the protocol between that and the daemon. Tried running http://download.gnome.org/misc/live/GNOME30-Live-latest.iso (Fedora base). Saved a website password from Epiphany, agreeing to make a default keyring. Ran a NB dev build using JDK 6u25. Installed the "Team Server" plugin from AU and logged in to kenai.com. Restarted NetBeans and was successfully logged in again as expected. /usr/bin/seahorse showed the password stored by NB. So there does not seem to be any intrinsic problem using the keyring integration with GNOME 3; possibly a problem with the user's GNOME setup. Created attachment 109982 [details]
Quick fix
The problem has been introduced in dbus version > 1.4.10 (or somewhere around that version), but Fedora is using an older one. My C knowledge is limited, but it looks likes some jni mapping problem. I attached a quick fix by changing the type from boolean to int in the keyring implementation.
I do not know how to reproduce any such crash. If you do, please attach that information. It is not clear to me why a C function defined to accept a boolean ought to be declared using an int, so I cannot approve your patch without more information. Created attachment 110008 [details] Proposed patch The problem seems to be in JNA's boolean conversion. JNA uses -1 for the value of true, but it seems the convention is to use 1. See http://java.net/jira/browse/JNA-2 This patch adds a typemapper to correctly handle boolean values in JNA. core-main #202f192216d6 Committed after cleaning up patch stylistically. Unit test passes on Ubuntu Lucid at least; please test on your system, whatever that is. Works on Gentoo amd64 with Gnome Overlay. dbus-1.4.12 gnome-keyring-3.0.3-r300 libgnome-keyring-3.0.3-r1 Thanks ! Integrated into 'main-golden' Changeset: http://hg.netbeans.org/main-golden/rev/202f192216d6 User: Jesse Glick <jglick@netbeans.org> Log: #198921: Keyring-related crash on GNOME 3 releases #77c15aa12b3b and releases #22f067abe333 |