Bug 338462

Summary: FILEIO : Image Editor hungs at attempt to create new image version on a samba share
Product: [Applications] digikam Reporter: Yuri Ingultsov <yuri>
Component: DImg-FileIOAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: caulier.gilles
Priority: NOR    
Version: 4.1.0   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In: 8.2.0
Sentry Crash Report:
Attachments: hung at saving new version of image

Description Yuri Ingultsov 2014-08-22 00:40:25 UTC
Created attachment 88360 [details]
hung at saving new version of image

Steps to preproduce
1. add collection located on a mounted samba share
2. open an .jpeg image to edit
3. add 2-3 filters (resize and sharpen for ex)
4. click "Close Editor" and then "Save Changes as New Version of Image"
the Imahe editor will hung at "Please wait while image to be saved..." 

see attached screenshot


kDebut Trace
digikam(23052)/digikam (core) Digikam::EditorWindow::startingSaveVersion: Saving image KUrl("file:///home/yurii/smb4k/DRAKEN/shared/photos/2014/2014-08-16 Парк Горького/YIMG_577.jpg") non-destructive, new version: true , saveAs: false format: ""
digikam(23052)/digikam (core) Digikam::VersionNameCreator::setSaveFileName: need new version true
digikam(23052)/digikam (core) Digikam::VersionNameCreator::setSaveFileName: analyzing file "YIMG_577.jpg" QVariant(int, 1) QVariant(int, 1)
digikam(23052)/digikam (core) Digikam::VersionNameCreator::checkIntermediates: Will replace false save after each session false save after raw false save when not repro false
digikam(23052)/digikam (core) Digikam::VersionNameCreator::checkIntermediates: initial history 1 current history 3 first step 1 last step 1
digikam(23052)/digikam (core) Digikam::VersionNameCreator::checkIntermediates: Save intermediates after steps ()
digikam(23052)/digikam (core) Digikam::EditorWindow::startingSaveVersion: Writing file to  KUrl("file:///home/yurii/smb4k/DRAKEN/shared/photos/2014/2014-08-16 Парк Горького/YIMG_577_v1.jpg")
digikam(23052)/KGEOMAP KGeoMap::ItemMarkerTiler::slotSourceModelReset: ----
digikam(23052)/digikam (core) Digikam::EditorCore::Private::saveAs: Saving to : "/home/yurii/smb4k/DRAKEN/shared/photos/2014/2014-08-16 Парк Горького/EditorWindow-A23052.digikamtempfile.jpg" ( "jpg" )
digikam(23052)/digikam (core) Digikam::EditorCore::Private::saveNext: Saving file "/home/yurii/smb4k/DRAKEN/shared/photos/2014/2014-08-16 Парк Горького/EditorWindow-A23052.digikamtempfile.jpg" at -1
digikam(23052)/digikam (core) Digikam::JPEGLoader::save: Using LibJPEG none chroma-subsampling (4:4:4)
digikam(23052)/digikam (core) Digikam::JPEGLoader::save: Using LibJPEG quality compression value:  100
digikam(23052)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/yurii/smb4k/DRAKEN/shared/photos/2014/2014-08-16 Парк Горького"
digikam(23052)/KEXIV2 KExiv2Iface::KExiv2::save: KExiv2::metadataWritingMode 0
digikam(23052)/KEXIV2 KExiv2Iface::KExiv2::save: Will write Metadata to file "EditorWindow-A23052.digikamtempfile.jpg"
digikam(23052)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/yurii/smb4k/DRAKEN/shared/photos/2014/2014-08-16 Парк Горького"



looking on a network I found the similar issue here http://digikam.1695700.n4.nabble.com/Hang-while-saving-or-updating-JPEG-on-the-network-tt4670704.html#none
Comment 1 caulier.gilles 2016-07-04 20:06:44 UTC
This file still valid using digiKam 5.0.0 ?

Gilles Caulier
Comment 2 caulier.gilles 2016-11-25 20:04:29 UTC
What's about this file using digiKam AppImage bundle 5.4.0 pre release given at
this url :

https://drive.google.com/drive/folders/0BzeiVr-byqt5Y0tIRWVWelRJenM

Gilles Caulier
Comment 3 caulier.gilles 2018-11-11 08:31:09 UTC
This problem is certainly due to CIFS non support in Exiv2. Look this Exiv2 forum entry :

http://dev.exiv2.org/boards/3/topics/3221

Gilles Caulier
Comment 4 caulier.gilles 2020-08-02 14:44:39 UTC
digiKam 7.0.0 stable release is now published:

https://www.digikam.org/news/2020-07-19-7.0.0_release_announcement/

We need a fresh feedback on this file using this version.

Best regards

Gilles Caulier
Comment 5 caulier.gilles 2022-01-09 04:46:01 UTC
Hi Yuri and happy new year,

Can you reproduce the problem with digiKam 7.5.0 pre-release AppImage bundle
for Linux available here :

https://files.kde.org/digikam/

Best regards

Gilles Caulier
Comment 6 caulier.gilles 2023-04-21 05:54:18 UTC
@Yuri

digiKam 8.0.0 is released. This file still valid ?

Gilles Caulier
Comment 7 caulier.gilles 2023-10-12 14:37:03 UTC
@Yuri,


What's about this file using current 8.2.0 AppImage Linux bundle ? It's
reproducible ?

https://files.kde.org/digikam/

Note: bundle is now based on Qt 5.15.11 and KDE framework 5.110.

Thanks in advance

Gilles Caulier
Comment 8 Maik Qualmann 2023-10-29 07:44:04 UTC
Git commit 7f900c7221e3c7977369527b21f56261614a95e1 by Maik Qualmann.
Committed on 29/10/2023 at 08:41.
Pushed by mqualmann into branch 'master'.

use QIODevice to read and write files with Exiv2
Related: bug 394736, bug 446363, bug 398582
FIXED-IN: 8.2.0

M  +3    -3    NEWS
M  +14   -8    core/libs/metadataengine/engine/metaengine_comments.cpp
M  +14   -8    core/libs/metadataengine/engine/metaengine_exif.cpp
M  +28   -18   core/libs/metadataengine/engine/metaengine_fileio.cpp
M  +14   -8    core/libs/metadataengine/engine/metaengine_iptc.cpp
M  +112  -43   core/libs/metadataengine/engine/metaengine_p.cpp
M  +14   -8    core/libs/metadataengine/engine/metaengine_previews.cpp
M  +15   -8    core/libs/metadataengine/engine/metaengine_xmp.cpp

https://invent.kde.org/graphics/digikam/-/commit/7f900c7221e3c7977369527b21f56261614a95e1