All of lore.kernel.org
 help / color / mirror / Atom feed
* [Lustre-devel] rename in Changelog
@ 2012-04-25  7:05 Lai Siyao
  2012-04-25 16:36 ` Nathan Rutman
  0 siblings, 1 reply; 5+ messages in thread
From: Lai Siyao @ 2012-04-25  7:05 UTC (permalink / raw)
  To: lustre-devel

Rename record in Changelog is different from other operations, it's split
into
two records: RNMFRM and RNMTO. This makes Changelog analysis hard
because these two records may not be consecutive and several renames
may occur at the same time.

I'm not clear why it's designed to be so, except that RNMTO is needed
because for DNE (distributed namespace) the rename target may reside on
another MDS, and a separate RNMTO record is needed. But even with this
it's fine to store all information in a RENME record, but leave the
information of
whether rename removes the last hardlink of the target file (if it exists)
in
RNMTO record.

I tried to add a field spfid in struct changelog_rec to store source parent
fid,
and pack both source (if has) and target names into record. Normally the
record size if sizeof(fid) larger than before, and it can be differentiated
according to version. The test result looks good, but I want to know whether
anyone oppose to this? If not, I'll make the change and make it changelog
version 2.

Cheers,
- Lai
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lustre.org/pipermail/lustre-devel-lustre.org/attachments/20120425/e2f038d1/attachment.htm>

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2012-04-30 12:52 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-04-25  7:05 [Lustre-devel] rename in Changelog Lai Siyao
2012-04-25 16:36 ` Nathan Rutman
2012-04-25 18:06   ` Mikhail Pershin
2012-04-26  1:05     ` Lai Siyao
2012-04-30 12:52   ` Alexey Lyashkov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.