comparison design.txt @ 16:254078595653

Print manifest nodeid
author Artem Tikhomirov <tikhomirov.artem@gmail.com>
date Mon, 27 Dec 2010 01:00:53 +0100
parents 865bf07f381f
children 571e1b2cc3f7
comparison
equal deleted inserted replaced
15:865bf07f381f 16:254078595653
33 .hgignored processing 33 .hgignored processing
34 RevisionWalker (on manifest) and WorkingCopyWalker (io.File) talking to ? and/or dirstate 34 RevisionWalker (on manifest) and WorkingCopyWalker (io.File) talking to ? and/or dirstate
35 35
36 36
37 ??? encodings of fncache, .hgignore, dirstate 37 ??? encodings of fncache, .hgignore, dirstate
38 ??? http://mercurial.selenic.com/wiki/Manifest says "Multiple changesets may refer to the same manifest revision". To me, each changeset
39 changes repository, hence manifest should update nodeids of the files it lists, effectively creating new manifest revision.
38 40
39 >>>> Effective file read/data access 41 >>>> Effective file read/data access
40 ReadOperation, Revlog does: repo.getFileSystem().run(this.file, new ReadOperation(), long start=0, long end = -1) 42 ReadOperation, Revlog does: repo.getFileSystem().run(this.file, new ReadOperation(), long start=0, long end = -1)
41 ReadOperation gets buffer (of whatever size, as decided by FS impl), parses it and then reports if needs more data. 43 ReadOperation gets buffer (of whatever size, as decided by FS impl), parses it and then reports if needs more data.
42 This helps to ensure streams are closed after reading, allows caching (if the same file (or LRU) is read few times in sequence) 44 This helps to ensure streams are closed after reading, allows caching (if the same file (or LRU) is read few times in sequence)