b.r.g.GCCHKCanonicalizingPacker(GCCHKPacker) : class documentation

Part of bzrlib.repofmt.groupcompress_repo View In Hierarchy

A packer that ensures inventories have canonical-form CHK maps.

Ideally this would be part of reconcile, but it's very slow and rarely needed. (It repairs repositories affected by https://bugs.launchpad.net/bzr/+bug/522637).

Method __init__ Create a Packer.
Method _exhaust_stream Create and exhaust a stream, but don't insert it.
Method _copy_inventory_texts Copy the inventory texts to the new pack.
Method _copy_chk_texts Undocumented
Method _get_filtered_canonicalizing_inv_stream Filter the texts of inventories, regenerating CHKs to make sure they
Method _use_pack Override _use_pack to check for reconcile having changed content.

Inherited from GCCHKPacker:

Method _get_progress_stream Undocumented
Method _get_filtered_inv_stream Filter the texts of inventories, to find the chk pages.
Method _get_chk_streams Undocumented
Method _build_vf Build a VersionedFiles instance on top of this group of packs.
Method _build_vfs Build the source and target VersionedFiles.
Method _copy_stream Undocumented
Method _copy_revision_texts Copy revision data to the new pack.
Method _get_chk_vfs_for_copy Undocumented
Method _copy_text_texts Undocumented
Method _copy_signature_texts Undocumented
Method _create_pack_from_packs Undocumented

Inherited from Packer (via GCCHKPacker):

Method pack Create a new pack by reading data from other packs.
Method open_pack Open a pack for the pack we are creating.
Method _log_copied_texts Undocumented
def __init__(self, *args, **kwargs):
Create a Packer.
Parameterspack_collectionA RepositoryPackCollection object where the new pack is being written to.
packsThe packs to combine.
suffixThe suffix to use on the temporary files for the pack.
revision_idsRevision ids to limit the pack to.
reload_funcA function to call if a pack file/index goes missing. The side effect of calling this function should be to update self.packs. See also AggregateIndex
def _exhaust_stream(self, source_vf, keys, message, vf_to_stream, pb_offset):
Create and exhaust a stream, but don't insert it.

This is useful to get the side-effects of generating a stream.

def _copy_inventory_texts(self):
Copy the inventory texts to the new pack.

self._revision_keys is used to determine what inventories to copy.

Sets self._text_filter appropriately.

def _copy_chk_texts(self):
Undocumented
def _get_filtered_canonicalizing_inv_stream(self, source_vf, keys, message, pb=None, source_chk_vf=None, target_chk_vf=None):
Filter the texts of inventories, regenerating CHKs to make sure they are canonical.
def _use_pack(self, new_pack):
Override _use_pack to check for reconcile having changed content.
API Documentation for Bazaar, generated by pydoctor at 2019-11-13 00:26:04.