gnu-arch-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnu-arch-users] inode caching for explicit id's completed


From: Tom Lord
Subject: Re: [Gnu-arch-users] inode caching for explicit id's completed
Date: Sun, 22 Feb 2004 14:28:20 -0800 (PST)

    > From: Robert Collins <address@hidden>

    >   I've finished inode signature cache support for explicit id's. As part
    > of the same work, I've added a path field to the inode signature, in
    > order to detect certain forms of library/pristine corruption. That work
    > is in address@hidden/tla--inode-sigs--1.2

    > I'd really appreciate a review of this code... I think I've got all the
    > cases covered.

So...er...as I mentioned: aren't the inventory caches enough?   I
don't think you really need the path field in the signature files.


    > The only thing that has me scratching my head is the addition of the
    > path field - it's not ideal for a couple of reasons:
    > * It means moved files don't match inode sigs, so moving a large file
    > will result in it being diffed, even if it hasn't changed.
    > * There is no obvious (to me anyway) to retrofit the path to existing
    > inode caches.


Well, there you go.  In pristines and revlibs, you have an inventory
and you need to actually go and stat all of those files --- so there's
enough information there already to detect
corruption-by-renaming/deletion of known-good trees.  (Stray adds
shouldn't count as corruption -- they _should_ just be ignored, I
think.)


    > I've considered an alternative approach to handling file rename
    > detection: create a new file {arch}/,,inode-sigs/revision.mapping, and
    > in there have (id path) pairs. If that file is missing, we could ignore
    > it rather than having an inode sig corruption result. And inode
    > signature matches would work correctly for renamed files.

Well, that file already exists!  (./,,index or ./,,index-by-name)

    > Thats more work than what I've done today, but I suspect it's the right
    > way.=

    > Anyway... I'm primarily interested in your opinion on the explicit id
    > support for inode signatures.

I haven't looked at the code yet.   The pseudocode in your earlier
message sounded plausible.   

How do you feel about removing the :path field before I dig into the
in-depth review?

-t





reply via email to

[Prev in Thread] Current Thread [Next in Thread]