Yellow-Dog-Man / Resonite-Issues

Issue repository for Resonite.
https://resonite.com
136 stars 2 forks source link

Deleted records recovery command provided zip with mostly 0 byte files. #1357

Open XDelta opened 7 months ago

XDelta commented 7 months ago

Describe the bug?

I used the /requestDeleteRecovery command attempting to find an object I deleted about 2 weeks ago. However I noticed that even when doing /requestDeleteRecovery 30d * The bot said it only recovered 1 item. Curiously, the zip that was emailed to me contained 32 files showing every item I had actually deleted in that time span. Most of these were 0 byte frdt files.

The content of the deleted object isn't all that important but in trying to see if I could recover it, I found it odd what objects were and were not able to be recovered in some manner? Potentially a bug in actually providing the files as it still knows they existed, the path and the name.

To Reproduce

Not sure how I can /quickly/ reproduce this from scratch with deleting items as it seems likely to have some time aspect to it.

Use the /requestDeleteRecovery command and possibly see some or multiple 0 byte files of things you deleted in the past 30 days

Expected behavior

Files within the last 30 days to be recoverable or atleast mostly recoverable (structure/components without assets). In this case I only wanted some of the components/nodes from the object

Screenshots

The 1 file recovered was among legacy control images I had saved at some point. I deleted these all at the same time and only 1 was recoverable. 6f72602e75

Resonite Version Number

2024.2.12.1430

Log Files

Occurs outside client aside from bot interaction via a message in game.

Reporters

_deltawolf

shiftyscales commented 7 months ago

Does the same occur with a recovery time shorter than 30 days, @XDelta? The maximum recovery period is 30 days because after this the items are deleted.

XDelta commented 7 months ago

All of the items in the recovery zip were things within the past 30 days, none of them would be past that time frame. The item attempting to be recovered was about 16 days old or so. Using shorter time frames like the last 20 days gets the same result getting a hand full of deleted things with only 1-2 having a file size, the rest being 0 bytes

shiftyscales commented 7 months ago

Seeking input from @Frooxius on this one.

Frooxius commented 7 months ago

We'll have to look into this.

Are we able to replicate this? Say with a testing account?

shiftyscales commented 7 months ago

I just tested this against my account. My expectation would be that the replication object I had made and deleted in #656 should have turned up as it was within the 30d window- but it appears to be gone, @Frooxius.

image

Frooxius commented 7 months ago

Ah thanks for the info! Yeah that seems like something is going wrong there. I'll have a poke.

XDelta commented 7 months ago

@shiftyscales Curious if you make an item and delete it shortly after, then request delete recovery again so it gives you a zip, if you also see a similar thing occur in the zip file.

ghost commented 7 months ago

I have also had a similar situation where a user I believe @989onan, deleted an item and it could not be recovered, but when I did it it worked just fine

shiftyscales commented 7 months ago

How long was it between when that other user deleted the item and attempted to recover it compared to you, @ExoTheWicker? Narrowing the range on how long items can actually be recovered from would help.

shiftyscales commented 7 months ago

Test record: resrec:///U-Shifty/R-54f10ad8-ebba-4760-97cf-329157b739ae Asset (texture) associated to the above record: resdb:///8a9657c3546708a3327574e367dd40e6117026f202e53ff03d3cededf3ec2f9c.jpg

Deleting it, and attempting the command has successfully recovered the file immediately after deletion- even on a separate database that doesn't have the assets cached.

Strangely- it appears that having other non-zero size files has re-disovered the initial replication object which is now 0 bytes.

Object names/paths for you to check when you can please @Frooxius: The previously mentioned replication object from that other issue which is now a zero byte file: /Inventory/QC/Objects/cute_brown_rabbit_is_sitting_on_top_of_bamboo_bag_in_a_green_background_hd_animals-1920x1080-2309621747

Two more replication objects I uploaded, and deleted today in short order: /Inventory/boyrabbitnames-1-2376007206.jpg /Inventory/holland-lop-babies.jpg

XDelta commented 7 months ago

I made an object 4 days ago, (2/16) while testing and just attempted to recover the object today (2/20) to find that my zip again only 'recovered' 1 object but again includes the names and empty files for all the other objects. In this case I had again run the command /requestDeleteRecovery 30d *, the only object that was returned was the same one from my initial post. The testing object was already non-recoverable.

XDelta commented 7 months ago

Also ran /requestDeleteRecovery 5d * to try to specifically get the one test object but the bot reports Nothing found to recover

shiftyscales commented 7 months ago

Just tried to recover at the ~50 hour mark and it indicates there is nothing found to recover, @Frooxius. So my best guess is that the unpinned assets are deleted at the 48 hour mark and that somehow causes things to fail.

ghost commented 7 months ago

How long was it between when that other user deleted the item and attempted to recover it compared to you, @ExoTheWicker? Narrowing the range on how long items can actually be recovered from would help.

Less than 15 minutes.