When I go to upload / download a file with kdialog (for example called by chromium) it just doesn't load or freezes and is incredibly slow, if I repeat clicking it takes even up to 2 minutes (usually about 30 seconds) to even start up kdialog. Very frustrating. Reproducible: Always Steps to Reproduce: 1. Launch Chromium 2. Right click and press "Save Page As" 3. Observe the slowness Actual Results: This time for example it took 22 seconds to load a file save dialog with 3 columns of folders in it. Expected Results: Near-instant as I'm used to (e,g. Firefox's own dialog tool works fine). $ kdialog --version Qt: 4.8.5 KDE Development Platform: 4.10.5 KDialog: 1.0 Debian sid up to date.
Is the file dialog also slow when run from inside a KDE application, pointing it to the same directory?
If the "2 minutes" figure is reproducible by invoking "kdialog --getopenurl $HOME" (or any other directory), please run it through strace, and attach the output. I am interested to see where it hangs (remote folders?)
My strace! Seems to lag the most around a line like: poll([{fd=7... http://dandart.co.uk/kdialog-strace.log.bz2
This particuliar strace took 27 seconds before it showed up a dialog.
fd 7 is the D-Bus socket, in other words, it waits for a reply on D-Bus but does not get any (times out). To debug this, first find out if this is related to the entries in the Places Panel. You can temporarily move ~/.kde/share/apps/kfileplaces/bookmarks.xml to a different file to test this. If this does not help, another possible cause could be a kded4 module blocking the D-Bus. You can disable modules to check this. For more information about debugging kded, please see http://kdepepo.wordpress.com/2011/05/11/troubleshooting-kded4-bugs/
Could you isolate the Places Panel entry or kded module that causes the D-Bus freeze?
Thank you - sorry for not getting back to you. I have now gotten an almost instant (<2s) kdialog launch time. It appeared that the slowdown may have resulted from various SFTP links that I've kept in my places bar until now. Are all bookmarks (inc. SFTP links) auto-cached or scraped on every call?
Related bug report: bug#184062
*** Bug 349116 has been marked as a duplicate of this bug. ***
Created attachment 93172 [details] Excerpt from 'strace -p PID-OF-KDIALOG' while KDialog is frozen as described
Note that 'strace -o ... kdialog ...' does not hang for me. But if I run KDialog with the same parameters but *not* under strace, it does hang, the same as when run from Chromium. Therefore I generated strace using '-p PID' instead. I do not attach the full strace since it is over 70 MB in size. However, the attached excerpt is basically what repeats over and over again as long as KDialog is frozen.
Created attachment 93324 [details] Repeating panel icons
> You can temporarily move ~/.kde/share/apps/kfileplaces/bookmarks.xml to a different file to test this. This fixed the 10-15 second delay for me but open/save dialogs still show repeating icons in the left panel. See attachment 'Repeating panel icons'.
In my case this doesn't help at all. I renamed 'bookmarks.xml' to 'xbookmarks.xml', but kfile starts on that huge directory as slowly as before. It also created new, much smaller, 'bookmarks.xml' with different contents, so renaming did have effect, just not on speed.
Almost two years ago (in Comment 1: https://bugs.kde.org/show_bug.cgi?id=323650#c1 ), we asked if it happens in a KDE application for the same directory. No response yet....
I'm a different user with the same problem. For me it is like this: Bug is reproducible: - if you start the dialog from Chrome in the huge directory; - if you start it as 'kdialog' from the command line for that directory. Bug is *not* reproducible: - if you start the dialog from KWrite, Gvenview or, I guess, any other KDE application; - if you run kdialog from under strace; - if you start the dialog for other directory and then navigate to this huge one.
So really it's just the location? On current setup it's still about maybe 10s from kate.
Same problem. However, in my case it happens even when I start it from command line. Kdialog window shows, but it's completely unresponsive until after about 30 secs. However, I've run it with strace and in fact it's very busy in that time. I'm copying a fragment of the strace log. It seems to be scanning filesystems (I've got a fair number of partitions, NTFS, ext3 and ext4), but some of them are not available and Kdialog keeps trying, probably until there is a timeout. I hope this can shed some light... poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"&\3\2\0\220\2\0\0", 8}, {NULL, 0}, {"", 0}], 3) = 8 poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\1\265i\0\0\0\0\220\2\0\0\217\271\36\2\353\6\244\0\353\6\244\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32 recvmsg(6, 0x7ffd51644e50, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffd51644e50, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"(\3\4\0\220\2\0\0\36\0\240\4\356\6\246\0", 16}, {NULL, 0}, {"", 0}], 3) = 16 poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\1\266i\0\0\0\0\0\0\0\0\242\3\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32 recvmsg(6, 0x7ffd51644d90, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffd51644d90, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"&\3\2\0\220\2\0\0", 8}, {NULL, 0}, {"", 0}], 3) = 8 poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\1\267i\0\0\0\0\220\2\0\0\217\271\36\2\353\6\244\0\353\6\244\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32 recvmsg(6, 0x7ffd51645130, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffd51645130, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"(\3\4\0\220\2\0\0\22\0\240\4\353\6\244\0", 16}, {NULL, 0}, {"", 0}], 3) = 16 poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}]) recvmsg(6, {msg_name(0)=NULL, msg_iov(1)=[{"\1\1\270i\0\0\0\0\0\0\0\0\252\3\n\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096}], msg_controllen=0, msg_flags=0}, 0) = 32 recvmsg(6, 0x7ffd51644d90, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffd51644d90, 0) = -1 EAGAIN (Resource temporarily unavailable) recvmsg(6, 0x7ffd51645190, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}]) writev(6, [{"(\3\4\0\220\2\0\0\22\0\240\4\353\6\244\0", 16}, {NULL, 0}, {"", 0}], 3) = 16
I think Alberto is on to something when he says it relates to volumes being unavailable. I've only got one "volume" (disk, and partition), but I also have a bluetooth connection configured to my cellphone. When that connection isn't live, this bug happens. I disabled bluetooth (sledgehammer approach) through the tray icon, and the problem is instantly solved. I don't know what that means on a code level, but that's where I'd go looking.
For me this happens in Chrome. But the the KDialog stays open indefinitely. Not even kill -9 help. Any ideas? Using Kubuntu 15.10 with Plasma 5.5.4
Even running this from terminal will hang the KDIALOG: kdialog --getopenurl $HOME
I news on this? Makes it impossible to attach any files when the app itself is using KDIALOG
Same problem here. Arch Linux + Plasma 5.6.4-1 + Chromium