Gnucash crashing on startup

John Ralls jralls at ceridwen.us
Sat Mar 4 10:12:16 EST 2017


> On Mar 4, 2017, at 4:38 AM, Sahib Jakhar <sahib.jakhar at gmail.com> wrote:
> 
> Hi,
> 
> I did try debugging the issue. What I found was that there was an
> entry in transactions table that was causing it to fail:
> 
> MariaDB [gnucash]> select * from transactions where guid =
> '2a5091520315311f4d96ba2931b1b5ac';
> +----------------------------------+----------------------------------+-----+---------------------+---------------------+-------------+
> | guid                             | currency_guid
> | num | post_date           | enter_date          | description |
> +----------------------------------+----------------------------------+-----+---------------------+---------------------+-------------+
> | 2a5091520315311f4d96ba2931b1b5ac | ff62a21de84fce905528e791e7c0ef47
> |     | 0000-00-00 00:00:00 | 2017-03-01 19:14:28 |             |
> +----------------------------------+----------------------------------+-----+---------------------+---------------------+-------------+
> 
> As can be seen post_date is just empty. I don't know how this entry
> came into this table, but this was what was causing the failure.
> Corresponding to the above there was a single entry in splits table, as follows:
> 
> MariaDB [gnucash]> select * from splits where tx_guid =
> '2a5091520315311f4d96ba2931b1b5ac';
> +----------------------------------+----------------------------------+----------------------------------+------+--------+-----------------+----------------+-----------+-------------+--------------+----------------+----------+
> | guid                             | tx_guid
> | account_guid                     | memo | action | reconcile_state |
> reconcile_date | value_num | value_denom | quantity_num |
> quantity_denom | lot_guid |
> +----------------------------------+----------------------------------+----------------------------------+------+--------+-----------------+----------------+-----------+-------------+--------------+----------------+----------+
> | 5b08b3a7c49968ef179db44a8a79a2dd | 2a5091520315311f4d96ba2931b1b5ac
> | 488162a766324a340feec656f7e1b0f6 |      |        | n               |
> NULL           |         0 |         100 |            0 |
> 100 | NULL     |
> +----------------------------------+----------------------------------+----------------------------------+------+--------+-----------------+----------------+-----------+-------------+----
> 
> I deleted both of the above two and now it is working. I don't know
> how much help the above information would be, but stack trace follows:

Thanks, we obviously need an extra check for NULL in the backend before passing the date on. I'll add that for the next release. Unfortunately there's no way to know what caused the first crash that created the corrupt transaction in the first place.

Regards,
John Ralls



More information about the gnucash-user mailing list