Bug #9044

some thumbnail images have large rectangular streaks in them

Added by Nicolas Dade over 7 years ago.

Target version:
Start date:
Due date:
% Done:


Estimated time:
Affected Version:
git development version
hardware architecture:


Some, but not all of the thumbnail images have rectangular solid color streams in them.
Deleting the ~/.cache/darktable/mipmaps-* file does not fix it. Darktable [slowly] recreates the same streaks again.

Attached is a screenshot showing the trouble, and one of the offending files and its .xmp. Ah well, I'd attach the file too, but it's 14 MB. (you know, a 10 MB limit on file size on a raw file development site is too low). So the raw file is at

darktable_streaks_on_thumbnails.png (797 KB) darktable_streaks_on_thumbnails.png Nicolas Dade, 11/10/2012 12:47 AM
p1160822.rw2.xmp (48.7 KB) p1160822.rw2.xmp Nicolas Dade, 11/10/2012 12:47 AM


#1 Updated by Nicolas Dade over 7 years ago

I should add that the exported files don't have this issue. And the darktable is built & run on a machine running debian wheezy. Specifically

$ dpkg l | grep - -dev
ii autotools-dev 20120608.1 all Update infrastructure for config.{guess,sub} files
ii comerr-dev 2.1-1.42.5-1 amd64 common error description library - headers and static libraries
ii dpkg-dev 1.16.8 all Debian package development tools
ii libatk1.0-dev 2.4.0-2 amd64 Development files for the ATK accessibility toolkit
ii libbison-dev:amd64 1:2.5.dfsg-2.1 amd64 YACC-compatible parser generator - development library
ii libc-dev-bin 2.13-35 amd64 Embedded GNU C Library: Development binaries
ii libc6-dev:amd64 2.13-35 amd64 Embedded GNU C Library: Development Libraries and Header Files
ii libc6-dev-i386 2.13-35 amd64 Embedded GNU C Library: 32-bit development libraries for AMD64
ii libcairo2-dev 1.12.2-2 amd64 Development files for the Cairo 2D graphics library
ii libcurl4-gnutls-dev 7.26.0-1 amd64 development files and documentation for libcurl (GnuTLS flavour)
ii libdbus-1-dev 1.6.0-1 amd64 simple interprocess messaging system (development headers)
ii libdbus-glib-1-dev 0.100-1 amd64 simple interprocess messaging system (GLib interface)
ii libexif-dev 0.6.20-3 amd64 library to parse EXIF files (development files)
ii libexiv2-dev 0.23-1 amd64 EXIF/IPTC metadata manipulation library - development files
ii libexpat1-dev 2.1.0-1 amd64 XML parsing C library - development kit
ii libfontconfig1-dev 2.9.0-7 amd64 generic font configuration library - development
ii libfreetype6-dev 2.4.9-1 amd64 FreeType 2 font engine, development files
ii libftdi-dev 0.20-1+b1 amd64 Development files for libftdi
ii libgconf2-dev 3.2.5-1+build1 amd64 GNOME configuration database system (development)
ii libgcrypt11-dev 1.5.0-3 amd64 LGPL Crypto library - development files
ii libgdbm-dev 1.8.3-11 amd64 GNU dbm database routines (development files)
ii libgdk-pixbuf2.0-dev 2.26.1-1 amd64 GDK Pixbuf library (development files)
ii libglade2-dev 1:2.6.4-1 amd64 development files for libglade
ii libglib2.0-dev 2.32.3-1 amd64 Development files for the GLib library
ii libgmp-dev:amd64 2:5.0.5+dfsg-2 amd64 Multiprecision arithmetic library developers tools
ii libgmp3-dev 2:5.0.5+dfsg-2 amd64 Multiprecision arithmetic library developers tools
ii libgnome-keyring-dev 3.4.1-1 amd64 Development files for GNOME keyring service
ii libgnutls-dev 2.12.20-1 amd64 GNU TLS library - development files
ii libgpg-error-dev 1.10-3.1 amd64 library for common error values and messages in GnuPG components (development)
ii libgphoto2-2-dev 2.4.14-2 amd64 gphoto2 digital camera library (development files)
ii libgpm-dev:amd64 1.20.4-6 amd64 General Purpose Mouse - development files
ii libgtk2.0-dev 2.24.10-2 amd64 development files for the GTK+ library
ii libice-dev:amd64 2:1.0.8-2 amd64 X11 Inter-Client Exchange library (development headers)
ii libidn11-dev 1.25-2 amd64 Development files for GNU Libidn, an IDN library
ii libilmbase-dev 1.0.1-4 amd64 development files for IlmBase
ii libjbig-dev:amd64 2.0-2 amd64 JBIGkit development files
ii libjpeg8-dev:amd64 8d-1 amd64 Development files for the IJG JPEG library
ii libkrb5-dev 1.10.1+dfsg-2 amd64 Headers and development libraries for MIT Kerberos
ii liblcms2-dev:amd64 2.2+git20110628-2.2 amd64 Little CMS 2 color management library development headers
ii libldap2-dev:amd64 2.4.31-1 amd64 OpenLDAP development libraries
ii liblensfun-dev 0.2.5-2 amd64 Lens Correction library - Development files
ii libltdl-dev:amd64 2.4.2-1.1 amd64 A system independent dlopen wrapper for GNU libtool
ii libmpc-dev:amd64 0.9-4 amd64 multiple precision complex floating-point library development package
ii libmpfr-dev:amd64 3.1.0-5 amd64 multiple precision floating-point computation developers tools
ii libncurses5-dev 5.9-10 amd64 developer's libraries for ncurses
ii libopenexr-dev 1.6.1-6 amd64 development files for the OpenEXR image library
ii libp11-kit-dev 0.12-3 amd64 Library for loading and coordinating access to PKCS#11 modules - development
ii libpango1.0-dev 1.30.0-1 amd64 Development files for the Pango
ii libpcap0.8-dev 1.3.0-1 amd64 development library and header files for libpcap0.8
ii libpcre3-dev 1:8.30-5 amd64 Perl 5 Compatible Regular Expression Library - development files
ii libpixman-1-dev 0.26.0-3 amd64 pixel-manipulation library for X and cairo (development files)
ii libpng12-dev 1.2.49-1 amd64 PNG library - development
ii libpthread-stubs0-dev:amd64 0.3-3 amd64 pthread stubs not provided by native libc, development files
ii libreadline-dev:amd64 6.2-8 amd64 GNU readline and history libraries, development files
ii libreadline6-dev:amd64 6.2-8 amd64 GNU readline and history libraries, development files
ii librsvg2-dev 2.36.1-1 amd64 SAX-based renderer library for SVG files (development)
ii librtmp-dev 2.4+20111222.git4e06e21-1 amd64 toolkit for RTMP streams (development files)
ii libsm-dev:amd64 2:1.2.1-2 amd64 X11 Session Management library (development headers)
ii libsqlite0-dev 2.8.17-7 amd64 SQLite development files
ii libsqlite3-dev 3.7.13-1 amd64 SQLite 3 development files
ii libssh2-1-dev 1.4.2-1.1 amd64 SSH2 client-side library (development headers)
ii libssl-dev 1.0.1c-4 amd64 SSL development libraries, header files and documentation
ii libstdc++6-4.4-dev 4.4.7-2 amd64 GNU Standard C++ Library v3 (development files)
ii libstdc++6-4.6-dev 4.6.3-8 amd64 GNU Standard C++ Library v3 (development files)
ii libstdc++6-4.7-dev 4.7.1-7 amd64 GNU Standard C++ Library v3 (development files)
ii libtasn1-3-dev 2.13-2 amd64 Manage ASN.1 structures (development)
ii libtiff4-dev 3.9.6-7 amd64 Tag Image File Format (TIFF) library (old version), development files
ii libtinfo-dev:amd64 5.9-10 amd64 developer's library for the low-level terminfo library
ii libusb-dev 2:0.1.12-20 amd64 userspace USB programming library development files
ii libvte-dev 1:0.28.2-5 amd64 Terminal emulator widget for GTK+ 2.0 - development files
ii libwrap0-dev:amd64 7.6.q-24 amd64 Wietse Venema's TCP wrappers library, development files
ii libx11-dev:amd64 2:1.5.0-1 amd64 X11 client-side library (development headers)
ii libxau-dev:amd64 1:1.0.7-1 amd64 X11 authorisation library (development headers)
ii libxaw7-dev:amd64 2:1.0.10-2 amd64 X11 Athena Widget library (development headers)
ii libxcb-render0-dev:amd64 1.8.1-1 amd64 X C Binding, render extension, development files
ii libxcb-shm0-dev:amd64 1.8.1-1 amd64 X C Binding, shm extension, development files
ii libxcb1-dev:amd64 1.8.1-1 amd64 X C Binding, development files
ii libxcomposite-dev 1:0.4.3-2 amd64 X11 Composite extension library (development headers)
ii libxcursor-dev:amd64 1:1.1.13-1 amd64 X cursor management library (development files)
ii libxdamage-dev 1:1.1.3-2 amd64 X11 damaged region extension library (development headers)
ii libxdmcp-dev:amd64 1:1.1.1-1 amd64 X11 authorisation library (development headers)
ii libxext-dev:amd64 2:1.3.1-2 amd64 X11 miscellaneous extensions library (development headers)
ii libxfixes-dev 1:5.0-4 amd64 X11 miscellaneous 'fixes' extension library (development headers)
ii libxft-dev 2.3.1-1 amd64 FreeType-based font drawing library for X (development files)
ii libxi-dev 2:1.6.1-1 amd64 X11 Input extension library (development headers)
ii libxinerama-dev:amd64 2:1.1.2-1 amd64 X11 Xinerama extension library (development headers)
ii libxml2-dev:amd64 2.8.0+dfsg1-5 amd64 Development files for the GNOME XML library
ii libxmu-dev:amd64 2:1.1.1-1 amd64 X11 miscellaneous utility library (development headers)
ii libxpm-dev:amd64 1:3.5.10-1 amd64 X11 pixmap library (development headers)
ii libxrandr-dev 2:1.3.2-2 amd64 X11 RandR extension library (development headers)
ii libxrender-dev:amd64 1:0.9.7-1 amd64 X Rendering Extension client library (development files)
ii libxt-dev:amd64 1:1.1.3-1 amd64 X11 toolkit intrinsics library (development headers)
ii libxtst-dev:amd64 2:1.2.1-1 amd64 X11 Record extension library (development headers)
ii linux-libc-dev:amd64 3.2.23-1 amd64 Linux support headers for userspace development
ii manpages-dev 3.42-1 all Manual pages about using GNU/Linux for development
ii python-dev 2.7.3~rc2-1 all header files and a static library for Python (default)
ii python2.7-dev 2.7.3~rc2-2.1 amd64 Header files and a static library for Python (v2.7)
ii x11proto-composite-dev 1:0.4.2-2 all X11 Composite extension wire protocol
ii x11proto-core-dev 7.0.23-1 all X11 core wire protocol and auxiliary headers
ii x11proto-damage-dev 1:1.2.1-2 all X11 Damage extension wire protocol
ii x11proto-fixes-dev 1:5.0-2 all X11 Fixes extension wire protocol
ii x11proto-input-dev 2.2-1 all X11 Input extension wire protocol
ii x11proto-kb-dev 1.0.6-2 all X11 XKB extension wire protocol
ii x11proto-randr-dev 1.3.2-2 all X11 RandR extension wire protocol
ii x11proto-record-dev 1.14.2-1 all X11 Record extension wire protocol
ii x11proto-render-dev 2:0.11.1-2 all X11 Render extension wire protocol
ii x11proto-xext-dev 7.2.1-1 all X11 various extension wire protocol
ii x11proto-xinerama-dev 1.2.1-2 all X11 Xinerama extension wire protocol
ii xtrans-dev 1.2.7-1 all X transport library (development files)
ii zlib1g-dev:amd64 1:1.2.7.dfsg-13 amd64 compression library - development

