So I did contact support, and it seems there is a solution to the orphan problem. Here’s what Backblaze support said:
A few things are going on here. Looking at your account here, you have your bucket lifecycle rules set to Keep all files . If you were to change your lifecycle rules to Keep only the last version of the file , the hidden file will be deleted after 24 hours of behind hidden, and clearing up storage space.
Now, another layer to add in here is when using an S3-compatible service, any time an object delete is called, it will be hidden. And from here, depending on the lifecycle rules of the bucket, it will be deleted or remain hidden. In your case, the files remain hidden and are not being deleted due to Keep ALL files.
For an object to be deleted when an object delete is called, is to have the file version ID with the accompanying delete call, which I don’t think the integration is doing if files are just being hidden.
In order for these files to be deleted from the bucket, you’ll need to sign into your Backblaze account, go to your bucket, and update its lifecycle setting to Keep only the last version of the file. This will delete the hidden file from the bucket after 24 hours.
By by default, Backblaze sets “Keep all files” lifecycle rule for newly created buckets. That’s probably why everyone has issues with orphans. Changing lifecycle rule to “Keep only the last version of the file” deletes orphans after 24 hours once it’s hidden.
This might be worth mentioning in this thread: