GNOME Bugzilla – Bug 338203
EDS Crash @ Startup
Last modified: 2006-07-29 08:37:16 UTC
Steps to reproduce: Often reported issue of getting a crash at startup, finally I got one myself: Stack trace: Backtrace was generated from '/opt/gnome/libexec/evolution-data-server-1.6' Using host libthread_db library "/lib/tls/libthread_db.so.1". [Thread debugging using libthread_db enabled] [New Thread 1085556288 (LWP 25479)] [New Thread 1094069168 (LWP 25542)] [Thread debugging using libthread_db enabled] [New Thread 1085556288 (LWP 25479)] [New Thread 1094069168 (LWP 25542)] [Thread debugging using libthread_db enabled] [New Thread 1085556288 (LWP 25479)] [New Thread 1094069168 (LWP 25542)] [New Thread 1096170416 (LWP 25541)] [New Thread 1103461296 (LWP 25519)] [New Thread 1091963824 (LWP 25486)] 0xffffe410 in ?? ()
+ Trace 67586
Thread 3 (Thread 1096170416 (LWP 25541))
Other information:
Thanks for the bug report. Unfortunately, that stack trace is not very useful in determining the cause of the crash. Can you get us one with debugging symbols? Please see http://live.gnome.org/GettingTraces for more information on how to do so.
This has the debugging traces.
*** Bug 337374 has been marked as a duplicate of this bug. ***
could be a dup of bug 334065 according to stacktrace
*** Bug 344210 has been marked as a duplicate of this bug. ***
Created attachment 69683 [details] [review] Fixes the bug
chen: Is there a way to check for all places where this threading problem might happen and change all of them? Looking forward to testing these EDS patches.
Yes, we have already replaced some of the non-thread safe functions with thread safe implementations. There are some pending, which is being delt now. All the above traces show the crash at the same point. We are looking into other crashes also and harish is grouping the related ones so that they can be solved at a higher level.
Chen, I prefer the use of g_snprintf - the rest of the patch looks fine. Also, s/ size_t size = 17; / #define ISODATE_LENGTH 17 /* 4+2+2+1+2+2+2+1 + 1 */ ... size_t size = ISODATE_LENGTH; / would look more elegant.
Excellent that you are looking at these issues as part of the big picture. I would bet the percentage of people running Evolution on a single processor is very high. Our is running a quad-hyper-threaded machine, and shows up as 8 CPUs. I think it creates a very different runtime environment for Evo. Very much looking forward to testing these patches.
Made the suggested changes and committed the patch to cvs HEAD and gnome-2-14 branch.