Frequent database errors/corruption when using Zotero in virtual machine

My current setup has Zotero installed on Mac OS X and in a Windows 8 virtual machine operating under Parallels. I have the zotero data directory located on the Mac OS hard drive, which is mapped to a network drive inside the virtual machine. The windows installation of Zotero is set to use the Zotero data directory inside the mapped network drive.

With this setup, I'm getting frequent database corruption messages (one every 2-3 weeks) and similarly frequent errors when I check the database integrity. I'm guessing these are the result of the shared data directory setup, but I'm not sure what to check to see if it can be resolved permanently. I vigilantly avoid using Zotero on both systems at the same time, so I don't think it can be resulting from trying to access the database with two clients at one time.

Any thoughts on what might be wrong to trigger these frequent errors?
  • edited October 24, 2014
    It's extremely likely that this is caused by simultaneous access between the two systems. Database locks aren't properly enforced across a VM, and Windows is exceptionally bad at closing programs, so firefox.exe or zotero.exe is most likely occasionally staying open in the background and you're opening Zotero on OS X. Unless you actually make sure the process is gone, this is bound to result in corruption. (Even if you just suspend the VM, the process could still be open when you resume it.)
  • Any other ideas besides simultaneous access? I've been encountering corrupt databases after periods when I haven't accessed the database outside the VM at all.
  • By "accessed the database", do you mean opened Zotero Standalone, or something else? If you have Zotero for Firefox installed, simply opening Firefox would touch the database and cause corruption.

    Beyond that, no, but who knows what a VM does when it comes to disk access?

    Just to check, how have you been repairing the database? Using the DB Repair Tool? And you've been checking database integrity after restoring it to make sure it was using the correct, repaired DB?
  • I meant opening Zotero Standalone or Firefox (browser, not necessarily Zotero).

    Been repairing it manually using the manual instructions on the DB Repair Tool page since my library is too big to conveniently upload. Integrity has been fine after repairing.

    Okay, eems that the VM just does something very bizarre that causes errors/corruption to happen. Will have to find an alternative setup. Thanks for the help.
Sign In or Register to comment.