GNOME Bugzilla – Bug 747929
freeze and extremely high memory usage with huge address books
Last modified: 2018-01-24 15:15:51 UTC
After changing address book to a corporate Exchange "Global address list", gnome contact freezes while downloading contacts. A few minutes later, contacts show up and the process uses around 6gb ram and is still frozen. Fedora 21. Global address list in Exchange contains at least 40,000 entries.
Seems to appear in Fedora 22 and 23 with 3.16 revision. Additional information here : https://bugzilla.redhat.com/show_bug.cgi?id=919889
I encounter this same problem regularly, and gnome-contacts ends up killed by the OOM killer, but not before the system becomes unusable for a full minute or so.
Same here. Large Exchange Global address list eats up all memory, freezing the X session. Evolution 3.18.4. I have to kill both 'gnome-contacts' and 'evolution-addressbook-factory' in order for the hard-disk to calm down and getting the system back to a usable state. Disabling 'Global Address List' in evolution 's contacts preferences seem to fix the memory issue, but leaves you with a disability to use the corporate address book.
I have the same issue, occurring just now on a fresh installation of Fedora 23. From the Redhat bugzilla, I have a backtrace from a while ago
+ Trace 236060
I will try to obtain a new backtrace once I notice the problem again.
Refiling to 3.18; people are still reporting this.
Ok I had the issue occur on an up to date Fedora 23. I have gdb running on the process. I took a backtrace of all threads, as you can see here:
+ Trace 236151
Thread 1 (Thread 0x7f846369da80 (LWP 8722))
Top shows the program using over 70% of my system memory, and the process does not appear to finish. It sometimes brings the entire system to a slog or freeze, but appears to not have managed that this time.
For reference, I took a second trace after a few minutes again.
+ Trace 236152
Hopefully two traces maybe will show where it gets stuck?
Reproduced on 3.20 too (gnome-contacts-3.20.0-1.fc24.x86_64.rpm). In my case, the address book is a CardDAV account on fastmail.com with ~34,000 contacts.
I also still reproduce this on 3.20 as well. I will once again try to get a back trace when it happens next.
I've reproduced this using gnome-contacts-3.20.0-1.fc24.x86_64 on Fedora 24. I have a backtrace of every thread here.
+ Trace 236479
Confirmed (above) in at least 3.20, probably still present in newer versions...
Hey everyone! I realize that this is a very annoying problem for you and I did some investigating. On one hand, this is due to libfolks (the library we use) using a lot of memory. This is not easily fixed in the short term (but will hopefully improve in the long term). On the other hand, GNOME Contacts has been way too eager in loading and caching some extra information (e.g. to improve filter speeds). Now, I've been doing some work on this code and on my machine, I have some small but noticeable results. Now, is anyone of you willing to try the latest version on git to see if they see any improvement? If so, then I can try to find a bit more spots where to save memory, but if it doesn't matter too much, then the focus should shift to fixing the problem in folks.
> On the other hand, GNOME Contacts has been way too eager in loading and caching some extra information (e.g. to improve filter speeds). Now, I've been doing some work on this code and on my machine, I have some small but noticeable results. Now, is anyone of you willing to try the latest version on git to see if they see any improvement? If so, then I can try to find a bit more spots where to save memory, but if it doesn't matter too much, then the focus should shift to fixing the problem in folks. Thank you for digging into this! It's been a while since I've seen a complete system lockup like before, and it was not easily reproducible. > On one hand, this is due to libfolks (the library we use) using a lot of memory. This is not easily fixed in the short term (but will hopefully improve in the long term). I agree that it's likely in the libfolks code. In some sense, it may not be possible to "fix" because in Chad Versace's example of 34000 accounts is simply a lot of accounts. That's also true of the active directory setup I have here as well. I will note that it has been a bit since I've seen the issue. Partly this is due to change in work habbit (I had to work remotely from a laptop for some time, and have been remote shell into the system, so I'm not running the graphical stack as often).
34,000 accounts isn't a lot. $ sqlite3 contacts.db 'select count(*) from folder_id;' 454660 In Intel we had a similar order of magnitude.
-- GitLab Migration Automatic Message -- This bug has been migrated to GNOME's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gnome-contacts/issues/62.