[PATCH] treemanifest: store submanifest revlog per directory

Matt Mackall mpm at selenic.com
Fri May 15 14:32:29 CDT 2015


On Fri, 2015-05-15 at 11:25 -0700, Durham Goode wrote:
> 
> On 5/14/15 3:49 PM, Martin von Zweigbergk wrote:
> > # HG changeset patch
> > # User Martin von Zweigbergk <martinvonz at google.com>
> > # Date 1428992462 25200
> > #      Mon Apr 13 23:21:02 2015 -0700
> > # Node ID 01586fff55933fd0eb58e61a123d4c7b03258bd3
> > # Parent  d1bd0fd07ee6adf4ab3be2b0a0a7c0df54d55abf
> > treemanifest: store submanifest revlog per directory
> >
> > With this change, when tree manifests are enabled (in .hg/requires),
> > commits will be written with one manifest revlog per directory. The
> > manifest revlogs are stored in
> > .hg/store/meta/$dir/00manifest.[id].
> >
> What other kind of data do we expect to be stored in store/meta? I'm not 
> sure I understand the use of the word meta here.  Is this metadata 
> about...I'm not actually sure what it's metadata about? Just seems more 
> data-y than metadata-y.

It's data in the sense that it's solely composed of user-owned content.
It's metadata in the sense that it's filenames and permissions rather
than file contents (that has been traditionally classified as metadata
by filesystem designers), and has been traditionally stored outside
data/ in hg. Sticking it in data/ would make collisions with user-owned
files named 00manifest a possibility (when not doing long name hashing),
so having a separate namespace seems correct.

-- 
Mathematics is the supreme nostalgia of our time.



More information about the Mercurial-devel mailing list