Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 368299 - gnome-extra/evolution-data-server: e-addressbook-factory takes 100% of CPU
Summary: gnome-extra/evolution-data-server: e-addressbook-factory takes 100% of CPU
Status: RESOLVED DUPLICATE of bug 354233
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GNOME (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-05-22 05:34 UTC by Joseph
Modified: 2011-06-05 09:30 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Joseph 2011-05-22 05:34:59 UTC
After recent upgrade when I start evolution "e-addressbook-factory" takes almost 100% CPU 

Reproducible: Always




Portage 2.1.9.42 (default/linux/x86/10.0/desktop, gcc-4.4.5, libc-0-r0, 2.6.36-gentoo-r5 i686)
=================================================================
System uname: Linux-2.6.36-gentoo-r5-i686-AMD_Athlon-TM-_XP_2500+-with-gentoo-1.12.14
Timestamp of tree: Sat, 21 May 2011 02:00:01 +0000
ccache version 2.4 [disabled]
app-shells/bash:     4.1_p9
dev-java/java-config: 2.1.11-r3
dev-lang/python:     2.7.1-r1, 3.1.3-r1
dev-util/ccache:     2.4-r9
dev-util/cmake:      2.8.4-r1
sys-apps/baselayout: 1.12.14-r1
sys-apps/sandbox:    2.4
sys-devel/autoconf:  2.13, 2.65-r1
sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.1.2, 4.4.5
sys-devel/gcc-config: 1.4.1-r1
sys-devel/libtool:   2.2.10
sys-devel/make:      3.81-r2
sys-kernel/linux-headers: 2.6.36.1
sys-libs/glibc:      2.12.2
virtual/os-headers:  0
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA PUEL dlj-1.1"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib/fax /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa /var/spool/fax/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs collision-protect distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="http://distro.ibidio.org/pub/linux/distributions/gentoo/ ftp:///ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://gentoo.osuosl.org/ http://mirror.datapipe.net/gentoo http://gentoo.binarycompass.org"
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_US"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/kde-sunset"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac acpi alsa apache2 berkdb bluetooth branding bzip2 cairo cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr emboss encode exif fam firefox flac foomaticdb fortran gdbm gdu gif gpm gtk iconv ipv6 java jpeg kde kpathsea lcms ldap libnotify mad mng modules mp3 mp4 mpeg mudflap mysql ncurses nls nptl nptlonly ogg opengl openmp pam pango pcre pdf perl png policykit ppds pppd python qt3support qt4 readline scanner sdl semantic-desktop session spell ssl startup-notification svg sysfs tcpd tetex tiff truetype type1 udev unicode usb vorbis x264 x86 xcb xml xorg xulrunner xv xvid zlib" ALSA_CARDS="via82xx" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias cgi" CALLIGRA_FEATURES="braindump flow karbon kexi kpresenter krita tables words" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nv vesa fbdev" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Joseph 2011-05-22 06:14:37 UTC
It has something to do with this bug but I'm not sure what is the temp. solution. 
I couldn't find any <<source-uid>> files.

Is downgrade an option?
Comment 3 Gilles Dartiguelongue (RETIRED) gentoo-dev 2011-05-24 20:51:07 UTC
Did you follow gnome upgrade guide ? 

http://www.gentoo.org/proj/en/desktop/gnome/howtos/gnome-2.32-upgrade.xml

also please paster emerge -pv evolution-data-server.
Comment 4 Joseph 2011-05-24 22:43:37 UTC
I don't have problem with addressbook but when I tried to run:
./fix-addressbook.py

Traceback (most recent call last):
  File "./fix-addressbook.py", line 7, in <module>
    import gconf
ImportError: No module named gconf


Here it is:
emerge -pv evolution-data-server

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] gnome-extra/evolution-data-server-2.32.2  USE="ipv6 ldap ssl weather -doc -gnome-keyring -kerberos -test" 0 kB
Comment 5 Gilles Dartiguelongue (RETIRED) gentoo-dev 2011-05-25 00:36:31 UTC
yeah the script assumes you have a couple of gnome packages installed, here it is just missing gconf-python. Also, could you attach .xsession-errors (full) when you get the problem with e-addressbook-factory.
Comment 6 Joseph 2011-05-25 00:56:31 UTC
cat .xsession-errors 
/usr/bin/startxfce4: X server already running on display :0
xrdb:  "Xft.hinting" on line 48 overrides entry on line 6
xrdb:  "Xft.hintstyle" on line 50 overrides entry on line 7
xfdesktop[5652]: starting up
xfce4-settings-helper: Another instance is already running. Leaving...
joseph@syscon2 ~ $ cat .xsession-errors 
/usr/bin/startxfce4: X server already running on display :0
xrdb:  "Xft.hinting" on line 48 overrides entry on line 6
xrdb:  "Xft.hintstyle" on line 50 overrides entry on line 7
xfdesktop[5652]: starting up
xfce4-settings-helper: Another instance is already running. Leaving...
Migrating cached data
Migrating config data
Migrating local user data
  mv /home/joseph/.evolution/mail/local/folders.db /home/joseph/.local/share/evolution/mail/local/folders.db
  FAILED: Destination file already exists
  rmdir /home/joseph/.evolution/mail/local
  FAILED: Directory not empty (contents follows)
          folders.db
  rmdir /home/joseph/.evolution/mail
  FAILED: Directory not empty (contents follows)
          local
  rmdir /home/joseph/.evolution/tasks
  FAILED: Directory not empty (contents follows)
          tasks

