After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 733809 - vasprintf(): tracker-store killed by SIGSEGV
vasprintf(): tracker-store killed by SIGSEGV
Status: RESOLVED DUPLICATE of bug 735406
Product: tracker
Classification: Core
Component: Store
1.0.x
Other Linux
: Normal major
: ---
Assigned To: tracker-general
tracker-general
Depends on:
Blocks:
 
 
Reported: 2014-07-27 07:16 UTC by Igor Gnatenko
Modified: 2015-07-12 19:30 UTC
See Also:
GNOME target: ---
GNOME version: 3.13/3.14



Description Igor Gnatenko 2014-07-27 07:16:07 UTC
Description of problem:
Happened on first  login after upgrading to rawhide from FC20

Version-Release number of selected component:
tracker-1.0.2-1.fc22

Additional info:
reporter:       libreport-2.2.3
backtrace_rating: 4
cmdline:        /usr/libexec/tracker-store
crash_function: vasprintf
executable:     /usr/libexec/tracker-store
kernel:         3.16.0-0.rc4.git3.1.fc22.x86_64
runlevel:       N 5
type:           CCpp
uid:            1000

Truncated backtrace:
Thread no. 1 (10 frames)
 #2 vasprintf at /usr/include/bits/stdio2.h:210
 #3 g_vasprintf at gprintf.c:316
 #4 g_strdup_vprintf at gstrfuncs.c:507
 #5 g_error_new_valist at gerror.c:388
 #6 g_set_error at gerror.c:558
 #7 cache_insert_metadata_decomposed at /usr/lib64/tracker-1.0/libtracker-data.so.0
 #8 tracker_data_insert_statement_with_string at /usr/lib64/tracker-1.0/libtracker-data.so.0
 #9 tracker_sparql_query_parse_construct_property_list_not_empty at /usr/lib64/tracker-1.0/libtracker-data.so.0
 #10 tracker_sparql_query_execute_insert_or_delete at /usr/lib64/tracker-1.0/libtracker-data.so.0
 #11 tracker_sparql_query_execute_update at /usr/lib64/tracker-1.0/libtracker-data.so.0
Comment 1 Igor Gnatenko 2014-07-27 07:16:53 UTC
[New LWP 2481]
[New LWP 2483]
[New LWP 2316]
[New LWP 2363]
[New LWP 2482]
[New LWP 2484]
[New LWP 2360]
[New LWP 2362]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/libexec/tracker-store'.
Program terminated with signal SIGSEGV, Segmentation fault.

