When using SQLite, there doesn't seem to be a way to configure a separate path for the thumbnails db file (very large, contains only cache/transient data) from the other 3 db files (small, important user data)? Typically, software separates cache-like data from user data, as one should be backed up while the other should not. Because DigiKam stores both in the same path, any backup or sync software you point there will spent the vast majority of its time backing up thumbs. This issue can't be solved via symlink, since just as DigiKam will follow the symlink to the intended "cache" folder...so too does backup software. How can we configure DigiKam to use a cache directory for the cache file (thumbnail-digicam.db), and a user data directory for the user data file(s) (digikam4.db)?
Why wouldn't you want to include the thumbnail database in a backup? It can take a long time to recreate the thumbnail database from a network drive. Most backup programs offer configurations to exclude files. Do we really want to complicate this further for other users with different database locations? Maik
> Why wouldn't you want to include the thumbnail database in a backup? It can take a long time to recreate the thumbnail database from a network drive. Running backups is performed regularly, but restoring a backup (and thus recreating thumbnails) is extremely rare. It's a bit senseless to upload multiple gigs on a daily basis (and to retain gigs of versioned thumbnail dbs), just so that the unlikely event of a restore will be faster. Currently, every daily backup spends ~40% of the time on this single file, and 60% on all data for all other programs combined. When ultimately, this is just cache and isn't essential to be backed up at all. > Do we really want to complicate this further for other users with different database locations? Having an option to configure a different location for cache doesn't really complicate anything for other users, as they're free to leave the default locations as-is. All it would need is a 2nd textbox on Configure->Database. If not explicitly changed by the user behavior could remain as current. > Most backup programs offer configurations to exclude files. It's true that some backup software lets you do this, but ultimately having just one single application that forces you to store its cache in its user data folder considerably complicates things. It's much cleaner (& more consistent with other software) to simply be able to separate cache and user data (I.e. On Linux, that's why we have separate cache vs local dirs in the homedir). I can elaborate into more detail in my setup if it's interesting, but suffice to say that working around this data layout does require exceptions and workarounds in more than just one application (I have mirroring/syncing/snapshotting setup in a few different ways, and this does create issues for all of them).