protonscr

Increase performance of "Move install folder" under Linux's file systems (like Ext4)

steamopen Feature RequestSteam client
ValveSoftware/steam-for-linux#4914 · opened 2017-03-29 by JoaaoVerona · updated 2019-07-18 · 1 comments · github
JJoaaoVerona 2017-03-29 github

Your system information

  • Steam client version (build number or date): API v017, built Mar 28 2017, at 00:09:44
  • Distribution: Fedora 24
  • Opted into Steam client beta?: Yes
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

Steam's move install folder option (available when right-clicking a game > Properties > Local files), which moves the game content from a library folder to another, could be vastly improved on Linux.
It seems that, currently, it moves file per file instead of the game directory as a whole, which might seem ok when on Windows's file system (NTFS), but if it actually moved the game directory (using, for example, the mv command), it could take great advantage of Linux's file system (Ext4) performance on this operation, which is an almost instant operation.
If this operation does not moves file per file, then, something is really strange here since a directory move should be ultra fast within most file systems on Linux.

Steps for reproducing this issue:

  1. Right-click an installed game
  2. Select Properties
  3. Go to Local files tab
  4. Select Move install folder
Kkakra 2018-09-27 github

The problem here is that mv won't work across file-system boundaries - that has to be checked first. And I think it's also a copy-then-delete operation. I'd prefer if it used cp --reflink=auto which can copy files on modern file systems (xfs, btrfs) without copying the actual contents (think like hardlink but it's still a new inode with separate contents).

Nothing extracted yet.