Mercurial > jhg
comparison design.txt @ 129:645829962785
core.Cset renamed to HgChangeset; repo.Changeset moved into HgChangelog
author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
---|---|
date | Wed, 16 Feb 2011 20:32:29 +0100 |
parents | 44b97930570c |
children | aa1629f36482 |
comparison
equal
deleted
inserted
replaced
128:44b97930570c | 129:645829962785 |
---|---|
42 DataAccess - collect debug info (buffer misses, file size/total read operations) to find out better strategy to buffer size detection. Compare performance. | 42 DataAccess - collect debug info (buffer misses, file size/total read operations) to find out better strategy to buffer size detection. Compare performance. |
43 | 43 |
44 Strip off metadata from beg of the stream - DataAccess (with rebase/moveBaseOffset(int)) would be handy | 44 Strip off metadata from beg of the stream - DataAccess (with rebase/moveBaseOffset(int)) would be handy |
45 Parameterize StatusCollector to produce copy only when needed. And HgDataFile.metadata perhaps should be moved to cacheable place? | 45 Parameterize StatusCollector to produce copy only when needed. And HgDataFile.metadata perhaps should be moved to cacheable place? |
46 | 46 |
47 RevisionMap to replace TreeMap<Integer, ?> | |
48 | |
49 Status operation from GUI - guess, usually on a file/subfolder, hence API should allow for starting path (unlike cmdline, seems useless to implement include/exclide patterns - GUI users hardly enter them, ever) | 47 Status operation from GUI - guess, usually on a file/subfolder, hence API should allow for starting path (unlike cmdline, seems useless to implement include/exclide patterns - GUI users hardly enter them, ever) |
50 -> recently introduced FileWalker may perhaps help solving this (if starts walking from selected folder) for status op against WorkingDir? | 48 -> recently introduced FileWalker may perhaps help solving this (if starts walking from selected folder) for status op against WorkingDir? |
51 | 49 |
52 ? Can I use fncache (names from it - perhaps, would help for Mac issues Alex mentioned) | 50 ? Can I use fncache (names from it - perhaps, would help for Mac issues Alex mentioned) |
53 ? Does fncache lists both .i and .d (iow, is it true hashed <long name>.d is different from hashed <long name>.i) | 51 ? Does fncache lists both .i and .d (iow, is it true hashed <long name>.d is different from hashed <long name>.i) |
74 | 72 |
75 File access: | 73 File access: |
76 * NIO and mapped files - should be fast. Although seems to give less control on mem usage. | 74 * NIO and mapped files - should be fast. Although seems to give less control on mem usage. |
77 * Regular InputStreams and chunked stream on top - allocate List<byte[]>, each (but last) chunk of fixed size (depending on initial file size) | 75 * Regular InputStreams and chunked stream on top - allocate List<byte[]>, each (but last) chunk of fixed size (depending on initial file size) |
78 | 76 |
77 | |
78 * API | |
79 + rename in .core Cset -> HgChangeset, | |
80 + rename in .repo Changeset to HgChangelog.Changeset, Changeset.Inspector -> HgChangelog.Inspector | |
81 - CommandContext | |
82 - Data access - not bytes, but ByteChannel | |
83 - HgRepository constants (TIP, BAD, WC) to HgRevisions enum | |
84 - RevisionMap to replace TreeMap<Integer, ?> | |
85 | |
79 <<<<< | 86 <<<<< |
80 | 87 |
81 Tests: | 88 Tests: |
82 DataAccess - readBytes(length > memBufferSize, length*2 > memBufferSize) - to check impl is capable to read huge chunks of data, regardless of own buffer size | 89 DataAccess - readBytes(length > memBufferSize, length*2 > memBufferSize) - to check impl is capable to read huge chunks of data, regardless of own buffer size |
83 | 90 |
84 ExecHelper('cmd', OutputParser()).run(). StatusOutputParser, LogOutputParser extends OutputParser. construct java result similar to that of cmd, compare results | 91 ExecHelper('cmd', OutputParser()).run(). StatusOutputParser, LogOutputParser extends OutputParser. construct java result similar to that of cmd, compare results |
92 |