[GNC] Crash - advice please!

John Ralls jralls at ceridwen.fremont.ca.us
Sat Nov 24 07:17:40 EST 2018



> On Nov 24, 2018, at 7:20 PM, Michael Hendry <hendry.michael at gmail.com> wrote:
> 
> Following reconciliation of recent bank statements, I had prepared several income and expense reports for the year ending 31/10/2018.
> The crash occurred when I requested a Balance Sheet for the same period.
> 
> The file I was working on is ESJE.gnucash, and the most recent version of it is:
> 
> -rw-r--r--@ 1 michaelhendry  staff  79784 24 Nov 07:51 ESJE.gnucash
> 
> which was some 17 minutes before the crash, and recent relevant files are:
> 
> -rw-r--r--@ 1 michaelhendry  staff   8133 24 Nov 07:42 ESJE.gnucash.20181124073656.log
> -rw-r--r--@ 1 michaelhendry  staff  79988 24 Nov 07:36 ESJE.gnucash.20181124074325.gnucash
> -rw-r--r--@ 1 michaelhendry  staff  46339 24 Nov 07:49 ESJE.gnucash.20181124074325.log
> -rw-r--r--@ 1 michaelhendry  staff  80272 24 Nov 07:43 ESJE.gnucash.20181124075104.gnucash
> -rw-r--r--@ 1 michaelhendry  staff   5145 24 Nov 08:08 ESJE.gnucash.20181124075106.log
> -rw-------@ 2 michaelhendry  staff      0 23 Nov 16:51 ESJE.gnucash.LCK
> 
> I have made a backup copy of the ESJE.gnucash file as it existed at 07:51, and would appreciate advice on how to proceed.
> 
> My main concern is that ESJE.gnucash (and the subsequent .gnucash and .log files) may be corrupt in some way, and although I might be able to open and work on it, I’ll be setting myself up for a later failure.
> 
> Is there some way of testing a .gnucash file for internal inconsistencies?
> 
> Would it be safe to apply the 08:08 log to ESJE.gnucash?, or would I be better to retrace my steps by hand?
> 
> Obviously, I’ll reboot my computer before doing any of this.
> 
> Many thanks in advance,
> 
> Michael
> **
> 
> Crash Report follows:
> 
> Process:               Gnucash-bin [69444]
> Path:                  /Applications/Gnucash.app/Contents/MacOS/Gnucash-bin
> Identifier:            org.gnucash.Gnucash
> Version:               2.6.16 (2.6.16)
> Code Type:             X86 (Native)
> Parent Process:        ??? [1]
> Responsible:           Gnucash-bin [69444]
> User ID:               501
> 
> Date/Time:             2018-11-24 08:08:42.302 +0000
> OS Version:            Mac OS X 10.13.6 (17G3025)
> Report Version:        12
> Anonymous UUID:        6E4C0EFC-2FF3-6AA3-4C59-DBC3DB6D08BC
> 
> Sleep/Wake UUID:       6066F5D4-32FA-4C8A-A3DE-E12CD554D2A2
> 
> Time Awake Since Boot: 99000 seconds
> Time Since Wake:       2700 seconds
> 
> System Integrity Protection: enabled
> 
> Crashed Thread:        0  Dispatch queue: com.apple.main-thread
> 
> Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
> Exception Codes:       KERN_INVALID_ADDRESS at 0x00000000000000e6
> Exception Note:        EXC_CORPSE_NOTIFY
> 
> Termination Signal:    Segmentation fault: 11
> Termination Reason:    Namespace SIGNAL, Code 0xb
> Terminating Process:   exc handler [0]
> 
> VM Regions Near 0xe6:
> --> 
>    __TEXT                 0000000000001000-0000000000016000 [   84K] r-x/rwx SM=COW  /Applications/Gnucash.app/Contents/MacOS/Gnucash-bin
> 
> Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
> 0   libgncmod-gnome-utils.dylib   	0x002e9521 gnc_set_busy_cursor + 97
> 1   libgncmod-gnome-utils.dylib   	0x0031f86a gnc_file_save + 186
> 2   libgncmod-gnome-utils.dylib   	0x0030dab1 autosave_timeout_cb + 1009
> 3   libglib-2.0.0.dylib           	0x03027ebc g_timeout_dispatch + 28
> 4   libglib-2.0.0.dylib           	0x030274f1 g_main_context_dispatch + 209
> 5   libglib-2.0.0.dylib           	0x0302972a g_main_context_iterate + 410
> 6   libglib-2.0.0.dylib           	0x0302a7b7 g_main_loop_run + 263
> 7   libgtk-quartz-2.0.0.dylib     	0x0281ee91 gtk_main + 177
> 8   libgncmod-gnome-utils.dylib   	0x00324dc1 gnc_ui_start_event_loop + 81
> 9   Gnucash-bin                   	0x000145b5 inner_main + 693
> 10  libguile-2.0.22.dylib         	0x0

> 23cdda9 invoke_main_func + 57
> 11  libguile-2.0.22.dylib         	0x023a1a02 c_body + 18
> 12  libguile-2.0.22.dylib         	0x0243f94c vm_regular_engine + 24268
> 13  libguile-2.0.22.dylib         	0x02438472 scm_c_vm_run + 114
> 14  libguile-2.0.22.dylib         	0x023ab041 scm_call_4 + 65
> 15  libguile-2.0.22.dylib         	0x02433adb scm_catch_with_pre_unwind_handler + 91
> 16  libguile-2.0.22.dylib         	0x023a19ca scm_i_with_continuation_barrier + 138
> 17  libguile-2.0.22.dylib         	0x023a1aaf scm_c_with_continuation_barrier + 79
> 18  libguile-2.0.22.dylib         	0x02430bfb with_guile_and_parent + 203
> 19  libgc.1.dylib                 	0x026e921f GC_call_with_stack_base + 31
> 20  libguile-2.0.22.dylib         	0x02430c6b scm_i_with_guile_and_parent + 43
> 21  libguile-2.0.22.dylib         	0x023cdd50 scm_boot_guile + 80
> 22  Gnucash-bin                   	0x0001419d main + 1037
> 23  Gnucash-bin                   	0x000131e6 start + 54

There’s no reason to reboot your computer. You’re running a real operating system, not Microsoft.

ESJE.gnucash was the previous saved file, the autosave didn’t get far enough to rename it, so that’s OK. You can go ahead and open it without any worries. As long as the changes between 17:51 and 18:08 were transaction edits/additions only and didn’t use the business features then replaying the log file should recover your work in the 18 minutes. There’s no risk in trying it, GnuCash always renames the old file before trying to save a new one... but you can check the results in memory first as long as you get it done in less than 15 minutes (or you turn off autosave in Preferences until you’re happy with the results).

The crash is kind of interesting. It appears to be while processing a list of top-level windows. I guess the invalid one is the just-dismissed reconcile window, but do you have your reports going to tabs or to new windows?

Regards,
John Ralls



More information about the gnucash-user mailing list