[grisbi-bugs] [Grisbi 0002097]: erreur de segmentation lors de la modification des propriétés d'un état

Grisbi Bug Tracker bugtracker at grisbi.org
Sam 6 Fév 06:25:53 CET 2021


The following issue has been ASSIGNED. 
====================================================================== 
https://www.grisbi.org/bugsreports/view.php?id=2097 
====================================================================== 
Reported By:                phlpp
Assigned To:                pbiava
====================================================================== 
Project:                    Grisbi
Issue ID:                   2097
Category:                   Main
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     feedback
OS:                         Mac OS X 
Unstable Impact:            Yes 
Version OS:                 Big Sur 11.1  
Version GTK:                 
====================================================================== 
Date Submitted:             2021-02-05 16:49 CET
Last Modified:              2021-02-06 06:25 CET
====================================================================== 
Summary:                    erreur de segmentation lors de la modification des
propriétés d'un état
Description: 
sur un très gros fichier (42500 opérations ), lors de la modification d'un
état, [état existant ou état nouvellement créé] erreur de segmentation.

Pas de problème sur un autre fichier de 5000 opérations

Additional Information: 
Grisbi version: 2.0.1
	0   Grisbi                              0x00000001000d4fbd
debug_print_backtrace + 61
	1   Grisbi                              0x00000001000d4e63
debug_traitement_sigsegv + 1107
	2   libsystem_platform.dylib            0x00007fff2041dd7d _sigtramp + 29
	3   ???                                 0x00000003046d42e8 0x0 + 12959171304
	4   libglib-2.0.0.dylib                 0x000000010c51be59 g_log_writer_default
+ 185
	5   libglib-2.0.0.dylib                 0x000000010c51ad65
g_log_structured_array + 149
	6   libglib-2.0.0.dylib                 0x000000010c51a6af
g_log_default_handler + 207
	7   libglib-2.0.0.dylib                 0x000000010c51a2e9 g_logv + 1193
	8   libglib-2.0.0.dylib                 0x000000010c519e22 g_log + 130
	9   libglib-2.0.0.dylib                 0x000000010c548277 g_utf8_collate_key +
71
	10  Grisbi                              0x00000001000e0cd7
etats_config_onglet_categ_budget_sort_function + 455
	11  libgtk-3.0.dylib                    0x0000000109e26f3f
gtk_tree_store_sort_iter_changed + 1471
	12  libgtk-3.0.dylib                    0x0000000109e273ae
gtk_tree_store_set_valist + 382
	13  libgtk-3.0.dylib                    0x0000000109e27c89 gtk_tree_store_set +
377
	14  Grisbi                              0x00000001000e0ef8
etats_config_onglet_categ_budget_fill_model + 472
	15  Grisbi                              0x00000001000e0ae7
etats_config_onglet_categ_budget_get_model + 183
	16  Grisbi                              0x00000001000f3486
etats_prefs_onglet_categ_budget_tree_view_create + 22
	17  Grisbi                              0x00000001000efdeb
etats_prefs_onglet_categories_create_page + 203
	18  Grisbi                              0x00000001000eea97
etats_prefs_left_panel_populate_tree_model + 455
	19  Grisbi                              0x00000001000ee86f
etats_prefs_left_panel_create_tree_view + 847
	20  Grisbi                              0x00000001000ee2af etats_prefs_init +
319
	21  libgobject-2.0.0.dylib              0x000000010c420999
g_type_create_instance + 889
	22  libgobject-2.0.0.dylib              0x000000010c40dc42
g_object_new_internal + 50
	23  libgobject-2.0.0.dylib              0x000000010c40d49c g_object_new + 252
	24  Grisbi                              0x00000001000ed877 etats_prefs_new + 39
	25  Grisbi                              0x00000001000e2233
etats_config_personnalisation_etat + 227
	26  Grisbi                              0x00000001000ea7b8
etats_onglet_ajoute_etat + 4104
	27  libgobject-2.0.0.dylib              0x000000010c407736 _g_closure_invoke_va
+ 198
	28  libgobject-2.0.0.dylib              0x000000010c41e1cf g_signal_emit_valist
+ 1407
	29  libgobject-2.0.0.dylib              0x000000010c41edd9
g_signal_emit_by_name + 441
	30  libgtk-3.0.dylib                    0x0000000109df3969 button_clicked + 73
	31  libgobject-2.0.0.dylib              0x000000010c407736 _g_closure_invoke_va
+ 198
	32  libgobject-2.0.0.dylib              0x000000010c41e1cf g_signal_emit_valist
+ 1407
	33  libgobject-2.0.0.dylib              0x000000010c41ec02 g_signal_emit + 130
	34  libgtk-3.0.dylib                    0x0000000109ad3e96 gtk_button_clicked +
198
	35  libgtk-3.0.dylib                    0x0000000109ad8a3d
