Bug 398380 - Krita won't handle big files with a lot of layers
Summary: Krita won't handle big files with a lot of layers
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: 4.1.1
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords: drkonqi, triaged
Depends on:
Blocks:
 
Reported: 2018-09-07 21:05 UTC by Andras
Modified: 2018-11-30 15:06 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andras 2018-09-07 21:05:45 UTC
Application: krita (4.1.1)

Qt Version: 5.11.1
Frameworks Version: 5.49.0
Operating System: Linux 4.15.0-33-generic x86_64
Distribution: KDE neon User Edition 5.13

-- Information about the crash:
- What I was doing when the application crashed:

There were two files open in Krita, each of them more then 2GB with a lot of layer. Simple I was working on different layers on the first file and tried to save it and right after I pressed CTRL+s, I closed the second file then it's crashed. Anyway, I don't thing there was any specific issue here related what was I doing. It's clear Krita is unstable with more then one big file with a lot of layers.
Basically I'd reopen this bug report:
https://bugs.kde.org/show_bug.cgi?id=394974
Obviously I'll not open it since it's closed by me after my lot of uploading and involvement wasn't appreciated and I was childishly threatened. For me, it's clear, somehow Krita contribution is not for bug reports what can't be solved fast and easily.
So this is still an awkward situation because I still have a not so simple not so clear issue with Krita. I report this issue only because I have still hope in Krita. It's a basic thing when your work is lost by a software, you would report it to developers, wouldn't you?

The crash can be reproduced sometimes.

-- Backtrace:
Application: Krita (krita), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fcec2488940 (LWP 23496))]

