[Bug 705409] New: gconf-editor will not set an entry to default
https://bugzilla.novell.com/show_bug.cgi?id=705409 https://bugzilla.novell.com/show_bug.cgi?id=705409#c0 Summary: gconf-editor will not set an entry to default Classification: openSUSE Product: openSUSE 12.1 Version: Factory Platform: i686 OS/Version: SuSE Other Status: NEW Severity: Normal Priority: P5 - None Component: GNOME AssignedTo: bnc-team-gnome@forge.provo.novell.com ReportedBy: casualprogrammer@opensuse.org QAContact: qa@suse.de Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0 When running gconf-editor and configuring a banner message for the gdm greeter, then trying to set it to default, the terminal displays GConf Error: Configuration server couldn't be contacted: D-BUS error: Unable to store a value at key '/apps/gdm/simple-greeter/banner_message_enable', as the configuration server has no writable databases. There are some common causes of this problem: 1) your configuration path file /etc/gconf/2/path doesn't contain any databases or wasn't found 2) somehow we mistakenly created two gconfd processes 3) your operating system is misconfigured so NFS file locking doesn't work in your home directory or 4) your NFS client machine crashed and didn't properly notify the server on reboot that file locks should be dropped. If you have two gconfd processes (or had two at the time the second was launched), logging out, killing all copies of gconfd, and logging back in may help. If you have stale locks, remove ~/.gconf*/*lock. Perhaps the problem is that you attempted to use GConf from two machines at once, and ORBit still has its default configuration that prevents remote CORBA connections - put "ORBIIOPIPv4=1" in /etc/orbitrc. As always, check the user.* syslog for details on problems gconfd encountered. There can only be one gconfd per home directory, and it must own a lockfile in ~/.gconfd and also lockfiles in individual storage locations such as ~/.gconf dmesg | grep gconf produces dmesg | grep gconf [ 14.015583] at-spi-registry[2005]: segfault at c ip b7403789 sp bf9c8fb0 error 4 in libgconf-2.so.4.1.5[b73ec000+2d000] [ 8998.155756] at-spi-registry[7620]: segfault at c ip b746f789 sp bfad1250 error 4 in libgconf-2.so.4.1.5[b7458000+2d000] [ 9007.016758] gsettings-data-[7803]: segfault at c ip b76d7789 sp bfb40940 error 4 in libgconf-2.so.4.1.5[b76c0000+2d000] [ 9007.052302] gsettings-data-[7811]: segfault at c ip b7824789 sp bfe0ec40 error 4 in libgconf-2.so.4.1.5[b780d000+2d000] [ 9074.406640] at-spi-registry[8056]: segfault at c ip b7349789 sp bfa3ae40 error 4 in libgconf-2.so.4.1.5[b7332000+2d000] Reproducible: Always -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=705409 https://bugzilla.novell.com/show_bug.cgi?id=705409#c1 Vincent Untz <vuntz@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |NEEDINFO CC| |vuntz@novell.com InfoProvider| |casualprogrammer@opensuse.o | |rg --- Comment #1 from Vincent Untz <vuntz@novell.com> 2011-07-18 08:14:39 UTC --- Were you running gconf-editor as root? Was this after an upgrade, and did you restart your session? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=705409 https://bugzilla.novell.com/show_bug.cgi?id=705409#c2 Casual J. Programmer <casualprogrammer@opensuse.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |NEW InfoProvider|casualprogrammer@opensuse.o | |rg | --- Comment #2 from Casual J. Programmer <casualprogrammer@opensuse.org> 2011-07-18 09:48:30 UTC ---
Were you running gconf-editor as root?
No
Was this after an upgrade, and did you restart your session?
Both yes The messages received in the terminal have changed since. Just now I get: 8> gconf-editor GConf Error: Configuration server couldn't be contacted: D-BUS error: Unable to store a value at key '/apps/gdm/simple-greeter/banner_message_enable', as the configuration server has no writable databases. There are some common causes of this problem: 1) your configuration path file /etc/gconf/2/path doesn't contain any databases or wasn't found 2) somehow we mistakenly created two gconfd processes 3) your operating system is misconfigured so NFS file locking doesn't work in your home directory or 4) your NFS client machine crashed and didn't properly notify the server on reboot that file locks should be dropped. If you have two gconfd processes (or had two at the time the second was launched), logging out, killing all copies of gconfd, and logging back in may help. If you have stale locks, remove ~/.gconf*/*lock. Perhaps the problem is that you attempted to use GConf from two machines at once, and ORBit still has its default configuration that prevents remote CORBA connections - put "ORBIIOPIPv4=1" in /etc/orbitrc. As always, check the user.* syslog for details on problems gconfd encountered. There can only be one gconfd per home directory, and it must own a lockfile in ~/.gconfd and also lockfiles in individual storage locations such as ~/.gconf The message is thrown at me when I try to change an entry to default, not at the start of gconf-editor. :~> cat /etc/gconf/2/path # This file stores the addresses of config sources for GConf # When a value is stored or requested, the sources are scanned from top to # bottom, and the first one to have a value for the key (or the first one # to be writeable) is used to load/store the data. # See the GConf manual for details # Look first in systemwide mandatory settings directory xml:readonly:/etc/gconf/gconf.xml.mandatory # To read in any mandatory settings that the Sys Admin may have created # prior to a desktop system upgrade. The SysAdmin can stick read-only system # wide sources in this file. include /etc/gconf/2/local-mandatory.path # Sabayon mandatory path include "$(HOME)/.gconf.path.mandatory" # Now see where users want us to look - basically the user can stick arbitrary # sources in a ~/.gconf.path file and they're inserted here include "$(HOME)/.gconf.path" # Give users a default storage location, ~/.gconf xml:readwrite:$(HOME)/.gconf # Then look at the systemwide customizations xml:readonly:/etc/gconf/gconf.xml.defaults # Sabayon optional path include "$(HOME)/.gconf.path.defaults" # To read in any defaults settings that the Sys Admin may have created # prior to a desktop system upgrade. The SysAdmin can stick default values # system-wide in this file. include /etc/gconf/2/local-defaults.path # Then check vendor preferences xml:readonly:/etc/gconf/gconf.xml.vendor # And finally look at the defaults defined by installed schemas xml:readonly:/etc/gconf/gconf.xml.schemas -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=705409 https://bugzilla.novell.com/show_bug.cgi?id=705409#c3 --- Comment #3 from Casual J. Programmer <casualprogrammer@opensuse.org> 2011-07-19 05:01:40 UTC --- ~> dmesg | grep gconf [ 14.824960] at-spi-registry[1995]: segfault at c ip b73f5789 sp bfb0cae0 error 4 in libgconf-2.so.4.1.5[b73de000+2d000] Would that explain it ? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=705409 https://bugzilla.novell.com/show_bug.cgi?id=705409#c4 --- Comment #4 from Joey Yu Zheng <jzheng@novell.com> 2011-08-02 11:42:06 UTC --- I tried and can reproduce this issue. There is no such issue in 11.4 and with some investigation, I think it is related with dbus, gconf and polkit, since after clicking "Set as Default", we should be able to see a dialog for requiring administrator password, but there is no such dialog. I will do some debugs to see which we missed. Vincent, do you have any suggestion? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=705409 https://bugzilla.novell.com/show_bug.cgi?id=705409#c5 --- Comment #5 from Vincent Untz <vuntz@novell.com> 2011-08-02 14:07:21 UTC --- (In reply to comment #4)
Vincent, do you have any suggestion?
Look at the can_edit_source() function in gconf-editor, and study why its return values are wrong. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=705409 https://bugzilla.novell.com/show_bug.cgi?id=705409#c6 --- Comment #6 from Joey Yu Zheng <jzheng@novell.com> 2011-08-04 09:02:49 UTC --- Vincent, Thanks for the suggestion. I checked and found that the problem may be gconf2's. #1, gconf_entry_get_is_writable() always return "TRUE" when calling can_edit_source(). source is "xml::/etc/gconf/gconf.xml.defaults", which is correct and same as 11.4. #2, I used gdb to follow gconf_entry_get_is_writable() in gconf2 and found that we are now using "REAL_ENTRY (entry)->is_writable" to do type-convert forcely. #3, So I examined the mem of "entry" and see following: (gdb) x/20xb entry 0x804c048: 0x60 0x12 0x05 0x08 0x00 0x00 0x00 0x00 0x804c050: 0x00 0x00 0x00 0x00 0x01 0x00 0x00 0x00 0x804c058: 0xba 0xba 0xba 0xba entry's type is GConfEntry: struct _GConfEntry { char *key; GConfValue *value; } and REAL_ENTRY will forcely convert it to GConfRealEntry: typedef struct { char *key; GConfValue *value; char *schema_name; int refcount; guint is_default : 1; guint is_writable : 1; } GConfRealEntry; so, is_writable will be "1" according to the mem dump. #4, I also checked in 11.4 and the value which is "0xba 0xba 0xba 0xba" will always be "0x00 0x00 0x00 0x00". So in 11.4 there is no such issue. So I wonder if the force-type-convert is proper or not? Thanks, Joey -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=705409 https://bugzilla.novell.com/show_bug.cgi?id=705409#c7 --- Comment #7 from Joey Yu Zheng <jzheng@novell.com> 2011-08-08 09:53:14 UTC --- Status Update: I found that this may be caused by the dbus and located the issue in function gconf_engine_get_fuller(). 11.4 still uses CORBA, so it does not has such issue. I will try to get a fix soon. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=705409 https://bugzilla.novell.com/show_bug.cgi?id=705409#c8 --- Comment #8 from Joey Zheng <jzheng@novell.com> 2011-08-19 03:15:55 UTC --- I got the root cause. It is caused by that gconfd-dbus will not return any message if there is no such entry in default xml. So I forced it to return even if there is no such entry. So an "INVALID" value will be returned now. In my test, it works, if you like, you can try it from obs://home:jzheng:branches:GNOME:Factory, but gconf-editor or gconfd have a sync issue, so you need to click "set as default" twice or start gconf-editor twice once you modified the value and wnat to store the value and set the value to default. I will file another bug for tracking the sync issue. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=705409 https://bugzilla.novell.com/show_bug.cgi?id=705409#c9 Vincent Untz <vuntz@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED URL| |https://bugzilla.gnome.org/ | |show_bug.cgi?id=655954 Resolution| |FIXED --- Comment #9 from Vincent Untz <vuntz@suse.com> 2011-09-06 19:13:33 UTC --- Upstream bug: https://bugzilla.gnome.org/show_bug.cgi?id=655954 I've pushed the patch to GNOME:Factory, see sr#81138. Thanks Joey! -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com