b.r.g.CHKInventoryRepository(PackRepository) : class documentation

Part of bzrlib.repofmt.groupcompress_repo View In Hierarchy

Known subclasses: bzrlib.tests.test_foreign.DummyForeignVcsRepository

subclass of PackRepository that uses CHK based inventories.
Method __init__ Overridden to change pack collection class.
Method add_inventory_by_delta Add a new inventory expressed as a delta against another revision.
Method fileids_altered_by_revision_ids Find the file ids and versions affected by revisions.
Method find_text_key_references Find the text key references within the repository.
Method reconcile_canonicalize_chks Reconcile this repository to make sure all CHKs are in canonical
Method _add_inventory_checked Add inv to the repository after checking the inputs.
Method _create_inv_from_null This will mutate new_inv directly.
Method _deserialise_inventory Transform the xml into an inventory object.
Method _iter_inventories Iterate over many inventory objects.
Method _iter_inventory_xmls Undocumented
Method _find_present_inventory_keys Undocumented
Method _reconcile_pack Undocumented
Method _canonicalize_chks_pack Undocumented
Method _get_source Return a source for streaming from this repository.
Method _find_inconsistent_revision_parents Find revisions with different parent lists in the revision object
Method _check_for_inconsistent_revision_parents Undocumented

Inherited from PackRepository:

Method suspend_write_group Undocumented
Method get_transaction Undocumented
Method is_locked Undocumented
Method is_write_locked Return True if this object is write locked.
Method lock_write Lock the repository for writes.
Method lock_read Lock the repository for reads.
Method leave_lock_in_place Tell this repository not to release the physical lock when this
Method dont_leave_lock_in_place Tell this repository to release the physical lock when this
Method pack Compress the data within the repository.
Method reconcile Reconcile this repository.
Method unlock Undocumented
Method _all_revision_ids See Repository.all_revision_ids().
Method _abort_write_group Template method for per-repository write group cleanup.
Method _make_parents_provider Undocumented
Method _refresh_data Helper called from lock_* to ensure coherency with disk.
Method _start_write_group Template method for per-repository write group startup.
Method _commit_write_group Template method for per-repository write group cleanup.
Method _resume_write_group Undocumented

Inherited from MetaDirRepository (via PackRepository, MetaDirVersionedFileRepository):

Method is_shared Return True if this repository is flagged as a shared repository.
Method set_make_working_trees Set the policy flag for making working trees when creating branches.
Method make_working_trees Returns the policy for making working trees on new branches.

Inherited from Repository (via PackRepository, MetaDirVersionedFileRepository, MetaDirRepository):

Method abort_write_group Commit the contents accrued within the current write group.
Method add_fallback_repository Add a repository to use for looking up data not held locally.
Method all_revision_ids Returns a list of all the revision ids in the repository.
Method break_lock Break a lock if one is present from another instance.
Static Method create Construct the current default format repository in controldir.
Method user_transport Undocumented
Method control_transport Undocumented
Method __repr__ Undocumented
Method has_same_location Returns a boolean indicating if this repository is at the same
Method is_in_write_group Return True if there is an open write group.
Method get_physical_lock_status Undocumented
Method gather_stats Gather statistics from a revision id.
Method find_branches Find branches underneath this repository.
Method search_missing_revision_ids Return the revision ids that other has that this does not.
Static Method open Open the repository rooted at base.
Method copy_content_into Make a complete copy of the content in self into destination.
Method commit_write_group Commit the contents accrued within the current write group.
Method refresh_data Re-read any data needed to synchronise with disk.
Method resume_write_group Undocumented
Method fetch Fetch the content required to construct revision_id from source.
Method create_bundle Undocumented
Method get_commit_builder Obtain a CommitBuilder for this repository.
Method clone Clone this repository into controldir using the current format.
Method start_write_group Start a write group in the repository.
Method sprout Create a descendent repository for new development.
Method has_revision True if this repository has a copy of the revision.
Method has_revisions Probe to find out the presence of multiple revisions.
Method get_revision Return the Revision object for a named revision.
Method get_revision_reconcile 'reconcile' helper routine that allows access to a revision always.
Method get_revisions Get many revisions at once.
Method get_deltas_for_revisions Produce a generator of revision deltas.
Method get_revision_delta Return the delta for one revision.
Method store_revision_signature Undocumented
Method add_signature_text Store a signature text for a revision.
Method iter_files_bytes Iterate through file versions.
Method get_rev_id_for_revno Return the revision id of a revno, given a later (revno, revid)
Method iter_reverse_revision_history Iterate backwards through revision ids in the lefthand history
Method revision_tree Return Tree for a revision on this branch.
Method revision_trees Return Trees for revisions in this repository.
Method get_ancestry Return a list of revision-ids integrated by a revision.
Method get_parent_map See graph.StackedParentsProvider.get_parent_map
Method get_known_graph_ancestry Return the known graph for a set of revision ids and their ancestors.
Method get_file_graph Return the graph walker for files.
Method get_graph Return the graph walker for this repository format
Method revision_ids_to_search_result Convert a set of revision ids to a graph SearchResult.
Method sign_revision Undocumented
Method verify_revision Verify the signature on a revision.
Method has_signature_for_revision_id Query for a revision signature for revision_id in the repository.
Method get_signature_text Return the text for a signature.
Method check Check consistency of all history of given revision_ids.
Method supports_rich_root Undocumented
Method _check_fallback_repository Check that this repository can fallback to repository safely.
Method _has_same_fallbacks Returns true if the repositories have the same fallbacks.
Method _create_sprouting_repo Undocumented
Method _find_parent_ids_of_revisions Find all parent ids that are mentioned in the revision graph.
Method _get_parent_map_no_fallbacks Same as Repository.get_parent_map except doesn't query fallbacks.
Method _make_parents_provider_unstacked Undocumented
Method _check Undocumented
Method _warn_if_deprecated Undocumented
Method _check_ascii_revisionid Private helper for ascii-only repositories.