Thread 5 (Thread 0x7fce7a134700 (LWP 23515)):
#0  0x00007fcebe86c74d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fceb6c6c38c in g_main_context_poll (priority=2147483647, n_fds=1, fds=0x7fce700033b0, timeout=<optimized out>, context=0x7fce70000990) at /build/glib2.0-b4FPyK/glib2.0-2.48.2/./glib/gmain.c:4135
#2  g_main_context_iterate (context=context@entry=0x7fce70000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/glib2.0-b4FPyK/glib2.0-2.48.2/./glib/gmain.c:3835
#3  0x00007fceb6c6c49c in g_main_context_iteration (context=0x7fce70000990, may_block=may_block@entry=1) at /build/glib2.0-b4FPyK/glib2.0-2.48.2/./glib/gmain.c:3901
#4  0x00007fcebf39a0bb in QEventDispatcherGlib::processEvents (this=0x7fce700008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007fcebf3415ba in QEventLoop::exec (this=this@entry=0x7fce7a133c00, flags=..., flags@entry=...) at kernel/qeventloop.cpp:214
#6  0x00007fcebf1765e4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:525
#7  0x00007fce9ee17f86 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#8  0x00007fcebf181727 in QThreadPrivate::start (arg=0xc9c2df0) at thread/qthread_unix.cpp:367
#9  0x00007fceb83106ba in start_thread (arg=0x7fce7a134700) at pthread_create.c:333
#10 0x00007fcebe87841d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7fce83b0f700 (LWP 23514)):
#0  0x00007fcebe86827d in read () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fceb6caf6f0 in read (__nbytes=16, __buf=0x7fce83b0ea40, __fd=<optimized out>) at /usr/include/x86_64-linux-gnu/bits/unistd.h:44
#2  g_wakeup_acknowledge (wakeup=0x7fce940025b0) at /build/glib2.0-b4FPyK/glib2.0-2.48.2/./glib/gwakeup.c:210
#3  0x00007fceb6c6be74 in g_main_context_check (context=context@entry=0x7fce7c000990, max_priority=2147483647, fds=fds@entry=0x7fce7c004870, n_fds=n_fds@entry=1) at /build/glib2.0-b4FPyK/glib2.0-2.48.2/./glib/gmain.c:3632
#4  0x00007fceb6c6c330 in g_main_context_iterate (context=context@entry=0x7fce7c000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/glib2.0-b4FPyK/glib2.0-2.48.2/./glib/gmain.c:3837
#5  0x00007fceb6c6c49c in g_main_context_iteration (context=0x7fce7c000990, may_block=may_block@entry=1) at /build/glib2.0-b4FPyK/glib2.0-2.48.2/./glib/gmain.c:3901
#6  0x00007fcebf39a0bb in QEventDispatcherGlib::processEvents (this=0x7fce7c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#7  0x00007fcebf3415ba in QEventLoop::exec (this=this@entry=0x7fce83b0ec50, flags=..., flags@entry=...) at kernel/qeventloop.cpp:214
#8  0x00007fcebf1765e4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:525
#9  0x00007fce9e98e195 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#10 0x00007fcebf181727 in QThreadPrivate::start (arg=0xc87ea30) at thread/qthread_unix.cpp:367
#11 0x00007fceb83106ba in start_thread (arg=0x7fce83b0f700) at pthread_create.c:333
#12 0x00007fcebe87841d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7fce8330e700 (LWP 23511)):
#0  0x00007fcebe83d30d in nanosleep () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fcebf399a2d in qt_nanosleep (amount=...) at kernel/qelapsedtimer_unix.cpp:195
#2  0x00007fcebf180be8 in QThread::msleep (msecs=msecs@entry=700) at thread/qthread_unix.cpp:537
#3  0x00007fcebc42365a in KisTileDataSwapper::run (this=0x7fcebc923cc0 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder+64>) at /workspace/build/libs/image/tiles3/swap/kis_tile_data_swapper.cpp:97
#4  0x00007fcebf181727 in QThreadPrivate::start (arg=0x7fcebc923cc0 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder+64>) at thread/qthread_unix.cpp:367
#5  0x00007fceb83106ba in start_thread (arg=0x7fce8330e700) at pthread_create.c:333
#6  0x00007fcebe87841d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fce9bcb8700 (LWP 23499)):
#0  0x00007fceb6cb0a79 in g_mutex_lock (mutex=mutex@entry=0x7fce94000990) at /build/glib2.0-b4FPyK/glib2.0-2.48.2/./glib/gthread-posix.c:1335
#1  0x00007fceb6c6b929 in g_main_context_prepare (context=context@entry=0x7fce94000990, priority=priority@entry=0x7fce9bcb7b00) at /build/glib2.0-b4FPyK/glib2.0-2.48.2/./glib/gmain.c:3444
#2  0x00007fceb6c6c2bb in g_main_context_iterate (context=context@entry=0x7fce94000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/glib2.0-b4FPyK/glib2.0-2.48.2/./glib/gmain.c:3820
#3  0x00007fceb6c6c49c in g_main_context_iteration (context=0x7fce94000990, may_block=may_block@entry=1) at /build/glib2.0-b4FPyK/glib2.0-2.48.2/./glib/gmain.c:3901
#4  0x00007fcebf39a0bb in QEventDispatcherGlib::processEvents (this=0x7fce940008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007fcebf3415ba in QEventLoop::exec (this=this@entry=0x7fce9bcb7c40, flags=..., flags@entry=...) at kernel/qeventloop.cpp:214
#6  0x00007fcebf1765e4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:525
#7  0x00007fceb853bf35 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#8  0x00007fcebf181727 in QThreadPrivate::start (arg=0x7fceb87b4d60) at thread/qthread_unix.cpp:367
#9  0x00007fceb83106ba in start_thread (arg=0x7fce9bcb8700) at pthread_create.c:333
#10 0x00007fcebe87841d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7fcec2488940 (LWP 23496)):
[KCrash Handler]
#6  0x00007fcec16b0554 in KisCanvas2::setDisplayFilter (this=0x3d907840, displayFilter=...) at /workspace/build/libs/ui/canvas/kis_canvas2.cpp:625
#7  0x00007fce86c4383c in LutDockerDock::updateDisplaySettings (this=this@entry=0xcdb9260) at /workspace/build/plugins/dockers/lut/lutdocker_dock.cpp:415
#8  0x00007fce86c44692 in LutDockerDock::refillControls (this=this@entry=0xcdb9260) at /workspace/build/plugins/dockers/lut/lutdocker_dock.cpp:580
#9  0x00007fce86c4529a in LutDockerDock::resetOcioConfiguration (this=this@entry=0xcdb9260) at /workspace/build/plugins/dockers/lut/lutdocker_dock.cpp:485
#10 0x00007fce86c46af0 in LutDockerDock::setCanvas (this=0xcdb9260, _canvas=<optimized out>) at /workspace/build/plugins/dockers/lut/lutdocker_dock.cpp:192
#11 0x00007fcebba0fb1c in KoCanvasControllerWidget::Private::activate (this=<optimized out>) at /workspace/build/libs/flake/KoCanvasControllerWidget.cpp:148
#12 0x00007fcec1a58b89 in KisViewManager::setCurrentView (this=0x99603a0, view=view@entry=0x1e4c2590) at /workspace/build/libs/ui/KisViewManager.cpp:496
#13 0x00007fcec1a1ea6a in KisMainWindow::setActiveView (this=this@entry=0xb127fa0, view=view@entry=0x1e4c2590) at /workspace/build/libs/ui/KisMainWindow.cpp:1308
#14 0x00007fcec1a2109b in KisMainWindow::setActiveSubWindow (this=this@entry=0xb127fa0, window=<optimized out>) at /workspace/build/libs/ui/KisMainWindow.cpp:2233
#15 0x00007fcec1a2134c in KisMainWindow::subWindowActivated (this=0xb127fa0) at /workspace/build/libs/ui/KisMainWindow.cpp:2058
#16 0x00007fcec1a2cd93 in KisMainWindow::qt_static_metacall (_o=0xb127fa0, _c=<optimized out>, _id=<optimized out>, _a=0x7ffd85f09f90) at /workspace/build/obj-x86_64-linux-gnu/libs/ui/moc_KisMainWindow.cpp:350
#17 0x00007fcebf36ff79 in QMetaObject::activate (sender=sender@entry=0xb0f9bb0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd85f09f90) at kernel/qobject.cpp:3771
#18 0x00007fcebf370887 in QMetaObject::activate (sender=sender@entry=0xb0f9bb0, m=m@entry=0x7fcec07f67a0 <QMdiArea::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd85f09f90) at kernel/qobject.cpp:3633
#19 0x00007fcec0267a4f in QMdiArea::subWindowActivated (this=this@entry=0xb0f9bb0, _t1=0x7fcc8a1a7bf0) at .moc/moc_qmdiarea.cpp:308
#20 0x00007fcec026e3d0 in QMdiAreaPrivate::emitWindowActivated (this=this@entry=0xab68aa0, activeWindow=activeWindow@entry=0x7fcc8a1a7bf0) at widgets/qmdiarea.cpp:1092
#21 0x00007fcec026e57b in QMdiAreaPrivate::_q_processWindowStateChanged (this=0xab68aa0, oldState=..., newState=...) at widgets/qmdiarea.cpp:760
#22 0x00007fcec026e835 in QMdiArea::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at .moc/moc_qmdiarea.cpp:183
#23 0x00007fcebf36ff79 in QMetaObject::activate (sender=sender@entry=0x7fcc8a1a7bf0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd85f0a1c0) at kernel/qobject.cpp:3771
#24 0x00007fcebf370887 in QMetaObject::activate (sender=sender@entry=0x7fcc8a1a7bf0, m=m@entry=0x7fcec07f7380 <QMdiSubWindow::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd85f0a1c0) at kernel/qobject.cpp:3633
#25 0x00007fcec0273136 in QMdiSubWindow::windowStateChanged (this=this@entry=0x7fcc8a1a7bf0, _t1=..., _t2=...) at .moc/moc_qmdisubwindow.cpp:228
#26 0x00007fcec027b672 in QMdiSubWindowPrivate::setActive (this=0x7fcc8a1a7dc0, activate=<optimized out>, changeFocus=<optimized out>) at widgets/qmdisubwindow.cpp:1447
#27 0x00007fcec026e84f in QMdiArea::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at .moc/moc_qmdiarea.cpp:184
#28 0x00007fcebf36ff79 in QMetaObject::activate (sender=sender@entry=0xcedb4d0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd85f0a3c0) at kernel/qobject.cpp:3771
#29 0x00007fcebf370887 in QMetaObject::activate (sender=sender@entry=0xcedb4d0, m=m@entry=0x7fcec07fbea0 <QTabBar::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd85f0a3c0) at kernel/qobject.cpp:3633
#30 0x00007fcec02b530e in QTabBar::currentChanged (this=this@entry=0xcedb4d0, _t1=_t1@entry=1) at .moc/moc_qtabbar.cpp:333
#31 0x00007fcec02b9845 in QTabBar::setCurrentIndex (this=this@entry=0xcedb4d0, index=1) at widgets/qtabbar.cpp:1366
#32 0x00007fcec02bbf80 in QTabBar::mousePressEvent (this=this@entry=0xcedb4d0, event=event@entry=0x7ffd85f0aa70) at widgets/qtabbar.cpp:1969
#33 0x00007fcec026fb97 in QMdiAreaTabBar::mousePressEvent (this=0xcedb4d0, event=0x7ffd85f0aa70) at widgets/qmdiarea.cpp:588
#34 0x00007fcec015003f in QWidget::event (this=this@entry=0xcedb4d0, event=event@entry=0x7ffd85f0aa70) at kernel/qwidget.cpp:8897
#35 0x00007fcec02ba3db in QTabBar::event (this=0xcedb4d0, event=0x7ffd85f0aa70) at widgets/qtabbar.cpp:1691
#36 0x00007fcec011039c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0xcedb4d0, e=0x7ffd85f0aa70) at kernel/qapplication.cpp:3727
#37 0x00007fcec0117db3 in QApplication::notify (this=<optimized out>, receiver=receiver@entry=0xcedb4d0, e=e@entry=0x7ffd85f0aa70) at kernel/qapplication.cpp:3203
#38 0x00007fcec19ea4b7 in KisApplication::notify (this=<optimized out>, receiver=0xcedb4d0, event=0x7ffd85f0aa70) at /workspace/build/libs/ui/KisApplication.cpp:626
#39 0x00007fcebf343228 in QCoreApplication::notifyInternal2 (receiver=receiver@entry=0xcedb4d0, event=event@entry=0x7ffd85f0aa70) at kernel/qcoreapplication.cpp:1048
#40 0x00007fcec0116faf in QCoreApplication::sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:234
#41 QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0xcedb4d0, event=event@entry=0x7ffd85f0aa70, alienWidget=alienWidget@entry=0xcedb4d0, nativeWidget=0xb127fa0, buttonDown=buttonDown@entry=0x7fcec08198d0 <qt_button_down>, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:2695
#42 0x00007fcec0169abd in QWidgetWindow::handleMouseEvent (this=this@entry=0xab73a50, event=event@entry=0x7ffd85f0aef0) at kernel/qwidgetwindow.cpp:659
#43 0x00007fcec016c4cb in QWidgetWindow::event (this=0xab73a50, event=0x7ffd85f0aef0) at kernel/qwidgetwindow.cpp:280
#44 0x00007fcec011039c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0xab73a50, e=0x7ffd85f0aef0) at kernel/qapplication.cpp:3727
#45 0x00007fcec0117ab0 in QApplication::notify (this=0x7ffd85f0b850, receiver=receiver@entry=0xab73a50, e=e@entry=0x7ffd85f0aef0) at kernel/qapplication.cpp:3486
#46 0x00007fcec19ea4b7 in KisApplication::notify (this=<optimized out>, receiver=0xab73a50, event=0x7ffd85f0aef0) at /workspace/build/libs/ui/KisApplication.cpp:626
#47 0x00007fcebf343228 in QCoreApplication::notifyInternal2 (receiver=receiver@entry=0xab73a50, event=event@entry=0x7ffd85f0aef0) at kernel/qcoreapplication.cpp:1048
#48 0x00007fcebf9053cf in QCoreApplication::sendSpontaneousEvent (event=0x7ffd85f0aef0, receiver=0xab73a50) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:237
#49 QGuiApplicationPrivate::processMouseEvent (e=0x3349fd70) at kernel/qguiapplication.cpp:2082
#50 0x00007fcebf907415 in QGuiApplicationPrivate::processWindowSystemEvent (e=e@entry=0x3349fd70) at kernel/qguiapplication.cpp:1817
#51 0x00007fcebf8e1e1b in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at kernel/qwindowsysteminterface.cpp:1032
#52 0x00007fcea8b1f9ab in QPAEventDispatcherGlib::processEvents (this=0x229fec0, flags=...) at qeventdispatcher_glib.cpp:70
#53 0x00007fcebf3415ba in QEventLoop::exec (this=this@entry=0x7ffd85f0b160, flags=..., flags@entry=...) at kernel/qeventloop.cpp:214
#54 0x00007fcebf34a6c4 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1336
#55 0x00007fcebf8fbf8c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1762
#56 0x00007fcec01102f5 in QApplication::exec () at kernel/qapplication.cpp:2901
#57 0x0000000000406757 in main (argc=2, argv=0x7ffd85f0b9b8) at /workspace/build/krita/main.cc:438

