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 786702 - Photo library goes blank after scrolling a certain distance through photos
Photo library goes blank after scrolling a certain distance through photos
Status: RESOLVED FIXED
Product: shotwell
Classification: Other
Component: library-mode
0.26.x
Other Linux
: Normal normal
: ---
Assigned To: Shotwell Maintainers
Shotwell Maintainers
: 741934 769195 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2017-08-23 20:12 UTC by Stuart
Modified: 2018-05-10 08:29 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Screenshot of white thumbnail window (73.33 KB, image/png)
2017-08-23 20:12 UTC, Stuart
  Details
log output #1 mouse wheel (31.73 KB, text/x-log)
2018-01-13 19:58 UTC, josch
  Details
shotwell logfile #2 page down (37.05 KB, text/x-log)
2018-01-13 20:00 UTC, josch
  Details
shotwell logfile #2 end (31.73 KB, text/x-log)
2018-01-13 20:01 UTC, josch
  Details
shotwell console output #3 (35.82 KB, text/x-log)
2018-01-13 20:03 UTC, josch
  Details
screenshot incl. GtkInspector (837.78 KB, image/png)
2018-01-13 22:28 UTC, josch
  Details
massif trace from hidpi out of memory case (211.02 KB, image/png)
2018-04-22 18:33 UTC, Jens Georg
  Details
massif trace from normal use-case (178.41 KB, image/png)
2018-04-22 18:34 UTC, Jens Georg
  Details
checkerboard: Translate coordinates while drawing (3.45 KB, patch)
2018-04-29 09:20 UTC, Jens Georg
committed Details | Review

Description Stuart 2017-08-23 20:12:34 UTC
Created attachment 358268 [details]
Screenshot of white thumbnail window

While scrolling through the main photo library, the window containing the thumbnails turns white after reaching a certain distance. It can be fixed by scrolling back up a small amount (with the completely white thumbnail window) changing to a different tab (i.e. 'Last Import') and then changing back.

This issue always occurs at the same distance, independent of thumbnail size. With thumbnails 3 wide I can scroll and see photos up to photo 290 but the screen turns white before seeing the next row. With 4 photos wide I can see 408 photos but not the next row. 

The issue persists after rebooting multiple times and updating from version 0.22 to 0.26.

The only work around I have found is making the thumbnails small enough to fit all my photos before reaching the 'whiteout distance'.
Comment 1 Jens Georg 2017-08-24 07:49:35 UTC
On which distribution and distribution version are seeing this?
Comment 2 Jens Georg 2017-10-03 18:55:06 UTC
Also, please provide debug log with running SHOTWELL_DEBUG=1 shotwell in console window and attaching the resulting ~/.cache/shotwell/shotwell.log
Comment 3 josch 2018-01-13 17:09:45 UTC
I can completely confirm this bug, it drives me crazy! The "blank out" not only appears in the main photo library but in all events that contain enough photos. Since I handle quite some photos (>250'000 in total) this issue appears quite frequently.

I'm using version 0.26.4 – “Aachen” (as per Info dialogue) but the bug has been present for a long time now.

My system is Ubuntu 16.04 LTS, on a Lenovo Yoga 2 pro
- Intel® Core™ i7-4500U CPU @ 1.80GHz × 4 -- Intel Haswell Mobile graphics
- 7,7 GiB of RAM, 442,3 GB SDD
- screen resolution is 3200x1800 px
But the bug occurred on other machines as well.

Will attach the .log file soon (first cleaning up my photo library).
Comment 4 josch 2018-01-13 19:58:57 UTC
Created attachment 366775 [details]
log output #1 mouse wheel

First logfile output
1. open shotwell
2. use mouse wheel to scroll photos
3. display area goes blank
4. close shotwell
Comment 5 josch 2018-01-13 20:00:08 UTC
Created attachment 366776 [details]
shotwell logfile #2 page down

First logfile output
1. open shotwell
2. use keyboard (page down) to scroll content
3. display area goes blank
4. close shotwell
Comment 6 josch 2018-01-13 20:01:16 UTC
Created attachment 366777 [details]
shotwell logfile #2 end

First logfile output
1. open shotwell
2. use keyboard (End) to jump to last photos
3. display area goes blank
4. close shotwell
Comment 7 josch 2018-01-13 20:03:37 UTC
Created attachment 366778 [details]
shotwell console output #3

Maybe more informative: 
console output from trial #3

$>SHOTWELL_DEBUG=1 shotwell >& 20180113T2046-shotwell-output.log
(shotwell:9141): Gtk-WARNING **: drawing failure for widget '*': out of memory

Hope this helps :-)
Comment 8 Jens Georg 2018-01-13 20:26:19 UTC
How many photos do you have, what is your scale factor and are you running HiDPI?
Comment 9 Jens Georg 2018-01-13 20:27:58 UTC
Can you check with GtkInspector how big the CheckerboardLayout is?