(evolution:9772): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:9772): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:9772): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:9772): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:9772): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:9772): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:9772): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:9772): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:9772): GLib-GObject-CRITICAL **: Object class EMFolderTree doesn't implement property 'paste-target-list' from interface 'ESelectable'

(evolution:9772): GLib-GObject-CRITICAL **: Object class EMFolderTree doesn't implement property 'copy-target-list' from interface 'ESelectable'

(evolution:9772): libebook-WARNING **: e-book.c:3079: cannot activate book: Error calling StartServiceByName for org.gnome.evolution.dataserver.AddressBook: Timeout was reached

(evolution:9772): evolution-mail-WARNING **: search_address_in_addressbooks: Unable to create addressbook 'Personal': Error calling StartServiceByName for org.gnome.evolution.dataserver.AddressBook: Timeout was reached
Comment 7 Joseph 2011-05-25 00:57:50 UTC
Seems to me like my old directory still exist.
Do I have to remove:
/home/joseph/.evolution
Comment 8 Joseph 2011-05-25 01:03:46 UTC
OK, I removed .evolution/ directory and here is output of 
cat .xsession-errors 

(evolution:10394): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:10394): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:10394): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:10394): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:10394): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:10394): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:10394): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:10394): filter-CRITICAL **: e_filter_option_add: assertion `find_option (option, value) == NULL' failed

(evolution:10394): GLib-GObject-CRITICAL **: Object class EMFolderTree doesn't implement property 'paste-target-list' from interface 'ESelectable'

(evolution:10394): GLib-GObject-CRITICAL **: Object class EMFolderTree doesn't implement property 'copy-target-list' from interface 'ESelectable'

(evolution:10394): libebook-WARNING **: e-book.c:3079: cannot activate book: Error calling StartServiceByName for org.gnome.evolution.dataserver.AddressBook: Timeout was reached

(evolution:10394): evolution-mail-WARNING **: search_address_in_addressbooks: Unable to create addressbook 'Personal': Error calling StartServiceByName for org.gnome.evolution.dataserver.AddressBook: Timeout was reached
Comment 9 Gilles Dartiguelongue (RETIRED) gentoo-dev 2011-05-25 01:27:00 UTC
the critical Gobject messages are weird but the rest looks like the already reported problem about dbus activation timeouts. Right after login, could you try to start /usr/libexec/e-addressbook-factory by hand in a terminal and see if it prints any error messages ? It looks like it's trying to create the default addressbook but fails. This is questionable if you ever had run it properly.
Comment 10 Joseph 2011-05-25 01:38:35 UTC
/usr/libexec/e-addressbook-factory
e-data-server-Message: adding type `EBookBackendWebdavFactory'
e-data-server-Message: adding type `EBookBackendGoogleFactory'
e-data-server-Message: adding type `EBookBackendLDAPFactory'
e-data-server-Message: adding type `EBookBackendGroupwiseFactory'
e-data-server-Message: adding type `EBookBackendVCFFactory'
e-data-server-Message: adding type `EBookBackendFileFactory'

and the CPU goes 100% for a minute or two.
Comment 11 Gilles Dartiguelongue (RETIRED) gentoo-dev 2011-05-25 01:54:11 UTC
for a minute or two, but is the addressbook feature of evolution working after that or is it just stuck ? Could you attach a gdb to e-addressbook-factory when it goes 100% cpu and print a backtrace or use a (system?) profiler (oprofile/systemtap) to see what's churning so much CPU ?
Comment 12 Joseph 2011-05-25 02:58:45 UTC
should I "emerge evolution-data-server" with debug?
It has been a long time since I use gdb.
Comment 13 Gilles Dartiguelongue (RETIRED) gentoo-dev 2011-05-25 16:28:40 UTC
If you want to provide a backtrace, yes, rebuilding evolution-data-server and its runtime dependencies would be a good idea.
Comment 14 Joseph 2011-05-25 18:43:32 UTC
I'm having a problem with running a backtrace

make.conf
CFLAGS="-O2 -march=athlon-xp -pipe -ggdb"

FEATURE="nostrip emerge evolution-data-server

gdb /usr/libexec/e-addressbook-factory
GNU gdb (Gentoo 7.2 p1) 7.2
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>...
Reading symbols from /usr/libexec/e-addressbook-factory...(no debugging symbols found)...done.

What am I missing?
Comment 15 Emil Wojak 2011-05-30 14:38:36 UTC
Hi! I ran into the same problem. I did FEATURES="splitdebug installsources" emerge -avt1 =gnome-extra/evolution-data-server-2.32.2 =dev-libs/glib-2.28.6 =gnome-base/gconf-2.32.0-r1
Here's the stacktrace from GDB:
(gdb) thread apply all bt

Thread 2 (Thread 0xb6f4cb70 (LWP 3607)):
#0  0xb775c424 in __kernel_vsyscall ()
#1  0xb754151c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb7469751 in g_main_context_wait (context=0x8638468, cond=0x86407c8, mutex=0x863846c) at gmain.c:2637
#3  0xb746adcc in g_main_loop_run (loop=0x8638458) at gmain.c:3270
#4  0xb766c11c in gdbus_shared_thread_func (data=0x0) at gdbusprivate.c:276
#5  0xb7496bbd in g_thread_create_proxy (data=0x8638230) at gthread.c:1897
#6  0xb753cd23 in start_thread () from /lib/libpthread.so.0
#7  0xb7395bfe in clone () from /lib/libc.so.6

Thread 1 (Thread 0xb7176910 (LWP 3606)):
#0  0xb775c424 in __kernel_vsyscall ()
#1  0xb737b24c in sched_yield () from /lib/libc.so.6
#2  0xb7552c91 in g_thread_yield_posix_impl () at gthread-posix.c:378
#3  0xb766c38c in _g_dbus_shared_thread_ref (func=0xb766e076 <_g_dbus_worker_thread_begin_func>, user_data=0x86449d8) at gdbusprivate.c:354
#4  0xb766e30e in _g_dbus_worker_new (stream=0x8641030, capabilities=G_DBUS_CAPABILITY_FLAGS_UNIX_FD_PASSING, initially_frozen=0, message_receive
d_callback=0xb7655d5d <on_worker_message_received>, message_about_to_be_sent_callback=0xb76560e1 <on_worker_message_about_to_be_sent>, disconnect
ed_callback=0xb7656325 <on_worker_closed>, user_data=0x8638838) at gdbusprivate.c:1449
#5  0xb7656af6 in initable_init (initable=0x8638838, cancellable=0x0, error=0xbfd10f70) at gdbusconnection.c:2380
#6  0xb75f1b31 in g_initable_init (initable=0x8638838, cancellable=0x0, error=0xbfd10f70) at ginitable.c:106
#7  0xb765de3d in g_bus_get_sync (bus_type=G_BUS_TYPE_SESSION, cancellable=0x0, error=0xbfd10f70) at gdbusconnection.c:6303
#8  0xb71b4b98 in get_ior (start_if_not_found=0, failure_log=0x862f130) at gconf-internals.c:2445
#9  0xb71b4d27 in gconf_get_server (start_if_not_found=0, failure_log=0x862f130) at gconf-internals.c:2494
#10 0xb71b564e in gconf_activate_server (start_if_not_found=0, error=0x0) at gconf-internals.c:2844
#11 0xb71c555f in try_to_contact_server (start_if_not_found=0, err=0x0) at gconf.c:2315
#12 0xb71c56a5 in gconf_get_config_server (start_if_not_found=0, err=0x0) at gconf.c:2359
#13 0xb71c18cf in gconf_engine_connect (conf=0x8635c58, start_if_not_found=0, err=0x0) at gconf.c:359
#14 0xb71c2071 in gconf_engine_get_default () at gconf.c:608
#15 0xb71c8831 in gconf_client_get_default () at gconf-client.c:452
#16 0xb76e8d94 in setup_offline_listener (eol=0x862f120) at e-offline-listener.c:89
#17 0xb76e8e6e in e_offline_listener_new () at e-offline-listener.c:113
#18 0x0804b6d0 in main (argc=1, argv=0xbfd112d4) at e-data-book-factory.c:599
(gdb)
Comment 16 Pacho Ramos gentoo-dev 2011-06-03 18:50:27 UTC
Please use evolution and evolution-data-server versions from testing, they fix a ton of problems
Comment 17 Joseph 2011-06-03 23:13:48 UTC
I just recompiled (~x86)
mail-client/evolution-2.32.2-r3
gnome-extra/evolution-date-server-2.32.2-r1

but it did not solved anything, e-addressbook-factory still take 95% of CPU but only on my x86 system.
My Intel amd64 is not effected but my ther AMD amd64 

Anyhow, I've switched to thunderbird client and I like it, so no going back to evolution for now. 
You can close this bug.
Comment 18 Pacho Ramos gentoo-dev 2011-06-04 13:42:06 UTC
Please try this:
http://bugs.gentoo.org/show_bug.cgi?id=354233#c68
Comment 19 Joseph 2011-06-04 20:36:16 UTC
(In reply to comment #18)
> Please try this:
> http://bugs.gentoo.org/show_bug.cgi?id=354233#c68

I confirmed, this solves the problem:

USE=-qt4 emerge -1 cairo
emerge -1 pango
emerge -1 libgweather
emerge -1 evolution-data-server

I was re-emerging all these packages except "pango"

Thank you!
Comment 20 Pacho Ramos gentoo-dev 2011-06-05 09:30:11 UTC
This is a duplicate then

*** This bug has been marked as a duplicate of bug 354233 ***