Inherited from _RelockDebugMixin (via PackRepository, MetaDirVersionedFileRepository, MetaDirRepository, Repository):

Method _note_lock Undocumented

Inherited from VersionedFileRepository (via PackRepository, MetaDirVersionedFileRepository):

Method add_fallback_repository Add a repository to use for looking up data not held locally.
Method add_inventory Add the inventory inv to the repository as revision_id.
Method add_revision Add rev to the revision store as revision_id.
Method gather_stats See Repository.gather_stats().
Method get_commit_builder Obtain a CommitBuilder for this repository.
Method get_missing_parent_inventories Return the keys of missing inventory parents for revisions added in
Method has_revisions Probe to find out the presence of multiple revisions.
Method get_revision_reconcile 'reconcile' helper routine that allows access to a revision always.
Method get_revisions Get many revisions at once.
Method add_signature_text Store a signature text for a revision.
Method iter_files_bytes Iterate through file versions.
Method item_keys_introduced_by Get an iterable listing the keys of all the data introduced by a set
Method get_inventory Get Inventory object by revision id.
Method iter_inventories Get many inventories by revision_ids.
Method get_serializer_format Undocumented
Method revision_tree Return Tree for a revision on this branch.
Method revision_trees Return Trees for revisions in this repository.
Method get_parent_map See graph.StackedParentsProvider.get_parent_map
Method get_known_graph_ancestry Return the known graph for a set of revision ids and their ancestors.
Method get_file_graph Return the graph walker for text revisions.
Method has_signature_for_revision_id Query for a revision signature for revision_id in the repository.
Method get_signature_text Return the text for a signature.
Method _inventory_add_lines Store lines in inv_vf and return the sha1 of the inventory.
Method _add_revision Undocumented
Method _check_inventories Check the inventories found from the revision scan.
Method _do_check_inventories Helper for _check_inventories.
Method _check_record Check a single text from this repository.
Method _check_text Check a single text.
Method _eliminate_revisions_not_present Check every revision id in revision_ids to see if we have it.
Method _get_revisions Core work logic to get many revisions without sanity checks.
Method _iter_revisions Iterate over revision objects.
Method _inventory_xml_lines_for_keys Get a line iterator of the sort needed for findind references.
Method _find_file_ids_from_xml_inventory_lines Helper routine for fileids_altered_by_revision_ids.
Method _find_parent_keys_of_revisions Similar to _find_parent_ids_of_revisions, but used with keys.
Method _generate_text_key_index Generate a new text key index for the repository.
Method _do_generate_text_key_index Helper for _generate_text_key_index to avoid deep nesting.
Method _find_file_keys_to_fetch Undocumented
Method _find_non_file_keys_to_fetch Undocumented
Method _get_inventory_xml Get serialized inventory as a string.
Method _filtered_revision_trees Return Tree for a revision on this branch with only some files.
Method _get_versioned_file_checker Return an object suitable for checking versioned files.
Method _check Undocumented
Method _get_sink Return a sink for streaming into this repository.

Inherited from Repository (via PackRepository, MetaDirVersionedFileRepository, VersionedFileRepository):

