#1845 closed defect (invalid)

Error during simultaneous writes to shared directory

Reported by: tryb Owned by: davidsarah
Priority: normal Milestone: undecided
Component: unknown Version: 1.9.2
Keywords: shared simultaneous multiple Cc: zooko
Launchpad Bug:

Description

I have 10 VMs running Tahoe nodes with both client and storage, one is running also introducer node. All nodes are saving to the same shared directory. When I run multiple writes at time only two-three of them succeed to save the file, the rest of upload fails. I read in Mutable.rst doc that this is how the Tahoe-LAFS works, that there should be only one write to directory at time.

Is it possible to allow the nodes to save simultaneously to one dir?

Is it planned for future releases of Tahoe to allow this kind of operations?

Change History (8)

comment:1 Changed at 2012-11-07T16:49:55Z by zooko

  • Cc zooko added

Hello tryb. Thank you for the bug report. Do you mean that all the clients are writing to the same Tahoe-LAFS mutable directory, in the LAFS distributed virtual filesystem? Or that all of the storage servers are using the same local disk filesystem to store their ciphertext shares?

comment:2 Changed at 2012-11-07T17:09:54Z by tryb

Hello. Thank you for your response.

All nodes are writing to the same shared Tahoe mutable directory. Then I get the error.

Now I managed to create a Tahoe subdir for all nodes in the shared Tahoe "root" dir so each node is writing to its own Tahoe directory, and each Tahoe subdir and files in it are accessible by other nodes for reading. In this case I don't have writing errors.

Do you think there is other way to do this?

comment:3 Changed at 2012-11-16T14:03:21Z by zooko

tryb: I think the pattern you're using, where each writer has exclusive write-access to a different directory, is the best.

How is it working for you?

Maybe we should update the Tahoe-LAFS wiki to recommend this pattern to other users.

comment:4 Changed at 2012-11-16T14:14:16Z by tryb

Hi For now this topology is working, I didn't manage any harder tests on it but there is no reason it wouldn't;) I have some other problems but I need to create different tickets for it. Thanks for your comments.

comment:5 Changed at 2012-11-16T14:24:54Z by tryb

I forgot about one thing - this topology has one defect. The same problem with writing to the same mutable Tahoe directory is while removing a file.
For example: When I want to remove a file from node which is not owning the directory (by owning I mean that this directory is for write for precise node), when directory-owner will write to it, this could cause directory-file corruption. Is that correct?

comment:6 Changed at 2012-11-16T19:33:04Z by zooko

tryb: I don't understand the problem you're describing in comment:5. As long as only one Tahoe-LAFS gateway is used to write to a directory, then there will not be problems involving multiple simultaneous writes to the directory corrupting the directory or dropping some of the writes.

comment:7 Changed at 2012-11-20T16:52:30Z by zooko

  • Resolution set to invalid
  • Status changed from new to closed

tryb: I'm going to close this ticket, as there is no change that we need to make to the tahoe-lafs codebase as far as I understand. Please send email to tahoe-dev@… with more questions!

comment:8 Changed at 2012-11-21T20:01:37Z by tryb

Writing files to the same directory from many nodes at the same time = possible data corruption.
When I will write only from directory owner, but read and delete files (using rm - I'm aware of what it is really doing) from other, could there be also any problems with simultaneous access to the same tahoe directory file?

Note: See TracTickets for help on using tickets.