[Lustre-devel] Recovering opens by reconstruction
    Nicolas Williams 
    Nicolas.Williams at sun.com
       
    Mon Jul  6 15:37:37 PDT 2009
    
    
  
On Mon, Jul 06, 2009 at 12:20:09PM -0500, Nicolas Williams wrote:
> Note too that recovering opens by reconstruction and before outstanding
> transactions commits us to always use capabilities.  The reason is that
> an open might not be permitted prior to replaying, say, a chmod, but
> with capabilities the open would be permitted because of the capability
> issued earlier, before the MDS restarted.
> 
> If we want an option to disable capabilities, then we should recover
> opens in order at RPC replay time, but the opens should still not be
> replays (unless O_CREAT is involved and that transaction hasn't
> committed).
The above is all wrong, fortunately :)  Oleg explained it to me.
Transactions are committed linearly in time, so if a chmod that an open
depends on has not yet committed then that open's state must be
recovered by replay rather than by reconstruction.
Nico
-- 
    
    
More information about the lustre-devel
mailing list