Possible duplicates by query: bug 366243.

Reported using DrKonqi
Comment 1 wolthera 2018-11-16 15:55:41 UTC
This has a backtrace, so I'll confirm it. It seems to crash in the ocio code, weidly enough.

Do you happen to be using the LUT docker? If so, what kind of settings are you using on it?
Comment 2 Andras 2018-11-30 01:29:27 UTC
Thanks you for your response, I never used LUT and I just read about it on Krita page now. Is it maybe something between OICO configuration file and KDE neon? I have to note Krita is much much faster and it doesn't crashing lately. Also I don't know if it's related to OICO but some additional stuff appeared in tools/scripts menu with Color Space option among them. Should I start Krita with LC_ALL=C if it starts crashing again or it's nothing to do with this issue?
Comment 3 Halla Rempt 2018-11-30 08:36:14 UTC
No, the locale isn't relevant. If you haven't seen this happen with recent versions of Krita, changes are that this issue got fixed accidentally, as it were. 4.1.1 is a long time ago, or so it feels...
Comment 4 Andras 2018-11-30 14:24:31 UTC
I totally agree, especially considering the fact that it's seemingly happened on my KDE neon installations only and somehow it seems to have been resolved now. Yes, consider this issue as fixed. Thank you guys for this precious software and for all the hard work!
Comment 5 Halla Rempt 2018-11-30 15:06:35 UTC
Thanks!