#2 Updated by Ulrich Pegelow over 7 years ago

  • % Done changed from 0 to 20
  • Status changed from New to Incomplete

I cannot confirm with the image you supplied. However, I see some other artifacts there, which might be related.

Could you please re-check if all images with bad thumbnails have spot removal activated?

#3 Updated by Nicolas Dade over 7 years ago

Aha, yes they do, and the left end of the streaks correspond to the spot removal locations. And disabling spot removal removes the streaks from the regenerated thumbnails.

#4 Updated by Ulrich Pegelow over 7 years ago

I suspect that the problem appears if modules orientation and spot removal are used together. Could you please verify that?

In that case this bug is probably a twin of your report #9040.

#5 Updated by Ulrich Pegelow over 7 years ago

  • % Done changed from 20 to 100
  • Status changed from Incomplete to Fixed

It's fixed now in git master. Please beware that this will only affect newly generated thumbnails.
Old thumbnails in mipmap cache will not get automatically repaired.

#6 Updated by Nicolas Dade over 7 years ago

No it's independent of the orientation module. However enabling Rotate & Crop and cropping triggered a crash when returning to lighttable. I'm putting the git latest now and will retest there.

#7 Updated by Nicolas Dade over 7 years ago

Yup it is fixed, thumbnails are streak-free. Thank you.

#8 Updated by Nicolas Dade over 7 years ago

The fix you did [git 9525a90c301ee2b86ec7ce5480ff14de9a14c310] causes SEGVs when zooming into an image which contains spot corrections. I belive the spot has to be outside the view window for the crash to appear.

Digging in I see indexes used for in[] and out[] indexing on spots.c line 123 being very negative when I zoom in. I don't know enough about darktable's innards, and I don't see how changing MIN to CLAMP broke things, but there you go.

#9 Updated by Ulrich Pegelow over 7 years ago

Can't confirm here (at least not with the image you supplied earlier). Can you please give a 1,2,3... step description how
to reproduce the crash. If you can do it with your earlier image that's fine. Maybe upload again your XMP file.

#10 Updated by Ulrich Pegelow over 7 years ago

The CLAMP's were a really bad idea. I reverted that part in git master.

#11 Updated by Nicolas Dade over 7 years ago

Good. I reverted the CLAMPS locally and that fixed the SEGV. So all is well.

Also available in: Atom PDF

Go to top