After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 769195 - Shotwell event viewer/browser ceases to work
Shotwell event viewer/browser ceases to work
Status: RESOLVED DUPLICATE of bug 786702
Product: shotwell
Classification: Other
Component: events
0.23.x
Other Linux
: Normal normal
: ---
Assigned To: Shotwell Maintainers
Shotwell Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-07-26 15:21 UTC by ferdinand.goldmann
Modified: 2018-03-05 17:49 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Shotwell Debug Log (6.74 KB, text/plain)
2016-09-18 09:59 UTC, ferdinand.goldmann
  Details
Shotwell output to stderr (3.25 KB, text/plain)
2016-09-18 10:04 UTC, ferdinand.goldmann
  Details
output of valgrind --leak-check=full --log-file=shotwell.valgrind shotwell (393.90 KB, text/plain)
2016-09-18 17:20 UTC, ferdinand.goldmann
  Details
Work around missing GValue free (808 bytes, patch)
2016-09-18 18:04 UTC, Jens Georg
none Details | Review
valgrind --leak-check=full --log-file=shotwell.valgrind /usr/local/bin/shotwell (425.73 KB, text/plain)
2016-09-19 12:07 UTC, ferdinand.goldmann
  Details
valgrind --leak-check=full --show-leak-kinds=all --log-file=shotwell.valgrind /usr/local/bin/shotwell (568.98 KB, text/plain)
2016-09-20 08:11 UTC, ferdinand.goldmann
  Details
valgrind --leak-check=full --show-leak-kinds=all --log-file=shotwell.valgrind /usr/local/bin/shotwell (568.98 KB, application/octet-stream)
2016-09-20 08:12 UTC, ferdinand.goldmann
  Details
valgrind --tool=massif /usr/local/bin/shotwell (214.78 KB, text/plain)
2016-09-20 08:16 UTC, ferdinand.goldmann
  Details
valgrind --leak-check=full --show-leak-kinds=all --log-file=shotwell.valgrind /usr/local/bin/shotwell (400.56 KB, application/x-xz)
2016-11-04 10:38 UTC, ferdinand.goldmann
  Details
valgrind --tool=massif /usr/local/bin/shotwell (15.72 KB, application/x-xz)
2016-11-04 10:48 UTC, ferdinand.goldmann
  Details
shotwell.log (6.74 KB, text/x-log)
2016-11-04 17:24 UTC, ferdinand.goldmann
  Details
shotwell.log (114.13 KB, application/x-xz)
2016-11-08 19:36 UTC, ferdinand.goldmann
  Details

Description ferdinand.goldmann 2016-07-26 15:21:02 UTC
When browsing events, the shotwell event browser ceases to function and does not display anything anymore.

How to reproduce:
- click on "All Events"
- start scrolling downward (either by mouse or page down key)
- somewhere in the middle, the browser window will go blank and cease to display
  anything.
- from this point onwards, clicking on "All Events" will have no effect and just display an empty window with no events in it.
- restarting the application recovers from this situation until repeating the above steps.

I have roughly 4500 pictures in my library, imported from an iPhoto folder.
Comment 1 Jens Georg 2016-09-18 05:48:52 UTC
I cannot reproduce with my library here. Can you please provide a shotwell.log with SHOTWELL_LOG=1 ?
Comment 2 ferdinand.goldmann 2016-09-18 09:59:52 UTC
Created attachment 335796 [details]
Shotwell Debug Log
Comment 3 ferdinand.goldmann 2016-09-18 10:04:24 UTC
Created attachment 335797 [details]
Shotwell output to stderr

I guess there's not much to see in the shotwell.log, But what's interesting is that once the bug hits, there is a ton of Gtk-WARNING messages about out of memory on stderr (see attachment).

My ulimits are as follows:
% ulimit -a
-t: cpu time (seconds)              unlimited
-f: file size (blocks)              unlimited
-d: data seg size (kbytes)          unlimited
-s: stack size (kbytes)             8192
-c: core file size (blocks)         unlimited
-m: resident set size (kbytes)      unlimited
-u: processes                       79363
-n: file descriptors                1024
-l: locked-in-memory size (kbytes)  64
-v: address space (kbytes)          unlimited
-x: file locks                      unlimited
-i: pending signals                 79363
-q: bytes in POSIX msg queues       819200
-e: max nice                        0
-r: max rt priority                 0
-N 15:                              unlimited

I tried raising the stack size to unlimited, but it did not help.

