Re: [Tracker] Use of fork() in tracker-extract-pdf



Hi

Am 16.08.2013 um 13:23 schrieb Martyn Russell <martyn lanedo com>:

On 14/08/13 15:36, Ralph Böhme wrote:

Am 14.08.2013 um 14:33 schrieb Ralph Böhme <rb netafp com>:
Looks like we're using malloc() in a signal handler. That must be
l.469 in tracker-extract-pdf.c:

g_debug ("Parent:   Zombie %d reaped", child_pid); ... I'll run
another test with the log statements removed and report back.

success, that fixes the issue.

<https://github.com/slowfranklin/tracker/commit/88ae53a78b48e39f4fe39b03217d629733d746c0>

The change to increase the watchdog timeout in tracker-extract from
10 to (afair) 120 seconds was in place too though, but from looking
at the tracker logs the whole process of indexing ~1100 files, a
subset of that are the large PDFs I mentioned, only took 58 seconds
so I assume fixing the signal handler is all that's needed for now.

Seriously? Removing the debug statement is fixing the issue for you?

yes, it fixes one issue and since adding the fix to my code I haven't run into any other issue yet.

This one is definitely a bug, you're not supposed to use non async-signal-safe stuff in a signal handler. As 
g_debug() calls malloc(), which is not async-signal-safe, we MUST remove the log statement from the signal 
handler.

-r

-- 
Ralph Böhme <rb netafp com>
Netatalk Developer | Support | Services
Curslacker Deich 254, 21039 Hamburg, Germany
http://www.netafp.com/

Attachment: smime.p7s
Description: S/MIME cryptographic signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]