you can launch the inspector with export GTK_DEBUG=interactive
Comment 10 josch 2018-01-13 22:08:54 UTC
(In reply to Jens Georg from comment #8)
> How many photos do you have, 

>> ... quite some photos (>250'000 in total)

> what is your scale factor and 

Systemeinstellungen > Anzeigegeräte
  Vergrößerungsfaktor für Menü + Titelleisten  = 2 

(sorry in German)

I'm not sure if this is what you wanted to know.

> are you running HiDPI?

How can I check this?
Comment 11 josch 2018-01-13 22:28:36 UTC
Created attachment 366782 [details]
screenshot incl. GtkInspector

(In reply to Jens Georg from comment #9)
> Can you check with GtkInspector how big the CheckerboardLayout is?
> you can launch the inspector with export GTK_DEBUG=interactive

Belegte Größe = 1232 x 17385064

see attachment.
Comment 12 Jens Georg 2018-01-14 09:57:20 UTC
> (In reply to Jens Georg from comment #8)
> > How many photos do you have, 
> 
> >> ... quite some photos (>250'000 in total)
> 
> > what is your scale factor and 
> 
> Systemeinstellungen > Anzeigegeräte
>   Vergrößerungsfaktor für Menü + Titelleisten  = 2 
> 
> (sorry in German)

Fine (Passt)


> I'm not sure if this is what you wanted to know.
> 
> > are you running HiDPI?
> 
> How can I check this?

Sorry, that was a duplicate question, if your scale factor > 1, you're in HiDPI ;)

Thanks. I think I have an idea now what happens
Comment 13 Sebastien Bacher 2018-02-01 10:59:09 UTC
gnome bug #769195 and https://bugs.launchpad.net/ubuntu/+source/shotwell/+bug/1606491 seem similar issues
Comment 14 Jens Georg 2018-02-01 13:12:19 UTC
Not sure for bug 769195, it is missing the "out of memory" messages. But I know that there is a Fedora ticket about the out of memory stuff.

I still have problems to fully understand it; my current assumptions that the GridLayout either exceeds some cairo limits or we have a wrap-around in some integer variable
Comment 15 Jens Georg 2018-03-05 17:49:08 UTC
*** Bug 769195 has been marked as a duplicate of this bug. ***
Comment 16 Jens Georg 2018-03-05 17:49:18 UTC
*** Bug 741934 has been marked as a duplicate of this bug. ***
Comment 17 Jens Georg 2018-04-02 08:38:13 UTC
From a launchpad ticket:

Sorry, switching my monitor to FullHD (1920x1080) remove the bug. But FullHD on 4k monitor is ugly :'(
Thank for attention.
Comment 18 josch 2018-04-03 21:32:12 UTC
I can confirm that change in behaviour: switching to full-HD makes the "blank out" go away. At my original resolution of 3200x1800 px the bug is back.

Experimentally I changed the screen scaling factor for menus and title bars to 1 [one] (instead of 2 [two] for full resolution): I easily can scroll through the full list without the bug in effect.

Hope this helps!
Comment 19 Jens Georg 2018-04-15 16:16:52 UTC
Could reproduce with GDK_SCALE=2 on FullHD display.
Comment 20 Jens Georg 2018-04-22 18:33:12 UTC
Created attachment 371237 [details]
massif trace from hidpi out of memory case
Comment 21 Jens Georg 2018-04-22 18:34:07 UTC
Created attachment 371238 [details]
massif trace from normal use-case
Comment 22 Jens Georg 2018-04-22 18:35:16 UTC
This clearly does not seem to have something to do with really being out of memory. Cairo is bailing out before the peak of the working use-caseThanks for taking the time to report this.
Comment 23 Jens Georg 2018-04-22 19:36:23 UTC
It looks like the first error that happens is an CAIRO_STATUS_INVALID_MATRIX, after that, the _NO_MEMORY is posted.

(gdb) bt
  • #0 _cairo_error
    at ../../../../src/cairo-error.c line 68
  • #1 _cairo_matrix_to_pixman_matrix
    at ../../../../src/cairo-matrix.c line 996
  • #2 _cairo_matrix_to_pixman_matrix_offset
    at ../../../../src/cairo-matrix.c line 1210
  • #3 picture_set_matrix
    at ../../../../src/cairo-xlib-source.c line 168
  • #4 picture_set_properties
    at ../../../../src/cairo-xlib-source.c line 253
  • #5 gradient_source
    at ../../../../src/cairo-xlib-source.c line 436
  • #6 _cairo_xlib_source_create_for_pattern
    at ../../../../src/cairo-xlib-source.c line 1161
  • #7 clip_and_composite
    at ../../../../src/cairo-traps-compositor.c line 1024
  • #8 clip_and_composite_polygon
    at ../../../../src/cairo-traps-compositor.c line 1602
  • #9 _cairo_traps_compositor_fill
    at ../../../../src/cairo-traps-compositor.c line 2268
  • #10 _cairo_compositor_fill
    at ../../../../src/cairo-compositor.c line 203
  • #11 _cairo_xlib_surface_fill
    at ../../../../src/cairo-xlib-surface.c line 1650
  • #12 _cairo_surface_fill
    at ../../../../src/cairo-surface.c line 2344
  • #13 _cairo_gstate_fill
    at ../../../../src/cairo-gstate.c line 1317
  • #14 _cairo_default_context_fill
    at ../../../../src/cairo-default-context.c line 1055
  • #15 cairo_fill
    at ../../../../src/cairo.c line 2205
  • #16 checkerboard_item_paint_shadow_in_corner
    at /home/jens/Source/shotwell/src/CheckerboardLayout.vala line 545
  • #17 checkerboard_item_real_paint_shadow
    at /home/jens/Source/shotwell/src/CheckerboardLayout.vala line 510
  • #18 checkerboard_item_paint

Comment 24 Jens Georg 2018-04-29 09:20:07 UTC
Created attachment 371516 [details] [review]
checkerboard: Translate coordinates while drawing

This prevents that we exceed the translation matrix limits in pixman,
the root cause for the Out of memory errors seen on HiDPI displays
Comment 25 Jens Georg 2018-04-29 09:20:41 UTC
Attachment 371516 [details] pushed as 2b2e690 - checkerboard: Translate coordinates while drawing
Comment 26 josch 2018-05-05 17:48:13 UTC
How can I test?
When will it be released?
Comment 27 Jens Georg 2018-05-05 18:35:10 UTC
It's in 0.28.2 and 0.29.1.
Comment 28 josch 2018-05-05 20:44:21 UTC
updated today to 0.28.2 as per info dialog (Ubuntu 16.04) from
http://ppa.launchpad.net/yg-jensge/shotwell/ubuntu

unfortunately the screen still goes blank :-(
Comment 29 mpodshivalin 2018-05-05 22:08:16 UTC
I've just updated to 0.28.2 on Fedora 28, and the problem still persists.
Comment 30 Jens Georg 2018-05-06 05:24:52 UTC
Oh sorry. It will be in tomorrow's 0.28.3, of course. my bad
Comment 31 josch 2018-05-10 08:29:43 UTC
I just upgraded to 0.28.3 and yes, it works! No more blank screen.
Thanks a lot!