Summary: | Only check for required free space after asking the user whether or not to merge, and if merging, intelligently determine the space needed based on what needs to be merged | ||
---|---|---|---|
Product: | [Frameworks and Libraries] frameworks-kio | Reporter: | dft <dieseltrike> |
Component: | Overwrite dialog | Assignee: | David Faure <faure> |
Status: | CONFIRMED --- | ||
Severity: | normal | CC: | a.samirh78, kdelibs-bugs, kfm-devel, nate |
Priority: | NOR | Keywords: | usability |
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
dft
2019-09-21 16:01:01 UTC
Typo on #4 should say "missing 4GB" 4. Try resuming the copy - technically it should now only need to copy the missing 4GB. *** This bug has been marked as a duplicate of bug 141564 *** (In reply to Nate Graham from comment #2) > > *** This bug has been marked as a duplicate of bug 141564 *** Hi Nate, you have marked this as a dup of bug 141564. That is not correct. but *564 is about checking whether the destination is writeable or not. Bug 412163 is not the same thing. In this case the destination IS WRITEABLE. As mention in the first comment, lets say have partially copied a 30GB folder and stopped at 28GB copied. Now you want to resume the missing files, Dolphin will assume it has to copy the whole 30GB again and therefore fails saying insufficient space. Meanwhile it only has to copy 2GB. Therefore this is not the same bug at all. Darn, I remember that we fixed this in the past. I guess it's back... :/ Oops, wrong bug. Yes, you're right, it's not a duplicate. I don't see how that would work; we'd need something like an rsync-algorithm to compare the source and dest, to see what can be skipped and what needs to be copied. FWIW, for big copy/move operations like these I'd use rsync from terminal. I don't think you need to compare, Dolphin just needs a SKIP ALL that DOES NOT look and assume there isn't enough free space. EG You copy 16GB, you cancel at 14GB for what ever reason. Free space (after the 14GB) is 10GB. Now you copy again, technically it should only take up 2GB more and means you DO have enough space, but Dolphin assumes you need to copy the WHOLE 16GB again. A skip all (ignore space) option should be quick to develop. That way it can just skip the files already copied and you will sit with 8GB free. The code doesn't know that some files were copied, and then the copy was cancelled then resumed :) The only way to know would be to list all the dirs in both source and destination, which would take time depending on the sizes of those dirs. I think you are over complicating the solution. It it does not need to know it was cancelled. Say you are copying a folder of movies. You cancel cause you have to go out or what ever and shutdown. Now you come back and want to resume. A simple SKIP ALL instead of a global check for free space would be fine. This would be VERY fast and has been done this way for years, just look at Total Commander. Please can we just disable checking for freespace. It's now end 2021 and Dolphin is useless for merging. It means I have to use rscync or krusader to do such a simple task... Again I have to copy 420GiB folder from Drive A to B. B ALREADY has 300GiB of the folder. Now Dolphin moans and STOPS me from even copying because only 400GiB is free...This is ridiculous and pathetic design flaw which can be solved in seconds. Just disable checking. I would like to bring this up again and keep it simple with another use case. You have a folder of 500GB and want to copy to a drive that has 480GB free. Destination is ZFS or BTRFS with compression means it should EASILY be able to handle it 500GB data. This is why I think going ahead it's even more important for Dolphin to have an option to check if sufficient space is available or not. Without this option it means Dolphin can not be used at all as a FM with "modern" filesystems. Instead I have to open DC. It should have the option to "copy anyway" even if Dolphin "thinks" there's not enough free space. |