~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/repofmt/pack_repo.py

  • Committer: Andrew Bennetts
  • Date: 2009-10-13 05:20:50 UTC
  • mfrom: (4634.52.16 2.0)
  • mto: This revision was merged to the branch mainline in revision 4738.
  • Revision ID: andrew.bennetts@canonical.com-20091013052050-u1w6tv0z7kqhn8d0
Merge 2.0 into lp:bzr, resolving conflicts in NEWS and releasing.txt.

Show diffs side-by-side

added added

removed removed

Lines of Context:
225
225
        return self.index_name('text', name)
226
226
 
227
227
    def _replace_index_with_readonly(self, index_type):
 
228
        unlimited_cache = False
 
229
        if index_type == 'chk':
 
230
            unlimited_cache = True
228
231
        setattr(self, index_type + '_index',
229
232
            self.index_class(self.index_transport,
230
233
                self.index_name(index_type, self.name),
231
 
                self.index_sizes[self.index_offset(index_type)]))
 
234
                self.index_sizes[self.index_offset(index_type)],
 
235
                unlimited_cache=unlimited_cache))
232
236
 
233
237
 
234
238
class ExistingPack(Pack):
1675
1679
            txt_index = self._make_index(name, '.tix')
1676
1680
            sig_index = self._make_index(name, '.six')
1677
1681
            if self.chk_index is not None:
1678
 
                chk_index = self._make_index(name, '.cix')
 
1682
                chk_index = self._make_index(name, '.cix', unlimited_cache=True)
1679
1683
            else:
1680
1684
                chk_index = None
1681
1685
            result = ExistingPack(self._pack_transport, name, rev_index,
1700
1704
            txt_index = self._make_index(name, '.tix', resume=True)
1701
1705
            sig_index = self._make_index(name, '.six', resume=True)
1702
1706
            if self.chk_index is not None:
1703
 
                chk_index = self._make_index(name, '.cix', resume=True)
 
1707
                chk_index = self._make_index(name, '.cix', resume=True,
 
1708
                                             unlimited_cache=True)
1704
1709
            else:
1705
1710
                chk_index = None
1706
1711
            result = self.resumed_pack_factory(name, rev_index, inv_index,
1736
1741
        return self._index_class(self.transport, 'pack-names', None
1737
1742
                ).iter_all_entries()
1738
1743
 
1739
 
    def _make_index(self, name, suffix, resume=False):
 
1744
    def _make_index(self, name, suffix, resume=False, unlimited_cache=False):
1740
1745
        size_offset = self._suffix_offsets[suffix]
1741
1746
        index_name = name + suffix
1742
1747
        if resume:
1745
1750
        else:
1746
1751
            transport = self._index_transport
1747
1752
            index_size = self._names[name][size_offset]
1748
 
        return self._index_class(transport, index_name, index_size)
 
1753
        return self._index_class(transport, index_name, index_size,
 
1754
                                 unlimited_cache=unlimited_cache)
1749
1755
 
1750
1756
    def _max_pack_count(self, total_revisions):
1751
1757
        """Return the maximum number of packs to use for total revisions.