First, let me preface this by saying I know all about 'one computer at a time' rule. I only have one instance of Calibre, running on Windows 10. (All the other Dropbox access is via read-only mobile apps.) There are no changes happening that are not from that one instance of Calibre.
However, often, when updating metadata, or when adding a new fanfic, I often get an error saying that Calibre could not write metadata. This error goes away if I pause Dropbox. I'm pretty certain this is because Dropbox is currently uploading the .opf file, because Dropbox's 'recently changed' list always has metadata.opf at the top after it happens.
I...do not understand what is going on here. Surely Dropbox is only *reading* the file when uploading, and will let others update it. If not, I'd be having problems in all sorts of other apps when saving files.
Also, this is some amazing timing to keep happening so often on such small files (Which really should be instantly read and written.), and never happening once with my metadata.db! That's the thing that is really confusing me...these are tiny 20k files, they should be locked by Calibre, instantly written to disk, and then unlocked. And then locked by Dropbox (Or actually not!), instantly pulled into memory, and unlocked, and then uploaded.
And while it doesn't happen on *every* metadata change, but but it isn't some once-in-a-blue-moon race condition where all the stars misalign perfectly...I can make it happen by changing the metadata on a dozen books.
I saw a mention the other day when trying to figure this out that Calibre does some sort of check to see if someone else is using a file before it writes to it. I think there might be something weird going on there.
However, often, when updating metadata, or when adding a new fanfic, I often get an error saying that Calibre could not write metadata. This error goes away if I pause Dropbox. I'm pretty certain this is because Dropbox is currently uploading the .opf file, because Dropbox's 'recently changed' list always has metadata.opf at the top after it happens.
I...do not understand what is going on here. Surely Dropbox is only *reading* the file when uploading, and will let others update it. If not, I'd be having problems in all sorts of other apps when saving files.
Also, this is some amazing timing to keep happening so often on such small files (Which really should be instantly read and written.), and never happening once with my metadata.db! That's the thing that is really confusing me...these are tiny 20k files, they should be locked by Calibre, instantly written to disk, and then unlocked. And then locked by Dropbox (Or actually not!), instantly pulled into memory, and unlocked, and then uploaded.
And while it doesn't happen on *every* metadata change, but but it isn't some once-in-a-blue-moon race condition where all the stars misalign perfectly...I can make it happen by changing the metadata on a dozen books.
I saw a mention the other day when trying to figure this out that Calibre does some sort of check to see if someone else is using a file before it writes to it. I think there might be something weird going on there.