[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