Thread 1 (Thread 0x7fe953fff700 (LWP 2481))

  • #0 _IO_vfprintf_internal
  • #1 __GI___vasprintf_chk
  • #2 vasprintf
    at /usr/include/bits/stdio2.h line 210
  • #3 g_vasprintf
  • #4 g_strdup_vprintf
  • #5 g_error_new_valist
  • #6 g_set_error
    at gerror.c line 558
  • #7 cache_insert_metadata_decomposed
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #8 tracker_data_insert_statement_with_string
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #9 tracker_sparql_query_parse_construct_property_list_not_empty
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #10 tracker_sparql_query_execute_insert_or_delete
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #11 tracker_sparql_query_execute_update
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #12 update_sparql
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #13 _tracker_store_pool_dispatch_cb_gfunc
  • #14 g_thread_pool_thread_proxy
    at gthreadpool.c line 307
  • #15 g_thread_proxy
    at gthread.c line 764
  • #16 start_thread
    at pthread_create.c line 310
  • #17 clone
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S line 109
From                To                  Syms Read   Shared Object Library
0x00007fe96efaad00  0x00007fe96effc959  Yes (*)     /usr/lib64/tracker-1.0/libtracker-data.so.0
0x00007fe96ed6b930  0x00007fe96ed7d515  Yes (*)     /usr/lib64/tracker-1.0/libtracker-common.so.0
0x00007fe96eb3cef0  0x00007fe96eb4db74  Yes (*)     /lib64/libtracker-sparql-1.0.so.0
0x00007fe96e7e8b00  0x00007fe96e8bb8ab  Yes         /lib64/libgio-2.0.so.0
0x00007fe96e56ddb0  0x00007fe96e59e1d6  Yes         /lib64/libgobject-2.0.so.0
0x00007fe96e360190  0x00007fe96e361075  Yes         /lib64/libgmodule-2.0.so.0
0x00007fe96e043960  0x00007fe96e0df9e9  Yes         /lib64/libglib-2.0.so.0
0x00007fe96dd72150  0x00007fe96de02f1f  Yes         /lib64/libsqlite3.so.0
0x00007fe96db53200  0x00007fe96db5f729  Yes         /lib64/libz.so.1
0x00007fe96d84e610  0x00007fe96d8bfd31  Yes         /lib64/libm.so.6
0x00007fe96d631ac0  0x00007fe96d63e551  Yes         /lib64/libpthread.so.0
0x00007fe96d2854d0  0x00007fe96d3d4da4  Yes         /lib64/libc.so.6
0x00007fe96d062620  0x00007fe96d063ce7  Yes         /lib64/libuuid.so.1
0x00007fe96ccea6b0  0x00007fe96cdfd615  Yes         /lib64/libicui18n.so.52
0x00007fe96c925710  0x00007fe96c9d9bf8  Yes         /lib64/libicuuc.so.52
0x00007fe96b066570  0x00007fe96b066670  Yes (*)     /lib64/libicudata.so.52
0x00007fe96ae5f870  0x00007fe96ae63fbc  Yes         /lib64/libffi.so.6
0x00007fe96ac5aed0  0x00007fe96ac5bade  Yes         /lib64/libdl.so.2
0x00007fe96aa3b500  0x00007fe96aa4e527  Yes         /lib64/libselinux.so.1
0x00007fe96a81da90  0x00007fe96a82d131  Yes         /lib64/libresolv.so.2
0x00007fe96f21eb10  0x00007fe96f23a7a0  Yes         /lib64/ld-linux-x86-64.so.2
0x00007fe96a566950  0x00007fe96a5d32f9  Yes         /lib64/libstdc++.so.6
0x00007fe96a2f6af0  0x00007fe96a3069d5  Yes         /lib64/libgcc_s.so.1
0x00007fe96a0886f0  0x00007fe96a0d67d5  Yes         /lib64/libpcre.so.1
0x00007fe969e64f30  0x00007fe969e7ad72  Yes         /lib64/liblzma.so.5
0x00007fe9636ec5c0  0x00007fe9636ed1c4  Yes         /usr/lib64/gconv/ISO8859-1.so
0x00007fe9634e2be0  0x00007fe9634e78ce  Yes         /usr/lib64/gio/modules/libdconfsettings.so
0x00007fe962ab6cf0  0x00007fe962ad0f06  Yes         /usr/lib64/gio/modules/libgvfsdbus.so
0x00007fe962880d20  0x00007fe962897e76  Yes         /usr/lib64/gvfs/libgvfscommon.so
0x00007fe962634730  0x00007fe96265eb9e  Yes         /lib64/libbluray.so.1
0x00007fe96f3847b0  0x00007fe96f38bcca  Yes (*)     /lib64/libudev.so.1
0x00007fe96242df10  0x00007fe96242e7f5  Yes         /lib64/libutil.so.1
0x00007fe9620f5870  0x00007fe9621d6f2e  Yes         /lib64/libxml2.so.2
0x00007fe961e2bea0  0x00007fe961e9a5a2  Yes         /lib64/libfreetype.so.6
0x00007fe961c172f0  0x00007fe961c1a5b7  Yes         /lib64/librt.so.1
0x00007fe961a06760  0x00007fe961a12462  Yes (*)     /lib64/libbz2.so.1
0x00007fe9617d7500  0x00007fe9617f8da7  Yes         /lib64/libpng16.so.16
(*): Shared library is missing debugging information.
$1 = 0x0
$2 = 0x0
rax            0x0	0
rbx            0x0	0
rcx            0xffffffffffffffff	-1
rdx            0x7fe953ffe898	140640113387672
rsi            0x7fe96f006070	140640566403184
rdi            0x4c063d90	1275477392
rbp            0x7fe953ffe5f0	0x7fe953ffe5f0
rsp            0x7fe953ffe030	0x7fe953ffe030
r8             0x4c063d90	1275477392
r9             0xd	13
r10            0x646e612027383832	7236828441955809330
r11            0x7fe96e0a2080	140640550264960
r12            0x7fe953ffe7a0	140640113387424
r13            0x7fe96f006020	140640566403104
r14            0x7fe96d2b48c2	140640535660738
r15            0x7fe953ffe600	140640113387008
rip            0x7fe96d2b3b00	0x7fe96d2b3b00 <_IO_vfprintf_internal+12880>
eflags         0x10286	[ PF SF IF RF ]
cs             0x33	51
ss             0x2b	43
ds             0x0	0
es             0x0	0
fs             0x0	0
gs             0x0	0
st0            <unavailable>
st1            <unavailable>
st2            <unavailable>
st3            <unavailable>
st4            <unavailable>
st5            <unavailable>
st6            <unavailable>
st7            <unavailable>
fctrl          <unavailable>
fstat          <unavailable>
ftag           <unavailable>
fiseg          <unavailable>
fioff          <unavailable>
foseg          <unavailable>
fooff          <unavailable>
fop            <unavailable>
xmm0           {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm1           {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm2           {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm3           {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm4           {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm5           {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm6           {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm7           {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm8           {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm9           {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm10          {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm11          {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm12          {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm13          {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm14          {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
xmm15          {v4_float = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_double = {<unavailable>, <unavailable>}, v16_int8 = {<unavailable> <repeats 16 times>}, v8_int16 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>, <unavailable>}, v4_int32 = {<unavailable>, <unavailable>, <unavailable>, <unavailable>}, v2_int64 = {<unavailable>, <unavailable>}, uint128 = <unavailable>}
mxcsr          <unavailable>
Dump of assembler code from 0x7fe96d2b3aec to 0x7fe96d2b3b40:
   0x00007fe96d2b3aec <_IO_vfprintf_internal+12860>:	jbe    0x7fe96d2b28f6 <_IO_vfprintf_internal+8262>
   0x00007fe96d2b3af2 <_IO_vfprintf_internal+12866>:	jmpq   0x7fe96d2b2c72 <_IO_vfprintf_internal+9154>
   0x00007fe96d2b3af7 <_IO_vfprintf_internal+12871>:	xor    %eax,%eax
   0x00007fe96d2b3af9 <_IO_vfprintf_internal+12873>:	or     $0xffffffffffffffff,%rcx
   0x00007fe96d2b3afd <_IO_vfprintf_internal+12877>:	mov    %r8,%rdi
=> 0x00007fe96d2b3b00 <_IO_vfprintf_internal+12880>:	repnz scas %es:(%rdi),%al
   0x00007fe96d2b3b02 <_IO_vfprintf_internal+12882>:	movl   $0x0,-0x4d0(%rbp)
   0x00007fe96d2b3b0c <_IO_vfprintf_internal+12892>:	mov    %rcx,%rax
   0x00007fe96d2b3b0f <_IO_vfprintf_internal+12895>:	not    %rax
   0x00007fe96d2b3b12 <_IO_vfprintf_internal+12898>:	lea    -0x1(%rax),%r9
   0x00007fe96d2b3b16 <_IO_vfprintf_internal+12902>:	jmpq   0x7fe96d2b38e4 <_IO_vfprintf_internal+12340>
   0x00007fe96d2b3b1b <_IO_vfprintf_internal+12907>:	lea    -0x480(%rbp),%rax
   0x00007fe96d2b3b22 <_IO_vfprintf_internal+12914>:	mov    %r8,-0x470(%rbp)
   0x00007fe96d2b3b29 <_IO_vfprintf_internal+12921>:	movq   $0x0,-0x480(%rbp)
   0x00007fe96d2b3b34 <_IO_vfprintf_internal+12932>:	mov    %rax,-0x588(%rbp)
   0x00007fe96d2b3b3b <_IO_vfprintf_internal+12939>:	mov    -0x510(%rbp),%eax
End of assembler dump.
Comment 2 Mehmet Giritli 2014-08-01 13:51:43 UTC
I believe I have a similar case on Gentoo. tracker-store seg faults after a while. gdb backtrace is as follows:

Program received signal SIGSEGV, Segmentation fault.

Thread 140737230501632 (LWP 32509)

  • #0 vfprintf
    from /lib64/libc.so.6
  • #1 __vasprintf_chk
    from /lib64/libc.so.6
  • #2 g_vasprintf
    from /usr/lib64/libglib-2.0.so.0
  • #3 g_strdup_vprintf
    from /usr/lib64/libglib-2.0.so.0
  • #4 g_error_new_valist
    from /usr/lib64/libglib-2.0.so.0
  • #5 g_set_error
    from /usr/lib64/libglib-2.0.so.0
  • #6 cache_insert_metadata_decomposed
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #7 cache_insert_metadata_decomposed
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #8 tracker_data_insert_statement_with_uri
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #9 handle_blank_node
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #10 tracker_data_insert_statement_with_uri
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #11 tracker_sparql_query_parse_construct_property_list_not_empty
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #12 tracker_sparql_query_execute_insert_or_delete
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #13 tracker_sparql_query_execute_update
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #14 update_sparql
    from /usr/lib64/tracker-1.0/libtracker-data.so.0
  • #15 _tracker_store_pool_dispatch_cb_gfunc
  • #16 g_thread_pool_thread_proxy
    from /usr/lib64/libglib-2.0.so.0
  • #17 g_thread_proxy
    from /usr/lib64/libglib-2.0.so.0
  • #18 start_thread
    from /lib64/libpthread.so.0
  • #19 clone
    from /lib64/libc.so.6

Comment 3 Debarshi Ray 2014-10-10 15:03:33 UTC
There are a bunch of these crashes reported against tracker-1.0.2 in the Fedora bugzilla. See https://bugzilla.redhat.com/show_bug.cgi?id=1119251 and its duplicates. Looking at 'git log 1.0.0..1.2.2 src/libtracker-data/tracker-data-update.c', I would say that it is still relevant for 1.2.x.

One of the duplicates (ie. https://bugzilla.redhat.com/show_bug.cgi?id=1127679) has a better backtrace than the ones reported here. See https://bugzilla.redhat.com/attachment.cgi?id=924871
Comment 4 Martyn Russell 2015-07-12 19:30:43 UTC

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