[GNC] Segmentation fault when I try to enter anything
Gerrit Holl
gerrit.holl at gmail.com
Fri Jan 31 19:06:09 EST 2020
Hi,
I recently upgraded to gnucash 3.7, or rather reinstalled it on a new
Ubuntu 19.10 system. I've started to get reproducible segmentation
faults:
- start gnucash (all is well)
- open my existing expenses file
- go to any account tab
- try to write anything in any column (description, amount, etc.)
- as soon as I press a key to enter anything, I get a segmentation fault
OR
- start gnucash
- create new file
- create an account
- go to account
- write anything in it
which both result in Segmentation Fault (core dumped)
Following the advise at
https://lists.gnucash.org/pipermail/gnucash-user/2018-February/075121.html,
I ran gnucash --log gnc.backend.dbi=debug which is supposed to "write
the SQL queries to your gnucash.trace". Unfortunately there is
nothing there. The contents of gnucash.trace:
* 00:50:44 INFO [gnc_module_init_backend_dbi] GNC_DBD_DIR not set:
using libdbi built-in default
Not sure if that INFO message is relevant.
Otherwise there is the file money_tracking.gnucash.20200201005051.log
which contains nothing much either:
mod trans_guid split_guid time_now date_entered date_posted acc_guid
acc_name num description notes memo action reconciled amount value
date_reconciled ----------------- ===== START ===== END
I.e. it's empty as far as I can see.
In case it helps, I have run `strace -ff`, the last lines of the 14
strace files are below
What else can I do to diagnose the cause of this problem? Some
incompatible library that got wrongly installed? I deleted gnucash
and reinstalled it, but this does not resolve the problem. I've also
moved /home/gerrit/.local/share out of the way but the symptoms remain
identical. I'm a bit surprised at the latter; when I move the
.local/share out of the way digikam still starts with my default
expenses file, how does it know? What other information should I look
up to dig into this?
==> str.15514 <==
recvmsg(4, {msg_name=NULL, msg_namelen=0,
msg_iov=[{iov_base="\1\1\25!\0\0\0\0\30|+\2q\0074\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
recvmsg(4, {msg_namelen=0}, 0) = -1 EAGAIN (Resource
temporarily unavailable)
recvmsg(4, {msg_namelen=0}, 0) = -1 EAGAIN (Resource
temporarily unavailable)
poll([{fd=4, events=POLLIN}, {fd=5, events=POLLIN}, {fd=6,
events=POLLIN}], 3, 6337) = 1 ([{fd=4, revents=POLLIN}])
recvmsg(4, {msg_name=NULL, msg_namelen=0,
msg_iov=[{iov_base="#\203\25!\26\0\0\0\2\0\3\0\374\323G\1&\0\0\0k\1\0\0T\4@\0\0\0\0\0"...,
iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 120
recvmsg(4, {msg_name=NULL, msg_namelen=0,
msg_iov=[{iov_base="#\203\25!\0\0\0\0\f\0\17\0\376\323G\1U\1\0\0\2\0\0\0\0\0\0\0\0\0\0\0",
iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
recvmsg(4, {msg_namelen=0}, 0) = -1 EAGAIN (Resource
temporarily unavailable)
recvmsg(4, {msg_namelen=0}, 0) = -1 EAGAIN (Resource
temporarily unavailable)
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0xf8} ---
+++ killed by SIGSEGV (core dumped) +++
==> str.15515 <==
mprotect(0x7f80e4000000, 135168, PROT_READ|PROT_WRITE) = 0
prctl(PR_SET_NAME, "gmain") = 0
poll([{fd=9, events=POLLIN}], 1, -1) = 1 ([{fd=9, revents=POLLIN}])
read(9, "\1\0\0\0\0\0\0\0", 16) = 8
poll([{fd=9, events=POLLIN}], 1, -1) = 1 ([{fd=9, revents=POLLIN}])
read(9, "\1\0\0\0\0\0\0\0", 16) = 8
wait4(15528, [{WIFSIGNALED(s) && WTERMSIG(s) == SIGKILL}], WNOHANG,
NULL) = 15528
write(5, "\1\0\0\0\0\0\0\0", 8) = 8
poll([{fd=9, events=POLLIN}], 1, -1 <unfinished ...>) = ?
+++ killed by SIGSEGV (core dumped) +++
==> str.15516 <==
futex(0x558f534e30b0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x558f534e30b0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x558f534e30b0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x558f53426358, FUTEX_WAKE_PRIVATE, 1) = 1
poll([{fd=8, events=POLLIN}], 1, 0) = 0 (Timeout)
write(11, "\1\0\0\0\0\0\0\0", 8) = 8
poll([{fd=8, events=POLLIN}, {fd=11, events=POLLIN}], 2, -1) = 1
([{fd=11, revents=POLLIN}])
read(11, "\1\0\0\0\0\0\0\0", 16) = 8
poll([{fd=8, events=POLLIN}, {fd=11, events=POLLIN}], 2, -1
<unfinished ...>) = ?
+++ killed by SIGSEGV (core dumped) +++
==> str.15519 <==
read(10, "\1\0\0\0\0\0\0\0", 16) = 8
futex(0x558f534beed8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
poll([{fd=10, events=POLLIN}], 1, -1) = 1 ([{fd=10, revents=POLLIN}])
futex(0x558f534e30b0, FUTEX_WAIT_PRIVATE, 2, NULL) = -1 EAGAIN
(Resource temporarily unavailable)
read(10, "\1\0\0\0\0\0\0\0", 16) = 8
futex(0x558f534e30b0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x558f53426358, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x558f53426358, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=10, events=POLLIN}], 1, -1 <unfinished ...>) = ?
+++ killed by SIGSEGV (core dumped) +++
==> str.15520 <==
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1de0, FUTEX_WAIT_PRIVATE, 10, NULL) = 0
futex(0x7f80f2ae1de0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1de8, FUTEX_WAKE_PRIVATE, 2147483647) = 6
futex(0x7f80f2ae1dec, FUTEX_WAKE_PRIVATE, 2147483647) = 7
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = ?
+++ killed by SIGSEGV (core dumped) +++
==> str.15521 <==
futex(0x7f80f2ae1de8, FUTEX_WAKE_PRIVATE, 2147483647) = 1
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = -1 EAGAIN
(Resource temporarily unavailable)
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1dec, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAIT_PRIVATE, 2, NULL) = -1 EAGAIN
(Resource temporarily unavailable)
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = ?
+++ killed by SIGSEGV (core dumped) +++
==> str.15522 <==
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1dec, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x7f80f2ae1de8, FUTEX_WAKE_PRIVATE, 2147483647) = 4
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = ?
+++ killed by SIGSEGV (core dumped) +++
==> str.15523 <==
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1dec, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae19c0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = ?
+++ killed by SIGSEGV (core dumped) +++
==> str.15524 <==
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1dec, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = ?
+++ killed by SIGSEGV (core dumped) +++
==> str.15525 <==
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1dec, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = ?
+++ killed by SIGSEGV (core dumped) +++
==> str.15526 <==
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1dec, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f80f2ae19c0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1de8, FUTEX_WAIT_PRIVATE, 0, NULL) = ?
+++ killed by SIGSEGV (core dumped) +++
==> str.15527 <==
futex(0x7f80f2ae1940, FUTEX_WAKE_PRIVATE, 1) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
read(14, "\0", 1) = 1
futex(0x7f80f2ae1940, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1940, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f80f2ae1940, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x558f539a4f68, FUTEX_WAKE_PRIVATE, 1) = 1
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
read(14, <unfinished ...>) = ?
+++ killed by SIGSEGV (core dumped) +++
==> str.15528 <==
rt_sigaction(SIGRT_28, NULL, {sa_handler=SIG_DFL, sa_mask=[],
sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_29, NULL, {sa_handler=SIG_DFL, sa_mask=[],
sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_30, NULL, {sa_handler=SIG_DFL, sa_mask=[],
sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_31, NULL, {sa_handler=SIG_DFL, sa_mask=[],
sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_32, NULL, {sa_handler=SIG_DFL, sa_mask=[],
sa_flags=0}, 8) = 0
rt_sigaction(SIGABRT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGCHLD, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGIO, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
write(1, "(\"1.47\" \"adig\" \"aex\" \"aiahk\" \"al"..., 996) = 996
+++ killed by SIGKILL +++
==> str.15529 <==
write(19, "slot>\n <slot>\n <"..., 4096) = 4096
write(19, " <slot>\n <slot:k"..., 4096) = 4096
write(19, "e>\n </slot>\n <slot"..., 4096) = 4096
write(19, " </slot>\n <slot>\n "..., 4096) = 4096
write(19, "</slot>\n <slot>\n "..., 2556) = 2556
close(20) = 0
close(19) = 0
madvise(0x7f80d32d5000, 8368128, MADV_DONTNEED) = 0
exit(0) = ?
+++ exited with 0 +++
best regards,
Gerrit Holl.
More information about the gnucash-user
mailing list