Method abort_write_group Commit the contents accrued within the current write group.
Method all_revision_ids Returns a list of all the revision ids in the repository.
Method break_lock Break a lock if one is present from another instance.
Static Method create Construct the current default format repository in controldir.
Method user_transport Undocumented
Method control_transport Undocumented
Method __repr__ Undocumented
Method has_same_location Returns a boolean indicating if this repository is at the same
Method is_in_write_group Return True if there is an open write group.
Method get_physical_lock_status Undocumented
Method find_branches Find branches underneath this repository.
Method search_missing_revision_ids Return the revision ids that other has that this does not.
Static Method open Open the repository rooted at base.
Method copy_content_into Make a complete copy of the content in self into destination.
Method commit_write_group Commit the contents accrued within the current write group.
Method refresh_data Re-read any data needed to synchronise with disk.
Method resume_write_group Undocumented
Method fetch Fetch the content required to construct revision_id from source.
Method create_bundle Undocumented
Method clone Clone this repository into controldir using the current format.
Method start_write_group Start a write group in the repository.
Method sprout Create a descendent repository for new development.
Method has_revision True if this repository has a copy of the revision.
Method get_revision Return the Revision object for a named revision.
Method get_deltas_for_revisions Produce a generator of revision deltas.
Method get_revision_delta Return the delta for one revision.
Method store_revision_signature Undocumented
Method get_rev_id_for_revno Return the revision id of a revno, given a later (revno, revid)
Method iter_reverse_revision_history Iterate backwards through revision ids in the lefthand history
Method is_shared Return True if this repository is flagged as a shared repository.
Method get_ancestry Return a list of revision-ids integrated by a revision.
Method get_graph Return the graph walker for this repository format
Method revision_ids_to_search_result Convert a set of revision ids to a graph SearchResult.
Method set_make_working_trees Set the policy flag for making working trees when creating branches.
Method make_working_trees Returns the policy for making working trees on new branches.
Method sign_revision Undocumented
Method verify_revision Verify the signature on a revision.
Method check Check consistency of all history of given revision_ids.
Method supports_rich_root Undocumented
Method _check_fallback_repository Check that this repository can fallback to repository safely.
Method _has_same_fallbacks Returns true if the repositories have the same fallbacks.
Method _create_sprouting_repo Undocumented
Method _find_parent_ids_of_revisions Find all parent ids that are mentioned in the revision graph.
Method _get_parent_map_no_fallbacks Same as Repository.get_parent_map except doesn't query fallbacks.
Method _make_parents_provider_unstacked Undocumented
Method _warn_if_deprecated Undocumented
Method _check_ascii_revisionid Private helper for ascii-only repositories.

Inherited from _RelockDebugMixin (via PackRepository, MetaDirVersionedFileRepository, VersionedFileRepository, Repository):

Method _note_lock Undocumented
def __init__(self, _format, a_bzrdir, control_files, _commit_builder_class, _serializer):
Overridden to change pack collection class.
def _add_inventory_checked(self, revision_id, inv, parents):
Add inv to the repository after checking the inputs.

This function can be overridden to allow different inventory styles.

See Alsoadd_inventory, for the contract.
def _create_inv_from_null(self, delta, revision_id):
This will mutate new_inv directly.

This is a simplified form of create_by_apply_delta which knows that all the old values must be None, so everything is a create.

def add_inventory_by_delta(self, basis_revision_id, delta, new_revision_id, parents, basis_inv=None, propagate_caches=False):
Add a new inventory expressed as a delta against another revision.
Parametersbasis_revision_idThe inventory id the delta was created against.
deltaThe inventory delta (see Inventory.apply_delta for details).
new_revision_idThe revision id that the inventory is being added for.
parentsThe revision ids of the parents that revision_id is known to have and are in the repository already. These are supplied for repositories that depend on the inventory graph for revision graph access, as well as for those that pun ancestry with delta compression.
basis_invThe basis inventory if it is already known, otherwise None.
propagate_cachesIf True, the caches for this inventory are copied to and updated for the result if possible.
Returns(validator, new_inv) The validator(which is a sha1 digest, though what is sha'd is repository format specific) of the serialized inventory, and the resulting inventory.
def _deserialise_inventory(self, revision_id, bytes):
Transform the xml into an inventory object.
Parametersrevision_idThe expected revision id of the inventory.
xmlA serialised inventory.
def _iter_inventories(self, revision_ids, ordering):
Iterate over many inventory objects.
def _iter_inventory_xmls(self, revision_ids, ordering):
Undocumented
def _find_present_inventory_keys(self, revision_keys):
Undocumented
def fileids_altered_by_revision_ids(self, revision_ids, _inv_weave=None):
Find the file ids and versions affected by revisions.
Parametersrevisionsan iterable containing revision ids.
_inv_weaveThe inventory weave from this repository or None. If None, the inventory weave will be opened automatically.
Returnsa dictionary mapping altered file-ids to an iterable of revision_ids. Each altered file-ids has the exact revision_ids that altered it listed explicitly.
def find_text_key_references(self):
Find the text key references within the repository.
ReturnsA dictionary mapping text keys ((fileid, revision_id) tuples) to whether they were referred to by the inventory of the revision_id that they contain. The inventory texts from all present revision ids are assessed to generate this report.
@needs_write_lock
def reconcile_canonicalize_chks(self):
Reconcile this repository to make sure all CHKs are in canonical form.
def _reconcile_pack(self, collection, packs, extension, revs, pb):
Undocumented
def _canonicalize_chks_pack(self, collection, packs, extension, revs, pb):
Undocumented
def _get_source(self, to_format):
Return a source for streaming from this repository.
def _find_inconsistent_revision_parents(self, revisions_iterator=None):
Find revisions with different parent lists in the revision object and in the index graph.
Parametersrevisions_iteratorNone, or an iterator of (revid, Revision-or-None). This iterator controls the revisions checked.
Returnsan iterator yielding tuples of (revison-id, parents-in-index, parents-in-revision).
def _check_for_inconsistent_revision_parents(self):
Undocumented
API Documentation for Bazaar, generated by pydoctor at 2022-06-16 00:25:16.