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 654053 - crash on initial learning attempt of translation memory tab in prefs dialogue
crash on initial learning attempt of translation memory tab in prefs dialogue
Status: RESOLVED FIXED
Product: gtranslator
Classification: Other
Component: general
HEAD
Other Linux
: Normal critical
: 2.0
Assigned To: gtranslator-maint
gtranslator-maint
Depends on:
Blocks:
 
 
Reported: 2011-07-05 20:55 UTC by Christian Kirbach
Modified: 2013-04-19 21:33 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
backtrace as text file (8.20 KB, text/plain)
2011-07-06 16:56 UTC, Christian Kirbach
Details
backtrace (5.20 KB, text/plain)
2012-04-04 18:30 UTC, Christian Kirbach
Details

Description Christian Kirbach 2011-07-05 20:55:57 UTC
Version     : 2.90.4

[New LWP 1925]
[New LWP 1952]
[New LWP 1929]
[New LWP 1928]
[Thread debugging using libthread_db enabled]
Core was generated by `gtranslator'.
Program terminated with signal 11, Segmentation fault.

Thread 1 (Thread 0x7f5ece629940 (LWP 1925))

  • #0 gtr_gda_store_list
    at gtr-gda.c line 404
  • #1 add_to_database
    at gtr-preferences-dialog.c line 672
  • #2 g_main_dispatch
    at gmain.c line 2441
  • #3 g_main_context_dispatch
    at gmain.c line 3014
  • #4 g_main_context_iterate
    at gmain.c line 3092
  • #5 g_main_loop_run
    at gmain.c line 3300
  • #6 gtk_main
    at gtkmain.c line 1358
  • #7 g_application_run
    at gapplication.c line 1322
  • #8 main
    at main.c line 117

Comment 1 Christian Kirbach 2011-07-05 20:58:15 UTC
see also Red Hat Bugzilla – Bug 713751	
https://bugzilla.redhat.com/show_bug.cgi?id=713751
Comment 2 Christian Kirbach 2011-07-05 21:39:37 UTC
Also crashing with latest version from git master
those messages may help

** (gtranslator:1334): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:1334): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:1334): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:1334): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:1334): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:1334): CRITICAL **: gda_connection_create_parser: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:1334): CRITICAL **: gda_connection_begin_transaction: assertion `GDA_IS_CONNECTION (cnc)' failed
Comment 3 Muhammet Kara 2011-07-06 12:19:33 UTC
I haven't been able to use the translation memory feature for a while because of this bug. It crashes every time I try to generate a database from existing po files.
Comment 4 Christian Kirbach 2011-07-06 16:55:41 UTC
Hi

this is the stacktrace using the latest gtranslator from git master


Starting program: /usr/local/bin/gtranslator 
[Thread debugging using libthread_db enabled]
[New Thread 0x7ffff0f3d700 (LWP 8328)]
[New Thread 0x7fffebfff700 (LWP 8329)]

