ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.17k stars 173 forks source link

Linux client always overwrite cloud saves without asking #10447

Open cloudwu opened 5 months ago

cloudwu commented 5 months ago

Your system information

Please describe your issue in as much detail as possible:

I play games on two PC, linux/manjaro and windows . When I open the steam client on linux, it always upload the older game saves onto cloud immediately without asking, and overwrite the newer version game saves I played on windows before.

I played a few games these days, and they all have this problem.

cloudwu commented 3 months ago

@kisak-valve The steam client ruined my factorio saves (played on windows before) yesterday when I try to play it on my linux :(

I check the cloud_log.txt and found:

[2024-03-19 20:57:27] [AppID 427520] YldWriteCacheDirectoryToFile - saved to '/home/cloud/.local/share/Steam/userdata/146613497/427520/remotecache.vdf'
[2024-03-19 20:57:27] [AppID 427520] Starting sync (down,)
[2024-03-19 20:57:27] [AppID 427520] Attempting to sync from local change number '14190553590573941476' to global change number '11239354258589619548'
[2024-03-19 20:57:27] [AppID 427520] Need to download file player-data.json
[2024-03-19 20:57:27] [AppID 427520] Need to download file Factorio/saves/_autosave1.zip
[2024-03-19 20:57:27] [AppID 427520] Need to download file Factorio/saves/_autosave2.zip
[2024-03-19 20:57:27] [AppID 427520] Need to download file Factorio/saves/_autosave3.zip
[2024-03-19 20:57:27] [AppID 427520] Need to download file Factorio/saves/cube.zip
[2024-03-19 20:57:27] [AppID 427520] Need to download file Factorio/saves/cubebak.zip
[2024-03-19 20:57:28] [AppID 427520] HTTP download for file 'player-data.json' from host 'steamusercontent-a.akamaihd.net', path /filedownload/81d567c703dbc7ebaa5fcompressed, beginning. . .
[2024-03-19 20:57:28] [AppID 427520] HTTP download for file 'Factorio/saves/_autosave2.zip' from host 'steamusercontent-a.akamaihd.net', path /filedownload/5aa17bfe17c1df549534compressed, beginning. . .
[2024-03-19 20:57:28] [AppID 427520] HTTP download for file 'Factorio/saves/_autosave3.zip' from host 'steamusercontent-a.akamaihd.net', path /filedownload/cfe3de3bff7233ace285compressed, beginning. . .
[2024-03-19 20:57:28] [AppID 427520] HTTP download for file 'Factorio/saves/cube.zip' from host 'steamusercontent-a.akamaihd.net', path /filedownload/69568b84586041e3aa12compressed, beginning. . .
[2024-03-19 20:57:28] [AppID 427520] HTTP download for file 'Factorio/saves/cubebak.zip' from host 'steamusercontent-a.akamaihd.net', path /filedownload/59a7188891f9df23a891compressed, beginning. . .
[2024-03-19 20:57:28] [AppID 427520] HTTP download for file 'Factorio/saves/_autosave1.zip' from host 'steamusercontent-a.akamaihd.net', path /filedownload/ebc89e8051f6706f86cccompressed, beginning. . .
[2024-03-19 20:57:28] [AppID 427520] HTTP download for file 'Factorio/saves/_autosave2.zip' from host 'steamusercontent-a.akamaihd.net' - Returned error 'Not Found' (404).
[2024-03-19 20:57:28] [AppID 427520] File wasn't found on storage, so assume it is missing. Setting local copy to upload
[2024-03-19 20:57:28] [AppID 427520] Download Corrupted or unrecoverable data error for file Factorio/saves/_autosave2.zip
[2024-03-19 20:57:28] [AppID 427520] HTTP download for file 'player-data.json' from host 'steamusercontent-a.akamaihd.net' - Returned error 'Not Found' (404).
[2024-03-19 20:57:28] [AppID 427520] File wasn't found on storage, so assume it is missing. Setting local copy to upload
[2024-03-19 20:57:28] [AppID 427520] Download Corrupted or unrecoverable data error for file player-data.json
[2024-03-19 20:57:28] [AppID 427520] HTTP download for file 'Factorio/saves/cube.zip' from host 'steamusercontent-a.akamaihd.net' - Returned error 'Not Found' (404).
[2024-03-19 20:57:28] [AppID 427520] File wasn't found on storage, so assume it is missing. Setting local copy to upload
[2024-03-19 20:57:28] [AppID 427520] Download Corrupted or unrecoverable data error for file Factorio/saves/cube.zip
[2024-03-19 20:57:28] [AppID 427520] HTTP download for file 'Factorio/saves/_autosave3.zip' from host 'steamusercontent-a.akamaihd.net' - Returned error 'Not Found' (404).
[2024-03-19 20:57:28] [AppID 427520] File wasn't found on storage, so assume it is missing. Setting local copy to upload
[2024-03-19 20:57:28] [AppID 427520] Download Corrupted or unrecoverable data error for file Factorio/saves/_autosave3.zip
[2024-03-19 20:57:28] [AppID 427520] HTTP download for file 'Factorio/saves/cubebak.zip' from host 'steamusercontent-a.akamaihd.net' - Returned error 'Not Found' (404).
[2024-03-19 20:57:28] [AppID 427520] File wasn't found on storage, and not on local disk. Setting file to forget
[2024-03-19 20:57:28] [AppID 427520] Download Corrupted or unrecoverable data error for file Factorio/saves/cubebak.zip
[2024-03-19 20:57:29] [AppID 427520] HTTP download for file 'Factorio/saves/_autosave1.zip' from host 'steamusercontent-a.akamaihd.net' - Returned error 'Not Found' (404).
[2024-03-19 20:57:29] [AppID 427520] File wasn't found on storage, so assume it is missing. Setting local copy to upload
[2024-03-19 20:57:29] [AppID 427520] Download Corrupted or unrecoverable data error for file Factorio/saves/_autosave1.zip
[2024-03-19 20:57:29] [AppID 427520] Download complete, result OK
[2024-03-19 20:57:29] [AppID 427520] Successfully synced to ChangeNumber 11239354258589619548
[2024-03-19 20:57:29] [AppID 427520] Starting sync (up,)
[2024-03-19 20:57:29] [AppID 427520] YldWriteCacheDirectoryToFile - saved to '/home/cloud/.local/share/Steam/userdata/146613497/427520/remotecache.vdf'
[2024-03-19 20:57:29] [AppID 427520] Currently already synced to global change number '11239354258589619548', should be nothing to download
[2024-03-19 20:57:29] [AppID 427520] Need to upload file player-data.json
[2024-03-19 20:57:29] [AppID 427520] Need to upload file Factorio/saves/_autosave1.zip
[2024-03-19 20:57:29] [AppID 427520] Need to upload file Factorio/saves/_autosave2.zip
[2024-03-19 20:57:29] [AppID 427520] Need to upload file Factorio/saves/_autosave3.zip
[2024-03-19 20:57:29] [AppID 427520] Need to upload file Factorio/saves/cube.zip
[2024-03-19 20:57:29] [AppID 427520] Need to forget file Factorio/saves/cubebak.zip
[2024-03-19 20:57:30] [AppID 427520] Upload batch initiated, ID: 8332890521445140804, ChangeNumber: 14659422512564762791, App Build ID: 13313252
[2024-03-19 20:57:31] [AppID 427520] Forget OK for file Factorio/saves/cubebak.zip
[2024-03-19 20:57:31] [AppID 427520] HTTP upload for file 'player-data.json' beginning . . .
[2024-03-19 20:57:31] [AppID 427520] HTTP upload for file 'Factorio/saves/cube.zip' beginning . . .
[2024-03-19 20:57:31] [AppID 427520] HTTP upload for file 'Factorio/saves/_autosave3.zip' beginning . . .
[2024-03-19 20:57:31] [AppID 427520] HTTP upload for file 'Factorio/saves/_autosave1.zip' beginning . . .
[2024-03-19 20:57:31] [AppID 427520] HTTP upload for file 'player-data.json' (offset=0, length=9935) to (47.113.75.140 / 47.113.75.140, host: steamcloud-hkg.oss-accelerate.aliyuncs.com), path /F9/24/BD/08/427520/01B_9_14FE7285_6A52A_1493.dat?OSSAccessKeyId=LTAI4GGKSrY9rm6UigoBmqjd&Expires=1710856651&Signature=leRYm5khDpWHaY2z%2BylC6n16kxI%3D - success.
[2024-03-19 20:57:31] [AppID 427520] HTTP upload for file 'Factorio/saves/_autosave2.zip' beginning . . .
[2024-03-19 20:57:31] [AppID 427520] Upload OK for file player-data.json
[2024-03-19 20:57:32] [AppID 427520] HTTP upload for file 'Factorio/saves/_autosave2.zip' (offset=0, length=3724210) to (47.113.75.140 / 47.113.75.140, host: steamcloud-hkg.oss-accelerate.aliyuncs.com), path /F9/24/BD/08/427520/01B_9_14FE7285_6A640_1282.dat?OSSAccessKeyId=LTAI4GGKSrY9rm6UigoBmqjd&Expires=1710856651&Signature=3CahUPM8RoLSPaeRHmjHgHJ2vFk%3D - success.
[2024-03-19 20:57:33] [AppID 427520] Upload OK for file Factorio/saves/_autosave2.zip
[2024-03-19 20:57:34] [AppID 427520] HTTP upload for file 'Factorio/saves/cube.zip' (offset=0, length=3535476) to (47.113.75.144 / 47.113.75.144, host: steamcloud-sgp.oss-accelerate.aliyuncs.com), path /F9/24/BD/08/427520/087_8_24114CD9_7506A_26.dat?OSSAccessKeyId=LTAI4GGKSrY9rm6UigoBmqjd&Expires=1710856651&Signature=i9KixpPCcI357hXfnM926of%2F7C8%3D - success.
[2024-03-19 20:57:34] [AppID 427520] HTTP upload for file 'Factorio/saves/_autosave1.zip' (offset=0, length=3655759) to (47.113.75.144 / 47.113.75.144, host: steamcloud-sgp.oss-accelerate.aliyuncs.com), path /F9/24/BD/08/427520/01B_9_14FE7285_6A56D_1303.dat?OSSAccessKeyId=LTAI4GGKSrY9rm6UigoBmqjd&Expires=1710856651&Signature=BUmFQH0CXcOvg7m%2B6hKqJS06uZo%3D - success.
[2024-03-19 20:57:34] [AppID 427520] HTTP upload for file 'Factorio/saves/_autosave3.zip' (offset=0, length=3555530) to (47.113.75.144 / 47.113.75.144, host: steamcloud-sgp.oss-accelerate.aliyuncs.com), path /F9/24/BD/08/427520/01B_9_14FE7285_6A717_1252.dat?OSSAccessKeyId=LTAI4GGKSrY9rm6UigoBmqjd&Expires=1710856651&Signature=wbxyo8MhQCc7o%2Fyv3U9yvCnzUXk%3D - success.
[2024-03-19 20:57:34] [AppID 427520] Upload OK for file Factorio/saves/cube.zip
[2024-03-19 20:57:34] [AppID 427520] Upload OK for file Factorio/saves/_autosave1.zip
[2024-03-19 20:57:34] [AppID 427520] Upload OK for file Factorio/saves/_autosave3.zip
[2024-03-19 20:57:35] [AppID 427520] Upload complete, result OK

It said HTTP download for file 'Factorio/saves/cube.zip' from host 'steamusercontent-a.akamaihd.net' - Returned error 'Not Found' (404).

But I checked https://store.steampowered.com/account/remotestorageapp/?appid=427520 , and I can see the file Factorio/saves/cube.zip .

And then it update the local copy (the old one) to overwrite my newer saves (played on windows).

cloudwu commented 3 months ago

I think : download an old version and then upload an new one, It's a design mistake.

We should download the old version first and calculate the hash, and then upload the new version with 2 hash, old hash and new hash . The cloud server should check the hash to confirm.