I currently copy my calibre DB to DropBox and run C2O on the DropBox copy. Calibre runs on its own DB not in DropBox. Thus I know my calibre DB can't get corrupted. I suspect that if two users ran Calibre on the same DropBox DB, it could get corrupted and eventually would get corrupted unless there is some provision for preventing simultaneous write access. I doubt DropBox prevents it, it is users beware, just as Google Docs is. I have experienced issues with simultaneous changes to a Google spreadsheet.

I haven't seen warnings about this, and Calibre2Opds documentation suggests just moving your Calibre DB permanently to DropBox, then all you need is another Calibre to access the same DB. So I thought I would raise this issue.

Rather than copy the whole Calibre DB each update to DropBox, I tried just exporting the new books to DropBox and separately copy the metadata.db file. But guesss what? When you run Calibre2Opds and look at your catalog, the new books have default covers, because in the original Calibre book folders, the cover is called "cover.jpg", but in an exported book (multiple folder export), the cover is called "author-book_title.jpg", so the cover can't be found. Maybe a new command under Calibre write to disk could be to Update Cloud Directory and/or in Calibre2Opds.

There is an option in Calibre2opds labeled "reprocess ePub" that tries to update the embedded covers in epub files. There is an equivalent functionality within Calibre itself via the Modify ePub plugin. Unfortunately this does not work for other eBook formats.

Note that the cover stored in Calibre is always called cover.jpg regardless of the name of the cover image actually mbedded in any particular eBook format. There is an option in calibre2opds to use these cover.jpg files directly in the calibre2opds catalog - and it is recommended that this is set in DropBox based catalogs to save space (and the option to use the cover.jpg files for thumbnail purposes).

Regarding holding the Calibre metadata.db file under Dropbox you should have found multiple warnings that you must never have two instances of Calibre running simultaneously against the database or updates are liable to be lost.