** (gtranslator:8325): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:8325): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:8325): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:8325): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:8325): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:8325): CRITICAL **: gda_connection_create_parser: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:8325): CRITICAL **: gda_connection_begin_transaction: assertion `GDA_IS_CONNECTION (cnc)' failed

Program received signal SIGSEGV, Segmentation fault.
gtr_gda_store_list (tm=<optimized out>, msgs=0xd69c20 = {...}) at gtr-gda.c:404
404	      g_warning ("starting transaction failed: %s", error->message);
Missing separate debuginfos, use: debuginfo-install GConf2-2.32.3-1.fc15.x86_64 ORBit2-2.14.19-2.fc15.x86_64 PackageKit-gtk3-module-0.6.15-2.fc15.x86_64 adwaita-gtk3-theme-3.0.2-1.fc15.x86_64 dbus-glib-0.92-2.fc15.x86_64 dbus-libs-1.4.6-4.fc15.x86_64 dconf-0.7.5-1.x86_64 expat-2.0.1-11.fc15.x86_64 gettext-libs-0.18.1.1-7.fc15.x86_64 gtksourceview3-3.0.5-1.fc15.x86_64 gvfs-1.8.2-1.fc15.x86_64 libXau-1.0.6-2.fc15.x86_64 libXrender-0.9.6-2.fc15.x86_64 libcanberra-0.28-3.fc15.x86_64 libcanberra-gtk3-0.28-3.fc15.x86_64 libcroco-0.6.2-6.fc15.x86_64 libgcc-4.6.0-9.fc15.x86_64 libgda-4.2.5-1.fc15.x86_64 libgdl-3.0.0-1.fc15.x86_64 libogg-1.2.2-3.fc15.x86_64 libpeas-1.0.0-1.fc15.x86_64 librsvg2-2.32.1-3.fc15.x86_64 libtdb-1.2.9-9.fc15.x86_64 libtool-ltdl-2.4-4.fc15.x86_64 libudev-167-4.fc15.x86_64 libvorbis-1.3.2-1.fc15.x86_64 libxcb-1.7-2.fc15.x86_64 pixman-0.20.2-2.fc15.x86_64
(gdb) thread apply all bt full

Thread 1 (Thread 0x7ffff77c4940 (LWP 8325))

  • #0 gtr_gda_store_list
    at gtr-gda.c line 404
  • #1 add_to_database
    at gtr-preferences-dialog.c line 672
  • #2 g_main_dispatch
    at gmain.c line 2441
  • #3 g_main_context_dispatch
    at gmain.c line 3014
  • #4 g_main_context_iterate
    at gmain.c line 3092
  • #5 g_main_loop_run
    at gmain.c line 3300
  • #6 gtk_main
    at gtkmain.c line 1358
  • #7 g_application_run
    at gapplication.c line 1322
  • #8 main
    at main.c line 117

Comment 5 Christian Kirbach 2011-07-06 16:56:49 UTC
Created attachment 191413 [details]
backtrace as text file
Comment 6 Christian Kirbach 2011-07-06 16:59:26 UTC
looks like g_warning argument is dereferencing a null pointer

(gdb) p error
$1 = (GError *) 0x0
(gdb) p error->message
Cannot access memory at address 0x8
Comment 7 Christian Kirbach 2011-07-06 17:55:19 UTC
The issue is that gtranslator calls 
 gda_connection_begin_transaction    (GdaConnection *cnc,...)

with a null pointer as first argument

(gdb) p self->priv->db
$2 = 0x0
(gdb) p self->priv
$3 = (GtrGdaPrivate *) 0x67d850
(gdb) p *tm
value has been optimized out
(gdb) p *self
$4 = {parent_instance = {g_type_instance = {g_class = 0x67a4c0}, ref_count = 1, qdata = 0x0}, priv = 0x67d850}
Comment 8 Daniel Mustieles 2012-03-14 12:52:11 UTC
I've created the TM without any problem, in a recently compiled gTranslator from the last git version.

Could you please check if this bug is still valid?

Thanks
Comment 9 Daniel Mustieles 2012-03-29 14:47:29 UTC
Ping?

I can't reproduce the crash. Please confirm that it is still valid, or I'll close the bug, since last version from git is working properly.
Comment 10 Christian Kirbach 2012-04-04 18:28:21 UTC
I am afraid to say it is still there

Where do gtranslator's TM files reside? 

I purged .config/gtranslator before trying latest git version.



Program received signal SIGSEGV, Segmentation fault.
gtr_gda_store_list (tm=<optimized out>, msgs=0xbb4520) at gtr-gda.c:398
398	      g_warning ("starting transaction failed: %s", error->message);
Comment 11 Christian Kirbach 2012-04-04 18:30:36 UTC
Created attachment 211319 [details]
backtrace
Comment 12 Christian Kirbach 2012-04-04 18:32:27 UTC
Actually, it is better to have an expandable trace here


Program received signal SIGSEGV, Segmentation fault.
gtr_gda_store_list (tm=<optimized out>, msgs=0xbb4520) at gtr-gda.c:398
398	      g_warning ("starting transaction failed: %s", error->message);
(gdb) thread apply all bt full

Thread 1 (Thread 0x7ffff502f940 (LWP 6160))

  • #0 gtr_gda_store_list
    at gtr-gda.c line 398
  • #1 add_to_database
    at gtr-translation-memory-dialog.c line 153
  • #2 g_main_dispatch
    at gmain.c line 2515
  • #3 g_main_context_dispatch
    at gmain.c line 3052
  • #4 g_main_context_iterate
    at gmain.c line 3123
  • #5 g_main_context_iterate
    at gmain.c line 3060
  • #6 g_main_context_iteration
    at gmain.c line 3184
  • #7 g_application_run
    at gapplication.c line 1496
  • #8 main
    at main.c line 116

Comment 13 Christian Kirbach 2012-04-04 18:34:53 UTC
(gdb) p error
$1 = (GError *) 0x0


Note that I have compiled against libgda4


  $ ./configure -prefix /opt/gnome --libdir /opt/gnome/lib64 --disable-static --with-gda=4.0
Comment 14 Christian Kirbach 2012-04-04 18:44:32 UTC
Could be a libgda error
gda-connection-begin-transaction() returns false, indicating an issue, but the error object returned is a NULL pointer



http://developer-next.gnome.org/libgda/4.0/GdaConnection.html#gda-connection-begin-transaction
Comment 15 Daniel Mustieles 2012-04-05 08:49:30 UTC
I still can't reproduce the error.

I've deleted all the possible gtranslator files in my system with 

sudo find / -iname "*gtranslator*" -exec rm -rf {} \;

I've cloned a fresh copy from git, compiled with --with-gda=4.0 option, and I have created an used a TM without any problem or warnings.

I'm using a virtual machine with Ubuntu 12 (precise)... maybe the problem is in your system?

Maybe Ignacio (Gtranslator's maintainer) could help you.

BTW... with you don't use libgda 5?
Comment 16 Ignacio Casal Quinteiro (nacho) 2012-04-05 09:35:11 UTC
I just pushed a patch that should give us more information about this. Please test it and lemme know what the message says.

For the record, in the gda backend we should implement the initable interface and initialize the database on it, as in this way we would not crash and we will be able to error out correctly.
Comment 17 Christian Kirbach 2012-04-05 23:43:10 UTC
the answer is simple - Fedora 16 does not provide libgda 5 :)


Good news - the crash is gone with latest git.
Altough the import is extremely slow (it takes minutes to import a 400k PO file)
Comment 18 Christian Kirbach 2012-04-05 23:47:01 UTC
Humm, actually now I got the following crash in gtk+ while importing from an USB drive. does not look like a gtranslator issue to me.


Thread 1 (Thread 0x7ffff502e940 (LWP 15472))

  • #0 gdk_property_change
    at gdkwindow.c line 11363
  • #1 _gtk_selection_request
    at gtkselection.c line 2453
  • #2 _gtk_marshal_BOOLEAN__BOXEDv
  • #3 _g_closure_invoke_va
    at gclosure.c line 840
  • #4 g_signal_emit_valist
    at gsignal.c line 3207
  • #5 g_signal_emit
    at gsignal.c line 3352
  • #6 gtk_widget_event_internal
    at gtkwidget.c line 6380
  • #7 gtk_main_do_event
    at gtkmain.c line 1651
  • #8 gdk_event_source_dispatch
    at gdkeventsource.c line 358
  • #9 g_main_dispatch
    at gmain.c line 2515
  • #10 g_main_context_dispatch
    at gmain.c line 3052
  • #11 g_main_context_iterate
    at gmain.c line 3123
  • #12 g_main_context_iterate
    at gmain.c line 3060
  • #13 g_main_context_iteration
    at gmain.c line 3184
  • #14 g_application_run
    at gapplication.c line 1496
  • #15 main
    at main.c line 116

Comment 19 Ignacio Casal Quinteiro (nacho) 2012-04-06 08:42:20 UTC
Yes that crash does not look gtranslator's indeed...
Have you managed to get the data imported?
Comment 20 Christian Kirbach 2012-04-06 09:11:16 UTC
Thank you for fixing it Ignacio

I got word fromother translators that the version currently in Fedora suffers from this very crash. Will you do a new release soon? My feelding is this fix is significant for users.

Have not checked yet what code you changed

Yap, could import 100 po files. Import speed is a bit slower than expected, btu that is ok
Not sure why my initial import was extremely slow.


Importing also imports fuzzy strings. I believe that is not very wise. will file a seperate bug for it.
Thanks again
Comment 21 Daniel Mustieles 2012-04-06 09:26:33 UTC
Since there is a pending task for this bug (see comment #16), I'm reopening this bug to review it in the Hackfest.

About the fuzzy strings when creating the TM, could be a good task for the hackfest. Christian, when you open this bug, please notice me to include it in the hackfest's bugs list (and, of course, if you want to participate, you are welcome)
Comment 22 Ignacio Casal Quinteiro (nacho) 2012-04-06 10:05:47 UTC
Christian there is already a new release 2.91.1 but this was only packaged for f17, so you will have it on f17 when you will update.
Comment 23 Christian Kirbach 2012-04-06 14:21:59 UTC
Bug 673646 - TM imports fuzzy strings
Comment 24 Christian Kirbach 2012-04-28 17:45:04 UTC
Cool i can confirm that the crash is gone now. Upgraded to Fedora17beta which has gtranslator 2.91.3

Bug can be closed from my end
Comment 25 Ignacio Casal Quinteiro (nacho) 2012-04-28 20:11:24 UTC
There is still an issue in this bug where we have to convert the backend into an initable to be able to report errors.
Comment 26 Kjartan Maraas 2012-05-02 13:20:22 UTC
I have this exact problem with the package in Fedora 17 Beta (updated as of today)

[kmaraas@localhost gnome]$ gdb gtranslator
GNU gdb (GDB) Fedora (7.4.50.20120120-42.fc17)
Copyright (C) 2012 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 "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/gtranslator...Reading symbols from /usr/lib/debug/usr/bin/gtranslator.debug...done.
done.
(gdb) r
Starting program: /usr/bin/gtranslator 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
[New Thread 0x7ffff1512700 (LWP 28859)]
[New Thread 0x7ffff0d11700 (LWP 28860)]

** (gtranslator:28856): WARNING **: Error creating database: Ingen tilbyder «Sqlite» installert

** (gtranslator:28856): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:28856): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:28856): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:28856): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:28856): CRITICAL **: gda_connection_statement_execute_non_select: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:28856): CRITICAL **: gda_connection_create_parser: assertion `GDA_IS_CONNECTION (cnc)' failed

