git.check_repo_or_die()
#git.ignore_midx = 1
-mi = git.MultiPackIndex(git.repo('objects/pack'))
+mi = git.PackIdxList(git.repo('objects/pack'))
last = '\0'*20
longmatch = 0
for i in mi:
git.ignore_midx = opt.ignore_midx
git.check_repo_or_die()
-m = git.MultiPackIndex(git.repo('objects/pack'))
+m = git.PackIdxList(git.repo('objects/pack'))
cycles = opt.cycles or 100
number = opt.number or 10000
inp = []
total = 0
for name in infilenames:
- ix = git.PackIndex(name)
+ ix = git.PackIdx(name)
inp.append(ix)
total += len(ix)
if opt.force:
do_midx(path, opt.output, glob.glob('%s/*.idx' % path))
elif opt.auto:
- m = git.MultiPackIndex(path)
+ m = git.PackIdxList(path)
needed = {}
for pack in m.packs: # only .idx files without a .midx are open
if pack.name.endswith('.idx'):
git.check_repo_or_die()
assert(name.find('/') < 0)
assert(name.endswith('.idx'))
- idx = git.PackIndex(git.repo('objects/pack/%s' % name))
+ idx = git.PackIdx(git.repo('objects/pack/%s' % name))
conn.write(struct.pack('!I', len(idx.map)))
conn.write(idx.map)
conn.ok()
self._busy = None
#self.sync_indexes()
self._busy = ob
- return git.MultiPackIndex(self.cachedir)
+ return git.PackIdxList(self.cachedir)
def _suggest_pack(self, indexname):
log('received index suggestion: %s\n' % indexname)
return (type, zlib.decompress(buf[i+1:]))
-class PackIndex:
+class PackIdx:
def __init__(self, filename):
self.name = filename
self.map = mmap_read(open(filename))
_mpi_count = 0
-class MultiPackIndex:
+class PackIdxList:
def __init__(self, dir):
global _mpi_count
assert(_mpi_count == 0) # these things suck tons of VM; don't waste it
for f in os.listdir(self.dir):
full = os.path.join(self.dir, f)
if f.endswith('.idx') and not d.get(full):
- self.packs.append(PackIndex(full))
+ self.packs.append(PackIdx(full))
d[full] = 1
- log('MultiPackIndex: using %d index%s.\n'
+ log('PackIdxList: using %d index%s.\n'
% (len(self.packs), len(self.packs)!=1 and 'es' or ''))
def add(self, hash):
if self.objcache_maker:
self.objcache = self.objcache_maker()
else:
- self.objcache = MultiPackIndex(repo('objects/pack'))
+ self.objcache = PackIdxList(repo('objects/pack'))
def _open(self):
if not self.file:
WVPASS(os.path.exists(nameprefix + '.pack'))
WVPASS(os.path.exists(nameprefix + '.idx'))
- r = git.PackIndex(nameprefix + '.idx')
+ r = git.PackIdx(nameprefix + '.idx')
print repr(r.fanout)
for i in range(nobj):
WVFAIL(r.find_offset('\0'*20))
- r = git.MultiPackIndex('pybuptest.tmp/objects/pack')
+ r = git.PackIdxList('pybuptest.tmp/objects/pack')
WVPASS(r.exists(hashes[5]))
WVPASS(r.exists(hashes[6]))
WVFAIL(r.exists('\0'*20))