[tahoe-dev] [tahoe-lafs] #705: "tahoe mv" unlinks the target even when it is a directory

tahoe-lafs trac at allmydata.org
Wed Jul 15 21:08:56 PDT 2009


#705: "tahoe mv" unlinks the target even when it is a directory
-------------------------------+--------------------------------------------
 Reporter:  zooko              |           Owner:  kevan
     Type:  defect             |          Status:  new  
 Priority:  critical           |       Milestone:  1.5.0
Component:  code-frontend-cli  |         Version:  1.4.1
 Keywords:  reliability        |   Launchpad_bug:       
-------------------------------+--------------------------------------------

Comment(by kevan):

 Thanks for the review, and for seeing that -- I didn't even think about
 race conditions.

 The reason I didn't use the rename method you reference is
 {{{
 This operation cannot move the child to a different directory.
 }}}

 which I took to mean that, if someone did {{{tahoe mv tahoe:dir/file1
 tahoe:file1}}}, using that wouldn't work. Perhaps I'm mistaken, or
 misinterpreting something.

 I think I agree with your thoughts on the implementation. I don't suppose
 that any amount of client-side hacking is going to be enough to address
 the race condition above. Presumably the webapi would be a better place to
 address this.

 Then, what we'd want to do is
   * Write tests for the extension of the webapi command (in addition to
 the ones for {{{tahoe mv}}}, which are probably still a good idea even if
 we don't end up doing a lot of stuff there)
   * Alter the webapi command to pass the tests
   * Re-write {{{tahoe_mv.py}}} to use the new functionality

 Seem okay? If so, I'll start poking around/starting that.

-- 
Ticket URL: <http://allmydata.org/trac/tahoe/ticket/705#comment:18>
tahoe-lafs <http://allmydata.org>
secure decentralized file storage grid


More information about the tahoe-dev mailing list