GC 2.6.1 Crashing on Transaction Report

Geert Janssens janssens-geert at telenet.be
Tue Mar 25 05:26:12 EDT 2014


Hi Roland,

The VM Stack overflow is indeed the core of the issue. This is due to some inefficient code in 
GnuCash that only gets triggered when using guile 2 (as is the case on Fedora 20).

I managed to fix this bug with a little help from the guile community. GnuCash 2.6.3 will be 
the first stable release to carry the fix.

Until that version is available on your system the only thing you can do to prevent this crash 
is to limit the size of your report(s). You can do this by limiting the date range for your report 
or selecting only a subset of the accounts or,...

Geert

On Saturday 01 March 2014 17:39:52 Roland Roberts wrote:
> I normally do a transaction report at the end of each year to use when
> I meet with my accountant. This year, looks like I'll be doing
> something different :-/
> 
> I can do the report for /parts/ of 2013, but there is not particular
> date that causes it to fail. I've run with --debug and get this on the
> console, note that I've omitted all the "compiling..." message that
> were a result of me clearing out all my preferences and the cache.
> This is GnuCash 2.6.1 on Fedora Core 20.
> 
>     Found Finance::Quote version 1.20
>     In report.scm:
>       765: 19 [gnc:report-run 0]
>     In unknown file:
>         ?: 18 [gnc-set-busy-cursor () #t]
>     In ice-9/boot-9.scm:
>       157: 17 [catch #t #<catch-closure 1d22e80> #<catch-closure
>     1d22e60> #f]
>     In unknown file:
>         ?: 16 [apply-smob/1 #<catch-closure 1d22e80>]
>     In ice-9/boot-9.scm:
>       171: 15 [with-throw-handler #t #<catch-closure 1d22da0>
>     #<catch-closure 1d22d80>]
>     In unknown file:
>         ?: 14 [apply-smob/1 #<catch-closure 1d22da0>]
>         ?: 13 [call-with-input-string "(gnc:report-run 0)" ...]
>     In ice-9/boot-9.scm:
>     2320: 12 [save-module-excursion #<procedure 281e0f0 at
>     ice-9/eval-string.scm:65:9 ()>]
>     In ice-9/eval-string.scm:
>        44: 11 [read-and-eval #<input: string 29d9680> #:lang ...]
>        37: 10 [lp (gnc:report-run 0)]
>     In report.scm:
>       766: 9 [gnc:report-run 0]
>     In ice-9/boot-9.scm:
>       157: 8 [catch ignore #<procedure 29dbd50 at
> gnucash/main.scm:112:4 ()> ...]
>     In unknown file:
>         ?: 7 [lazy-catch #t #<procedure 29dbcf0 at
>     gnucash/main.scm:114:18 ()> ...]
>     In ice-9/boot-9.scm:
>       171: 6 [with-throw-handler #t #<catch-closure 1d22a40>
>     #<catch-closure 1d22a20>]
>     In unknown file:
>         ?: 5 [apply-smob/1 #<catch-closure 1d22a40>]
>     In report.scm:
>       770: 4 [#<procedure 29dbd80 at report.scm:767:5 ()>]
>       749: 3 [gnc:report-render-html # #t]
>     In html-document.scm:
>       196: 2 [gnc:html-document-render # #t]
>     In ice-9/boot-9.scm:
>       102: 1 [#<procedure 3781d00 at ice-9/boot-9.scm:97:6 (thrown-k .
> args)> vm-error ...]
>     In unknown file:
>         ?: 0 [apply-smob/1 #<catch-closure 1d22a20> vm-error ...]
>     Aborted
> 
> The tail of the gnucash trace file is here:
> 
>     * 17:27:55  INFO <gnc.gui>
> [gnc_options_dialog_build_contents_full] Default Section name is
> General
>     * 17:27:55  INFO <gnc.gui> [gnc_options_dialog_append_page]
>     Page_label is Accounts
>     * 17:27:55  INFO <gnc.gui> [gnc_options_dialog_append_page] Page
>     name is Accounts and page_count is 0
>     * 17:27:55  INFO <gnc.gui> [gnc_options_dialog_append_page]
>     Page_label is Display
>     * 17:27:55  INFO <gnc.gui> [gnc_options_dialog_append_page] Page
>     name is Display and page_count is 1
>     * 17:27:55  INFO <gnc.gui> [gnc_options_dialog_append_page]
>     Page_label is General
>     * 17:27:55  INFO <gnc.gui> [gnc_options_dialog_append_page] Page
>     name is General and page_count is 2
>     * 17:27:55  INFO <gnc.gui> [gnc_options_dialog_append_page]
>     Page_label is Sorting
>     * 17:27:55  INFO <gnc.gui> [gnc_options_dialog_append_page] Page
>     name is Sorting and page_count is 3
>     * 17:27:55  INFO <gnc.gui> [gnc_options_dialog_list_select_cb]
> Index is 2
>     * 17:28:01  INFO <qof.object> [qof_object_foreach] type=Split
>     * 17:28:01  INFO <qof.engine> [qof_collection_foreach] Hash Table
>     size of Split before is 81488
>     * 17:28:01  INFO <qof.engine> [qof_collection_foreach] Hash Table
>     size of Split after is 81488
>     * 17:28:01  INFO <qof.query> [qof_query_run_internal] matching
>     objects=0x87cef60 count=942
>     * 17:28:05  WARN <gnc.report.core> Failure running report: ERROR:
> In procedure apply-smob/1:
>     ERROR: Wrong number of arguments to #<procedure display-error (_ _
> _ _ _ _)>
>     In unknown file:
>         ?: 19 [apply-smob/1 #<catch-closure 1d22da0>]
>         ?: 18 [call-with-input-string "(gnc:report-run 0)" ...]
>     In ice-9/boot-9.scm:
>     2320: 17 [save-module-excursion #<procedure 281e0f0 at
>     ice-9/eval-string.scm:65:9 ()>]
>     In ice-9/eval-string.scm:
>        44: 16 [read-and-eval #<input: string 29d9680> #:lang ...]
>        37: 15 [lp (gnc:report-run 0)]
>     In report.scm:
>       766: 14 [gnc:report-run 0]
>     In ice-9/boot-9.scm:
>       157: 13 [catch ignore #<procedure 29dbd50 at
>     gnucash/main.scm:112:4 ()> ...]
>     In unknown file:
>         ?: 12 [lazy-catch #t #<procedure 29dbcf0 at
>     gnucash/main.scm:114:18 ()> ...]
>     In ice-9/boot-9.scm:
>       171: 11 [with-throw-handler #t #<catch-closure 1d22a40>
>     #<catch-closure 1d22a20>]
>     In unknown file:
>         ?: 10 [apply-smob/1 #<catch-closure 1d22a40>]
>     In report.scm:
>       770: 9 [#<procedure 29dbd80 at report.scm:767:5 ()>]
>       749: 8 [gnc:report-render-html # #t]
>     In html-document.scm:
>       196: 7 [gnc:html-document-render # #t]
>     In ice-9/boot-9.scm:


More information about the gnucash-user mailing list