Show stoppers with shared files.

Hi,

I have recently begun using Zotero so if my comments are the result of ignorance on my part, I sincerely apologize. The way that I am using Zotero seems to have at least two serious faults, each of which could be a show stopper to my use of the program. I think that would be a real shame. I am using Firefox 3.6 and Zotero2.0rc5 on both Ubuntu Linux 9.10 and SnowLeopard.

I started off by loading a fairly large EndNote library into Zotero. There are about 830 citations and all of the associated PDF's that I could find. The the size of the Zotero data folder is around 200 MB. As a result I would like that file to be a LAN-shared-file resident on a PowerMac and be able to access the folder and use Zotero from any computer on the network.

The first problem I think I see is that there is no locking associated with the data folder to prevent or at least warn when more than one user is attempting to access the folder. I would like to see at least the situation wherein a user starts Zotero from the toolbar or the status bar that Zotero would request the lock and warn the user if the lock was unavailable. Of course, when the user stops using Zotero the lock should be dropped. If this is not considered a bug, it certainly is a Significant Design Oversight.

The other problem that I am experiencing is that when I initiate Firefox on a second Mac on the LAN having first connected to the PowerMac, Firefox literally takes minutes to come up. (I get warnings about unresponsive scripts; first /chrome://zotero/content/xpcom/db:js:151 and then repeatedly chrome://zotero/content/xpcom/translate.js:289. Given enough time Firefox will open.) When I invoke Zotero that too seems to take minutes to process the data and display the items. In the unlikely event that the time I am experiencing is reasonable for heavens sake put it off until I really want to use Zotero! I am not experiencing this slowness when accessing the shared data folder on Linux. I would hate to uninstall Zotero every time I stop using it and want to use the browser on a Mac!

I would like to submit this as a bug report but this site indicates that I must submit it from inside of Zotero which doesn't think it is a bug.

Any comment or suggestion would be helpful.

Thanks in Advance,
Don
  • For point Nr. 1 - well, you're using Zotero on a network solution it really isn't designed for. You can share data between computers using the sync function and you can share files using a (including local) WebDAV server (or Zotero storage), but the database is intended as a local database, so it doesn't lock etc.
    Similar issues have been discussed in the past - Dan can probably give you more specific reasons why the db isn't locked.

    Point 2. is certainly not intended behavior - the idea is indeed to access and load the database when Zotero is actually started (i.e. opened for the first time) - and that shouldn't take minutes either. Most likely Dan will ask you for a Debug ID on this.
  • 1) I'm not clear whether you're referring to potential corruption or simply the inability to use Zotero on more than one machine at a time. The latter is what syncing in 2.0 is for and isn't going to happen any other way. If you're referring to possible corruption, Zotero takes out an exclusive lock on the file at the SQLite level when Firefox is started. Some network-based filesystems probably honor the lock, but network environments differ widely, to the extent that the SQLite documentation states, "Your best defense [against database corruption] is to not use SQLite for files on a network filesystem." Some people manage to use Zotero over local networks, but it certainly shouldn't be done without frequent backups and database integrity checking.

    Zotero probably should establish an application-side lock on the data directory to offer some extra protection for people using Zotero with network filesystems that are essentially broken—there's an old ticket for it—but doing so isn't necessarily straightforward, since it'd require an unlocking method. And any locking method would be for the entirety of the Firefox session, not just when you open the Zotero pane. It's also worth noting that Firefox already does this at the profile level, so if you're using Zotero in its default configuration, with the data directory in the Firefox profile, you won't be able to open the profile from more than one copy of Firefox at the same time.

    2) You have two separate issues there, and both are likely related to specifics (speed and behavior) of your network environment.

    Any Zotero-related slowdown while starting Firefox would relate to translator initialization. You can provide a Debug ID using "Enable after restart" and I can take a look, but it's unlikely to tell us much other than that network disk access from your Mac is very slow, since this should be extremely quick in a local configuration. If you just want to get rid of the warning, you can change the value of dom.max_chrome_script_run_time in about:config.

    Any delay opening the Zotero pane is due to caching Zotero does the first time it's opened in a Firefox session. This is by design, to make later access faster, and it's only an issue if you're frequently completely closing Firefox. Firefox 3.6 provides some new ways we might be able to speed up initial display of the item list, but that won't happen for a while.

    But if you're not experiencing these speed issues connecting over the network from Linux, that would seem to suggest that the network share access from OS X is much slower for some reason, and I'm not sure what you expect from us.
Sign In or Register to comment.