If it is of any help, I can provide an strace output as well.
Comment 4 Jens Georg 2016-09-18 16:20:36 UTC
Are you comfortable with valgrind?
Comment 5 ferdinand.goldmann 2016-09-18 17:20:58 UTC
Created attachment 335816 [details]
output of valgrind --leak-check=full --log-file=shotwell.valgrind shotwell

Never used it before. I'm attaching a log output. Tell me if you want me to use specific options.
Comment 6 Jens Georg 2016-09-18 18:04:28 UTC
Created attachment 335818 [details] [review]
Work around missing GValue free

Can you check the patch?
Comment 7 ferdinand.goldmann 2016-09-19 12:07:13 UTC
Created attachment 335852 [details]
valgrind --leak-check=full --log-file=shotwell.valgrind /usr/local/bin/shotwell

The patch did not fix the problem. I compiled shotwell from 0.23.7 source tar ball and applied the patch. Event browser crashes as before.

I'm attaching another valgrind output.
Comment 8 Jens Georg 2016-09-19 16:46:19 UTC
ok, those were the obvious leaks. Can you try with 
--leak-check=full --show-leak-kinds=all

And also a massif run?

valgrind --tool=massif
Comment 9 ferdinand.goldmann 2016-09-20 08:11:09 UTC
Created attachment 335907 [details]
valgrind --leak-check=full --show-leak-kinds=all --log-file=shotwell.valgrind /usr/local/bin/shotwell
Comment 10 ferdinand.goldmann 2016-09-20 08:12:49 UTC
Created attachment 335908 [details]
valgrind --leak-check=full --show-leak-kinds=all --log-file=shotwell.valgrind /usr/local/bin/shotwell
Comment 11 ferdinand.goldmann 2016-09-20 08:16:28 UTC
Created attachment 335909 [details]
valgrind --tool=massif /usr/local/bin/shotwell
Comment 12 Jens Georg 2016-10-18 11:23:34 UTC
mhm. Memory usage looks stable. There's a rather large chunk of thumbnail cache. What's your overall system memory?
Comment 13 ferdinand.goldmann 2016-10-20 13:22:23 UTC
% free
              total        used        free      shared  buff/cache   available
Mem:       20425948     5916316     4963952     2026112     9545680    12027092
Swap:      10223612           0    10223612
Comment 14 Jens Georg 2016-10-30 08:36:21 UTC
Ah. That error means cairo failed to allocate memory. _maybe_ 4k images make checkerboardlayout so ginormous that cairo bails out.

Can you recompile with make VALAFLAGS="--define=TRACE_REFLOW --define=TRACE_REFLOW_ITEMS" and attach the debug log from running with that? 
That should show the sizes CheckerboardLayout requests
Comment 15 ferdinand.goldmann 2016-11-04 10:38:36 UTC
Created attachment 339106 [details]
valgrind --leak-check=full --show-leak-kinds=all --log-file=shotwell.valgrind /usr/local/bin/shotwell
Comment 16 ferdinand.goldmann 2016-11-04 10:48:41 UTC
Created attachment 339107 [details]
valgrind --tool=massif /usr/local/bin/shotwell
Comment 17 Jens Georg 2016-11-04 13:14:04 UTC
I meant just the shotwell.log from ~/.cache/shotwell, sorry.
Comment 18 ferdinand.goldmann 2016-11-04 17:24:32 UTC
Created attachment 339132 [details]
shotwell.log
Comment 19 Jens Georg 2016-11-04 17:41:30 UTC
Is that with the error occuring? I can't see any reflow logs there.
Comment 20 ferdinand.goldmann 2016-11-04 17:48:37 UTC
Yes, that's with the error. I compiled with:
make VALAFLAGS="--define=TRACE_REFLOW --define=TRACE_REFLOW_ITEMS"
Do I have to add specific arguments to configure as well?
Comment 21 Jens Georg 2016-11-08 16:51:48 UTC
Did it run the Vala compiler? If not, can you remove the shotwell_vala.stamp file and re-run make?
Comment 22 ferdinand.goldmann 2016-11-08 19:36:57 UTC
Created attachment 339349 [details]
shotwell.log

Looks like the .stamp files were not removed by 'make clean', sorry. I removed them and this time the vala compiler seemed to run. At least the shotwell.log is a hell of a lot bigger. :-)
Comment 23 Jens Georg 2018-03-05 17:49:08 UTC

*** This bug has been marked as a duplicate of bug 786702 ***