GNOME Bugzilla – Bug 126471
crash deleting bad transaction
Last modified: 2018-06-29 20:38:35 UTC
Package: GnuCash Severity: normal Version: 1.8.7 Synopsis: crash deleting bad transaction Bugzilla-Product: GnuCash Bugzilla-Component: Register Description: Description of Problem: crashed trying to delete a bad multicurrenty transaction in which amounts appear fine in one register view but appear missing in the other account registers. Steps to reproduce the problem: 1. all too often 1 of the 2 (or 2 of the 3) account registers showing a multicurrency transaction are missing the amounts that show fine in the other account register, even tho the exchange rate seems fine 2. delete such a transaction 3. crash Debugging Information: Backtrace was generated from '/usr/bin/guile' (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)...[New Thread 1075058816 (LWP 5294)] (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)...0xffffe002 in ?? ()
+ Trace 41548
Thread 1 (Thread 1075058816 (LWP 5294))
------- Bug moved to this database by unknown@bugzilla.gnome.org 2003-11-07 17:21 ------- Reassigning to the default owner of the component, hampton@employees.org.
Looks like the stack trace in bug 125480.
Hmm. The stack traces do not look similar to me. I cannot reproduce this on CVS HEAD, using the dataset from bug 125480, following the instructions in bug 125480 comment 5 and then hitting 'delete' in either of the registers. There is one minor annoyance: using 'delete' in the jumped-to register does not actually clear out what's displayed in the gui. Jumping to another transaction does redraw, making it clear that the delete did happen. I also cannot reproduce on the cvs 1.8 branch.
A way to reproduce "bad multicurrency transactions": Create 3 cash accounts - two of same currency (say UAH-1,UAH-2), one of another (say USD-3). In USD-3 register add transfer transaction of $5 from UAH-1 account with 5.00 exchange rate. Everything works well. From UAH-1 register split this transaction and change amount 25.00 UAH spend to 30, this makes extra 5.00 UAH for receive, assign it to UAH-2 account. Enter transaction. This 5.00 amount disappears, transaction broke and become unbalanced.
Interesting. Something must have broke this recently because it definitely USED to work just fine. I can certainly reproduce this on current 1.8 CVS. The key here is to expand the transaction splits first. I bet it also depends on the order of operations and your locale.
This might be fixed in r13343, but comment #3 makes us think this should be left open. So we are.
I think this is fall-out from data corruption due to recalling multi-currency transactions. I'm marking this as depending on bug#130451, which is at least reproducible.
Ok, I'm changing my mind about this bug. I now think that the crash was a dup of #153183, fixed in r13343. And I think comment #3 is essentially the reproduction steps for the data file in bug #139651. I'm pasting comment #3 into #139651 and closing this as dup of #153183. *** This bug has been marked as a duplicate of 153183 ***
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=126471. Please update any external references or bookmarks.