2018-04-17 GnuCash IRC logs

00:08:46 *** O01eg has joined #gnucash
00:24:05 *** luwum[m] has joined #gnucash
00:44:05 *** Mechtilde has joined #gnucash
01:01:47 <fell> chris: SIDL_APPDATA% I took from gjanssens mail and in the glossary the respective MS page is linked.
01:02:05 <fell> ...
01:02:14 <fell> '...
01:02:44 <fell> percent C...
01:32:11 <fell> Don't care! I mixed Chrises.
01:35:16 *** fell has quit IRC
01:35:53 *** fell has joined #gnucash
01:37:47 *** Mechtilde has quit IRC
02:17:02 *** kkknewton has joined #gnucash
02:25:56 *** gncbot sets mode: +o fell
02:44:28 *** gour has joined #gnucash
02:45:23 *** gjanssens has joined #gnucash
02:45:23 *** ChanServ sets mode: +o gjanssens
02:45:41 <gjanssens> .
02:49:43 <gour> morning
02:49:46 *** fabior has joined #gnucash
02:50:43 <gour> after few months i'm back to GC (just migrated my data from hledger) and now would like to reorganize my TOA a bit...
02:53:57 <gour> e.g. i'd like to divide all my assets/expenses/liabilities accounts by the currency, e.g. having top-level Assets:Cash placeholder accounts and then Assets:Cash:EUR/HRK/USD, but every account must have Security/Currency option set, so wonder how to define Assets:Cash account or should I set locale currency for Security/currency field?
02:56:49 <gjanssens> gour: I'd suggest to use your base currenty for the top-level placeholder accounts
02:57:12 <gour> gjanssens: ok. thank you
02:57:26 *** jotrago has quit IRC
02:57:27 *** jotrago1 is now known as jotrago
02:57:58 <gour> gjanssens: but maybe, by design, they should not have currency field attached to them...or something to think about for the future?
03:03:39 *** bertbob has quit IRC
03:06:41 *** bertbob has joined #gnucash
03:17:55 *** O01eg has quit IRC
03:21:50 <gjanssens> gour: they need a currency as it's used for display purposes
03:22:50 <gour> gjanssens: ok, now i face another problem when i try to move old txns into a new account. is there some limit with delete/move account feature?
03:23:43 <gjanssens> I don't know of any, but why don't you just reparent/rename the whole account?
03:23:48 <gjanssens> Or is this something else
03:26:40 <gour> now i've assets:cash:eur/hrk/usd, but now i'd like to have assets:eur/cash;assets:hrk:cash...and GC does not allow me to do assets:cash:eur --> assets:eur:cash ?
03:27:12 <gour> however, reparenting might be proper solution
03:27:24 <gour> wasn't aware of that
03:28:26 *** harshitaneja has joined #gnucash
03:29:27 <gjanssens> You can change the account's parent in the account settings (Edit Account...)
03:30:02 <gjanssens> I have no idea why moving the transactions isn't working.
03:30:11 <gour> gjanssens: yeah, i+m just doing it!!
03:30:21 <gjanssens> :)
03:30:37 <gour> GC simply rocks and i promise not to think about #plaintextaccounting any longer :-D
03:35:43 *** chris1 has joined #gnucash
03:36:34 *** bertbob has quit IRC
03:36:42 *** chris has quit IRC
03:36:43 *** chris1 is now known as chris
03:37:37 *** bertbob has joined #gnucash
03:38:06 *** fekepp has joined #gnucash
03:49:36 *** pilotauto has quit IRC
04:09:28 *** fekepp has quit IRC
04:09:29 *** fekepp has joined #gnucash
04:18:48 *** fekepp has quit IRC
04:18:57 *** fekepp has joined #gnucash
04:21:55 *** ncv__ has joined #gnucash
04:25:24 *** fabior has quit IRC
04:36:26 *** storyjesse has joined #gnucash
04:45:14 *** gour_ has joined #gnucash
04:47:26 *** gour has quit IRC
05:05:01 *** gour_ is now known as gour
05:07:35 *** Mechtilde has joined #gnucash
05:27:35 *** bertbob has quit IRC
05:30:42 *** Mechtilde has quit IRC
05:37:20 <chris> gour: but you can unzip your xml datafile and have your #plaintextaccounting back
05:39:36 <chris> dbdoughty's reports may have some merit - problem is they are fundamentally quite different from the TR but are harder to decode than even the original TR
05:40:01 *** chris has quit IRC
05:40:14 *** chris has joined #gnucash
05:52:59 *** bertbob has joined #gnucash
05:55:26 *** jotrago1 has joined #gnucash
06:06:17 *** fekepp has quit IRC
06:06:24 *** fekepp has joined #gnucash
06:09:34 *** fekepp has quit IRC
06:19:12 *** kkknewton has quit IRC
06:34:26 *** fekepp has joined #gnucash
06:54:27 <gour> chris: i keep my XML as uncompressed due to being kept under dvcs (fossil), but after few encounters with (h)ledger/beancounts, especially the last one where i was exclusively using hčedger, i can with lot of confidence say that GC is far superior app for my own usage
06:57:05 <gour> one question: is there anything special in regard to Imbalance and Orphan account in the sense whether they should be top-level account or it's not required?
07:00:23 <gour> hmm, according to the manual it looks it's best to leave them where they are
07:01:12 *** oozer has joined #gnucash
07:08:56 *** fekepp has quit IRC
07:09:54 *** fekepp has joined #gnucash
07:13:05 *** fekepp has quit IRC
07:22:38 *** Mechtilde has joined #gnucash
07:24:41 *** boldstripe has joined #gnucash
07:28:12 *** O01eg has joined #gnucash
07:31:57 *** storyjesse has quit IRC
07:40:14 <warlord> .
08:08:56 *** fekepp has joined #gnucash
08:09:15 *** fekepp has joined #gnucash
08:25:48 *** fekepp has quit IRC
08:25:51 *** fekepp has joined #gnucash
08:56:24 *** fekepp has quit IRC
08:56:31 *** fekepp has joined #gnucash
09:23:10 *** fabior has joined #gnucash
09:24:28 *** lmat has quit IRC
09:58:52 *** Xira has joined #gnucash
10:15:18 *** jotrago1 has joined #gnucash
10:17:58 *** lmat has joined #gnucash
10:36:24 *** cyphase has quit IRC
10:40:12 *** Mechtilde has quit IRC
10:40:23 *** ArtGravity has joined #gnucash
10:45:17 *** cyphase has joined #gnucash
10:49:43 *** fekepp has quit IRC
10:51:28 *** kkknewton has joined #gnucash
11:01:09 *** boldstripe has quit IRC
11:07:00 *** KaiForce has joined #gnucash
11:10:28 *** ncv_ has joined #gnucash
11:11:38 *** ncv__ has quit IRC
11:19:00 *** ncv__ has joined #gnucash
11:20:18 *** ncv_ has quit IRC
11:26:27 *** ncv_ has joined #gnucash
11:27:43 *** boldstripe has joined #gnucash
11:27:44 *** ncv__ has quit IRC
11:31:21 *** storyjesse has joined #gnucash
11:31:40 *** boldstripe has quit IRC
11:49:29 *** storyjesse has quit IRC
11:50:00 *** ncv__ has joined #gnucash
11:51:20 *** ncv_ has quit IRC
11:53:28 *** Kaell has joined #gnucash
12:00:31 *** Kaell has quit IRC
12:06:03 *** Kaell has joined #gnucash
12:31:59 *** Kaell has quit IRC
12:32:35 <jralls> fell: It's $HOME/Library/Application Support/Gnucash always. The preferences are in $HOME/Library/Preferences/org.gnucash.gnucash.
12:35:25 <gjanssens> jralls: I'm seeing warnings of bad sql queries and I'm looking into fixing them, unless you have done that already but not yet pushed...
12:36:53 <jralls> I don't have anything I haven't pushed. Where are you seeing the warnings?
12:38:29 <gjanssens> CRIT <gnc.backend.dbi> [error_handler()] DBI error: 1: no such table: guid
12:38:37 <gjanssens> CRIT <gnc.backend.dbi> [GncDbiSqlConnection::execute_select_statement()] Error executing SQL SELECT * FROM splits WHERE tx_guid IN guid = '95168dea20be4687a19896916d59c83e'
12:38:39 <gjanssens> And similar
12:39:07 <gjanssens> Looks like your Bug 772776 - VERY large queries (over 11000 fields in IN clause) slow... fix didn't catch all possible selector formats
12:39:21 <gjanssens> But I see where it goes wrong, I'll handle it
12:39:29 <jralls> OK, thanks.
12:58:17 *** fabior has quit IRC
12:58:24 *** Mechtilde has joined #gnucash
13:04:30 <gjanssens> jralls: can I pick your brain on the query issues ?
13:05:03 <gjanssens> I see several issues/solutions, but I don't know what your initial intention was
13:05:30 <jralls> Of course. Can't guarantee that you'll find anything in there...
13:05:55 <jralls> The intent was to not send long lists of guids in queries.
13:06:37 <gjanssens> I see. For that you are constructing a query using an inner join here https://github.com/Gnucash/gnucash/commit/01420adb9989f49a0413b4a9bbf34494623a5443#diff-69cad06dfffbc366b12224db4b8247b8R260
13:06:57 <gjanssens> That if branch is only reached when selector is empty.
13:07:45 <gjanssens> There's only one call to load_splits_for_transactions I can find, namely here https://github.com/Gnucash/gnucash/commit/01420adb9989f49a0413b4a9bbf34494623a5443#diff-69cad06dfffbc366b12224db4b8247b8R386
13:07:56 <jralls> That's a subquery. I did test inner joins as well and decided that it was easier to generalize subqueries.
13:08:23 <gjanssens> Right before that function is called, you test for an empty selector and set it if it's empty.
13:08:52 <gjanssens> Line 262 is definitely an INNER JOIN
13:09:01 <gjanssens> But it's never reached
13:09:43 <gjanssens> So I suppose I can drop that branch if INNER JOINS were not the preference.
13:10:07 <jralls> Sorry, you're right.
13:10:54 <gjanssens> I can get the code to reach that branch also if you think the INNER JOIN performs better than a subquery
13:11:23 <gjanssens> I don't know if you did performance tests on this
13:12:20 <jralls> In my limited tests with SQLite3 they performed about the same. That might be different with a better DB enginge.
13:12:31 <jralls> s/enginge/sngine/
13:12:41 *** fabior has joined #gnucash
13:12:51 <gjanssens> Ok, I can do a manual test on postgres to check
13:13:27 *** ArtGravity has quit IRC
13:13:32 <jralls> You'll need a big DB to notice anything...
13:14:58 <gjanssens> Perhaps, but I can start with comparing analyze numbers generated by postgres
13:15:50 <jralls> Oh, you meant check the query analyzer. Good idea.
13:16:00 <gjanssens> Yes
13:21:10 <jralls> Staring at the code it looks like that block got muddled between join and subquery. It should either simply set the selector and have no else or it should do the whole query with no selector (as it does now, setting the selector is a no-op).
13:22:44 <jralls> I think running a default query in the event of an empty selector is better than throwing or returning an empty result.
13:24:35 <jralls> Oy, no return. So it either has do something useful or throw.
13:26:26 <jralls> Or maybe PWARN and return. Hmm.
13:28:40 <gjanssens> Lovely to break your head on...
13:29:06 <gjanssens> Anyway my test DB has close to 6000 splits for 2400 transactions
13:29:32 <gjanssens> The inner join query is about a third faster than the subquery one
13:30:10 *** fekepp has joined #gnucash
13:30:36 <gjanssens> As for the selector being a no-op that's not correct. It sets the selector for a future slots query.
13:31:03 <jralls> Ah, right.
13:31:34 <gjanssens> I'll try to rewrite such that the INNER JOIN version is run when possible.
13:33:08 <gjanssens> I can do that by delaying the creation of the default selector in query_transactions until after the splits are loaded
13:33:17 <jralls> If it's called only once it's always possible. Get rid of the selector parameter and just do the inner join, and pass an inner join query as the selector to gnc_aql_slots_load_for_sql_subquery.
13:35:02 <jralls> Oh, no, back up.
13:35:24 <jralls> query_transactions is the query that's sometimes called with a selector and sometimes not.
13:36:08 <gjanssens> Exactly
13:42:50 <gjanssens> Ok, got it sorted, both the warnings I got and using the inner join if no selector is specified for query_transactions
13:43:11 <gjanssens> And tests still pass :)
13:44:13 <gjanssens> And now back to what I really wanted to work on - https://bugzilla.gnome.org/show_bug.cgi?id=794936
13:44:50 <jralls> Yeah, the tests don't test enough. I figured out that the problem with https://bugzilla.gnome.org/show_bug.cgi?id=794936 is that sometimes we need a gnc_numeric* and sometimes a gnc_numeric, so I need some template overrides.
13:46:05 <jralls> But test-backend-dbi-business doesn't exercise that code so it didn't catch the problem. And adding business elements to test-dbi.xml doesn't do anything because the tests for that don't look at the business data.
13:46:37 <jralls> LOL! Same bug.
13:46:51 <gjanssens> BD
13:47:13 <gjanssens> Are you currently working on that ? If so I'll move on to something else
13:48:13 <jralls> Yeah, I worked out the problem yesterday while waiting for compiles. I know just what to do, though I have to figure out the how.
13:49:00 <jralls> My next target after that is the Windows unicode problems. I'd hoped that scm_to_utf8_stringn would fix it all. No such luck.
13:51:56 <gjanssens> Yeah unfortunately it didn't
13:52:44 <gjanssens> The Chinese language issue may be a font problem or something in jquery. The screenshot the reporter attached seems to be a snippet from a chart legend.
13:52:57 <gjanssens> Time for diner... BBL
13:57:38 *** fabior has quit IRC
13:59:11 *** oozer has quit IRC
14:00:35 *** oozer has joined #gnucash
14:07:47 *** frakturfreak has joined #gnucash
14:10:25 *** harshitaneja has quit IRC
14:21:06 *** oozer has quit IRC
14:21:45 *** fekepp has quit IRC
14:21:53 *** fekepp has joined #gnucash
14:34:59 <gjanssens> Back
14:38:13 <jralls> Quick meal...
14:39:00 *** oozer has joined #gnucash
15:03:01 <gjanssens> Yeah :)
15:03:24 <gjanssens> Anyway my commit causes a new crash, so I'm not done yet :(
15:06:18 <jralls> Dang. 794936 is fixed.
15:06:57 <jralls> And it's lunchtime, then I've got a couple of errands.
15:07:12 <gjanssens> Ok. Will you push your work ?
15:10:43 *** Mechtilde has quit IRC
15:12:55 *** fabior has joined #gnucash
15:57:14 *** ArtGravity has joined #gnucash
16:09:36 *** ncv__ has quit IRC
16:12:06 *** ncv has joined #gnucash
16:43:04 *** frakturfreak has quit IRC
16:44:33 <gour> cd
16:48:37 <jralls> gjanssens: Yes, pushed and the bug closed. How are you doing with your crash?
16:49:48 <gjanssens> I think I've just found it. The changed query semantics resulted in an attempt to modify a split of which the parent was not in beginedit state
16:49:55 <gjanssens> I'm testing my fix now.
17:03:47 <gjanssens> And it's working :)
17:05:16 <gjanssens> jralls: I don't see your commits appearing in my repo when I pull ?
17:05:35 <gjanssens> Nor is there a commit mail on gnucash-patches/change
17:05:36 <gjanssens> Nor is there a commit mail on gnucash-patches/changes
17:06:07 <jralls> Just looked at the session: Forgot to push before I went to lunch. Sorry. Do you want to go first?
17:06:29 <gjanssens> I did go first indeed.
17:06:54 <gjanssens> As it's bedtime here, I thought I could be a bit impatient ;)
17:09:06 <gjanssens> And with that I'll be off... See you later!
17:09:20 <jralls> Good night!
17:11:17 *** gjanssens has quit IRC
17:24:37 *** gour has quit IRC
17:25:09 *** fabior has quit IRC
18:10:28 *** ncv has quit IRC
18:18:34 *** oozer has quit IRC
18:20:06 *** oozer has joined #gnucash
18:44:08 *** fekepp has quit IRC
19:14:47 *** pilotauto has joined #gnucash
19:54:26 *** oozer has quit IRC
19:55:01 *** oozer has joined #gnucash
20:41:07 *** puck has quit IRC
20:48:04 *** puck has joined #gnucash
21:07:00 *** j605 has joined #gnucash
21:09:13 <j605> hi, with the latest stable I was not able to see all the accounts in the creation wizard. It turns out with en_IN I was only show the GST type whereas starting with C locale made it show the standard options. Is this the intended behaviour? If so at least the common type should be included irrespective of the locale
21:11:04 <j605> I also ran into a gtk segfault for which a bug was already filed a month back, so I am not able to follow the docs after the edit equity part.
21:16:56 <j605> reference, https://gitlab.gnome.org/GNOME/gtk/issues/61
21:30:58 *** jotrago has quit IRC
21:30:58 *** jotrago1 has quit IRC
21:31:00 *** jotrago has joined #gnucash
21:31:02 *** jotrago1 has joined #gnucash
21:49:09 *** oozer has quit IRC
21:54:21 *** ArtGravity has quit IRC