gtk_button_do_release + 109
	36  libgtk-3.0.dylib                    0x0000000109ad7fe0
gtk_real_button_released + 128
	37  libgobject-2.0.0.dylib              0x000000010c407736 _g_closure_invoke_va
+ 198
	38  libgobject-2.0.0.dylib              0x000000010c41e1cf g_signal_emit_valist
+ 1407
	39  libgobject-2.0.0.dylib              0x000000010c41ec02 g_signal_emit + 130
	40  libgtk-3.0.dylib                    0x0000000109ad8ca9
multipress_released_cb + 73
	41  libgtk-3.0.dylib                    0x0000000109ee5240
_gtk_marshal_VOID__INT_DOUBLE_DOUBLEv + 640
	42  libgobject-2.0.0.dylib              0x000000010c407736 _g_closure_invoke_va
+ 198
	43  libgobject-2.0.0.dylib              0x000000010c41e1cf g_signal_emit_valist
+ 1407
	44  libgobject-2.0.0.dylib              0x000000010c41ec02 g_signal_emit + 130
	45  libgtk-3.0.dylib                    0x0000000109c049e8
gtk_gesture_multi_press_end + 152
	46  libgobject-2.0.0.dylib              0x000000010c40ad54
g_cclosure_marshal_VOID__BOXEDv + 180
	47  libgobject-2.0.0.dylib              0x000000010c407736 _g_closure_invoke_va
+ 198
	48  libgobject-2.0.0.dylib              0x000000010c41e1cf g_signal_emit_valist
+ 1407
	49  libgobject-2.0.0.dylib              0x000000010c41ec02 g_signal_emit + 130

====================================================================== 

---------------------------------------------------------------------- 
 (0005981) LudovicRousseau (administrator) - 2021-02-05 17:00
 https://www.grisbi.org/bugsreports/view.php?id=2097#c5981 
---------------------------------------------------------------------- 
Est-ce que le problème est aussi présent sur le fichier de compte anonymisé ?
(Menu Fichier -> Rendre anonyme le fichier de comptes)
Si oui pouvez vous ajouter le fichier anonymisé (et compressé) au rapport de
bug ? 

---------------------------------------------------------------------- 
 (0005982) pbiava (administrator) - 2021-02-05 17:06
 https://www.grisbi.org/bugsreports/view.php?id=2097#c5982 
---------------------------------------------------------------------- 
Ludovic on a un problème de mémoire avec les rapports avec un très grand
nombre d'opérations concenées. On avait utilisé ulimit -s pour augmenter la
taille de la mémoire utilisable sous Linux et sous OSX. c'est peut-être encore
ça.
Phlpp as-tu quelque chose de similaire dans ton fichier .bashrc ? 

---------------------------------------------------------------------- 
 (0005983) LudovicRousseau (administrator) - 2021-02-05 17:46
 https://www.grisbi.org/bugsreports/view.php?id=2097#c5983 
---------------------------------------------------------------------- 
Sur mon macOS Mojave j'ai :
$ ulimit -s
8192

Il y a une option au linker ld :
     -stack_size size
                 Specifies the maximum stack size for the main thread in a
                 program.  Without this option a program has a 8MB stack.  The
                 argument size is a hexadecimal number with an optional lead-
                 ing 0x. The size should be a multiple of the architecture's
                 page size (4KB or 16KB).

Sinon il faut trouvez pourquoi cette action demande plus de 8 Mo de mémoire sur
la pile. Ça sent la récursion mal gérée. 

---------------------------------------------------------------------- 
 (0005985) pbiava (administrator) - 2021-02-06 06:25
 https://www.grisbi.org/bugsreports/view.php?id=2097#c5985 
---------------------------------------------------------------------- 
Je ne sais pas si on peut parler de récursivité ici. Dans ce cas on empile les
données d'un nombre trop grand d'opérations qui dépasse 3000. 

---------------------------------------------------------------------- 
 (0005986) pbiava (administrator) - 2021-02-06 06:25
 https://www.grisbi.org/bugsreports/view.php?id=2097#c5986 
---------------------------------------------------------------------- 
Phlpp as-tu eu un message d'alerte avant de lancer le rapport ? 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2021-02-05 16:49 phlpp          New Issue                                    
2021-02-05 17:00 LudovicRousseauNote Added: 0005981                          
2021-02-05 17:06 pbiava         Note Added: 0005982                          
2021-02-05 17:46 LudovicRousseauNote Added: 0005983                          
2021-02-06 06:25 pbiava         Note Added: 0005985                          
2021-02-06 06:25 pbiava         Assigned To               => pbiava          
2021-02-06 06:25 pbiava         Status                   new => feedback     
2021-02-06 06:25 pbiava         Note Added: 0005986                          
======================================================================



Plus d'informations sur la liste de diffusion bugsreports