Back to Top

Backup Restore / Import Wipes Media? Bug?

3 posts / 0 new
Last post
mneimeyer
Offline
Last seen: 9 years 5 months ago
Joined: 10/18/2010 - 14:22
Backup Restore / Import Wipes Media? Bug?

This is jumbled ... sorry... Also if this isn't the right spot... sorry (again)...

Before:
Samsung Captivate running the stock Eclair.
DoggCatcher of unknown version but I had updated faithfully whenever a new one came out.
Storage directory set to /sdcard/sd (the external SD card)

After:
Samsung Captive running Cognition 3.04 (a Froyo based ROM that is derived from the Canadian Rogers Galaxy S device stock Froyo)
DoggCatcher version 1.1.1848

How it happened:
I finally decided to try the Froyo waters and flashed my Captivate. Prior to doing so I used the Backup/Restore menu to backup my DC DB. Then I connected my Captivate to the computer and copied the /DoggCatcher/Export folder. I verified that the /sdcard/sd/DoggCatcher folders had the media in them. I shut down the Captivate and removed the external sdcard. I flashed my Captivate, put the SD Card back in, and when everything else was up and ready to go I downloaded the latest DC from the marketplace. At this point I connected my phone to the computer and moved the Export folder back onto the internal card where it originally was. Then I started DC and used the Backup/Restore menu to Restore the backup. It warned me that loading the backup would overwrite the current setup. I accepted that and it loaded all my podcasts. When I went to actually play them though there was no media. Mounting the phone on the computer I found that the folders in /sdcard/sd/DoggCatcher/ were empty.

Expected Behavior:
While it flawlessly restored all my preferences and feeds... If I restore from a backup and the storage directory contains the right media DC shouldn't wipe out those files. As it was I had to redownload about 5Gb of podcast episodes.

Comments:
In the interest of full disclosure I don't KNOW that something else didn't happen in the whole process because the ONLY thing on that external SD card was my DC storage folder. I also assume that the folder gets wiped on the theory that it is "better" to remove good files than to leave bad files just hanging around not connected to anything. Perhaps some algorithm could be used to determine if files are present if they are the "restored" ones. For example, if the storage folder is not the one in current use and it has contents then ask "the stuff that's there... is that for the backup you are restoring?". Even better some sort of "audit" (based on file size and name?) that removes orphans. Maybe it's best to always ask? Maybe change the standard "Warning: I'm going to delete everything." to "Warning: I'm going to delete everything including the files in /X/Y" or "Warning: I'm going to delete everyting including the files in /X/Y/ but when I'm done you can copy backed up files there and restart DC to avoid having to redownload." What would be cool is when you do a backup have DC offer to email you the steps to restore your media files by copying from "here" to someplace safe and then back when you are ready to do the restore.

Side Note:
DC cheerfully downloaded all the missing files by itself EXCEPT the In Progress files. Whether it's automatic or an option it would be cool if DC would treat missing media for In Progress the same way it treats missing media for New episodes. As it was I had to decide if I wanted to listen to the podcasts out of order (since the next new one was available or to listen to something else while that one downloaded, which it did as soon as I tried to play it)

Thanks...

Matt

P.S. While I am complaining about this... Please realize that I really LOVE DoggCatcher and frequently recommend it.

eric
Offline
Last seen: 2 years 10 months ago
Joined: 11/06/2008 - 22:02
DC downloads

DC stores the media in DoggCatcher/episodeenclosures/[numbers]. There actually isn't any logic in DC at the moment to delete the numbered directories other than when you manually delete a feed. The backup and restore doesn't touch that at all. So I would say pretty confidently that another step either moved or deleted the episodeenclosures directory.

What you are describing as what should happen is the way it is designed to work. You would do a backup to an sd card. At that point the sd card has you complete config and the media. You can blow away your phone, reinstall the app, restore the backup (this copies to db from the sd card to the phone). Then when DC starts up, it'll look for the media on the sd card in the place that the files have always been and everything's cool.

The only thing that I can think of is that if you install a custom rom that maybe the /sdcard mount is in a different location or that what android return when DC asks "where the sd card" is different. But that wouldn't seem to be the case because it was able to find the backups that were on the SD card.

mneimeyer
Offline
Last seen: 9 years 5 months ago
Joined: 10/18/2010 - 14:22
I wasn't sure... and I didn't

I wasn't sure... and I didn't exactly want to try it again... :)

I'll make a mental note that next time (if there is a next time) to document/verify the process a little bit better so that I can make a more useful report like "With a Captivate if you flash to XYZ ROM it will format your external card" or something similar.