** (gtranslator:28856): CRITICAL **: gda_connection_begin_transaction: assertion `GDA_IS_CONNECTION (cnc)' failed

Program received signal SIGSEGV, Segmentation fault.
gtr_gda_store_list (tm=<optimized out>, msgs=0xa8b260 = {...}) at gtr-gda.c:398
398	      g_warning ("starting transaction failed: %s", error->message);
(gdb) bt
  • #0 gtr_gda_store_list
    at gtr-gda.c line 398
  • #1 add_to_database
    at gtr-translation-memory-dialog.c line 153
  • #2 g_main_dispatch
    at gmain.c line 2515
  • #3 g_main_context_dispatch
    at gmain.c line 3052
  • #4 g_main_context_iterate
    at gmain.c line 3123
  • #5 g_main_context_iteration
    at gmain.c line 3184
  • #6 g_application_run
    at gapplication.c line 1496
  • #7 main
    at main.c line 116

Comment 27 Ignacio Casal Quinteiro (nacho) 2012-05-02 13:22:30 UTC
yup, we should not crash although for some reason the fedora package misses the sqlite provider which is weird. We should probably file a downstream bug in fedora.
Comment 28 Kjartan Maraas 2012-05-02 13:48:55 UTC
And when I read the pasted text I see this:

** (gtranslator:28856): WARNING **: Error creating database: Ingen tilbyder
«Sqlite» installert

Installing libgda-sqlite fixed it for me. Someone needs to add a dep to the package in Fedora I guess.
Comment 29 Ignacio Casal Quinteiro (nacho) 2012-05-02 14:17:16 UTC
ouch, didn't know about that. I'll add it in the next release. Thanks.
Comment 30 Muhammet Kara 2013-01-23 22:36:08 UTC
The problem still exists in Fedora 18.

I have been able to use the translation memory functionality only after installing the libgda-sqlite package.

Please see also Red Hat Bugzilla – Bug 842050
https://bugzilla.redhat.com/show_bug.cgi?id=842050
Comment 31 Christian Kirbach 2013-04-19 21:08:38 UTC
Muhammet this is a Fedora packaging issue. The package must depend on the libgda-sqlite package. Please report the issue to Fedora.
Comment 32 Muhammet Kara 2013-04-19 21:23:02 UTC
(In reply to comment #31)
> Muhammet this is a Fedora packaging issue. The package must depend on the
> libgda-sqlite package. Please report the issue to Fedora.

Christian it has already been reported on Fedora bugzilla. Please kindly see the link on comment#30.

So, should we mark this bug as [not_gnome]?
Comment 33 Christian Kirbach 2013-04-19 21:33:51 UTC
The crash I once reported got fixed (Comment 24).
So closing this bug as fixed.