Skip to content

Home / reference / ops

icechunk.ops#

Operation types: repository updates, garbage collection summaries.

icechunk.ops.GCSummary #

Summarizes the results of a garbage collection operation on an icechunk repo

Attributes:

Name Type Description
attributes_deleted int

How many attributes were deleted.

bytes_deleted int

How many bytes were deleted.

chunks_deleted int

How many chunks were deleted.

manifests_deleted int

How many manifests were deleted.

snapshots_deleted int

How many snapshots were deleted.

transaction_logs_deleted int

How many transaction logs were deleted.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
class GCSummary:
    """Summarizes the results of a garbage collection operation on an icechunk repo"""
    @property
    def bytes_deleted(self) -> int:
        """
        How many bytes were deleted.
        """
        ...
    @property
    def chunks_deleted(self) -> int:
        """
        How many chunks were deleted.
        """
        ...
    @property
    def manifests_deleted(self) -> int:
        """
        How many manifests were deleted.
        """
        ...
    @property
    def snapshots_deleted(self) -> int:
        """
        How many snapshots were deleted.
        """
        ...
    @property
    def attributes_deleted(self) -> int:
        """
        How many attributes were deleted.
        """
        ...
    @property
    def transaction_logs_deleted(self) -> int:
        """
        How many transaction logs were deleted.
        """
        ...
    def __repr__(self) -> str: ...
    def __str__(self) -> str: ...
    def _repr_html_(self) -> str: ...

attributes_deleted property #

attributes_deleted

How many attributes were deleted.

bytes_deleted property #

bytes_deleted

How many bytes were deleted.

chunks_deleted property #

chunks_deleted

How many chunks were deleted.

manifests_deleted property #

manifests_deleted

How many manifests were deleted.

snapshots_deleted property #

snapshots_deleted

How many snapshots were deleted.

transaction_logs_deleted property #

transaction_logs_deleted

How many transaction logs were deleted.

icechunk.ops.Update #

A single entry in the repository operations log.

Each update records an administrative action taken on the repository, along with when it occurred.

Attributes:

Name Type Description
kind UpdateType

The type of operation that was performed.

updated_at datetime

When the operation occurred.

backup_path str | None

Path to a backup created before the operation, if any.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class Update:
    """A single entry in the repository operations log.

    Each update records an administrative action taken on the repository,
    along with when it occurred.

    Attributes
    ----------
    kind : UpdateType
        The type of operation that was performed.
    updated_at : datetime.datetime
        When the operation occurred.
    backup_path : str | None
        Path to a backup created before the operation, if any.
    """
    @property
    def kind(self) -> UpdateType: ...
    @property
    def updated_at(self) -> datetime.datetime: ...
    @property
    def backup_path(self) -> str | None: ...
    def __repr__(self) -> str: ...
    def __str__(self) -> str: ...
    def _repr_html_(self) -> str: ...

icechunk.ops.UpdateType #

The type of operation recorded in an Update.

This is a tagged union — each variant is a nested class with its own fields describing what happened.

Classes:

Name Description
BranchCreated

A new branch was created.

BranchDeleted

A branch was deleted.

BranchReset

A branch was reset to a different snapshot.

CommitAmended

A commit on a branch was amended.

ConfigChanged

The repository configuration was changed.

ExpirationRan

Snapshot expiration was run.

FeatureFlagChanged

A feature flag was changed.

GCRan

Garbage collection was run.

MetadataChanged

Repository metadata was changed.

NewCommit

A new commit was made on a branch.

NewDetachedSnapshot

A new detached snapshot was created.

RepoInitialized

The repository was initialized.

RepoMigrated

The repository was migrated to a new spec version.

RepoStatusChanged

The repository availability status was changed.

TagCreated

A new tag was created.

TagDeleted

A tag was deleted.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
class UpdateType:
    """The type of operation recorded in an ``Update``.

    This is a tagged union — each variant is a nested class with its own
    fields describing what happened.
    """
    @final
    class BranchCreated(UpdateType):
        """A new branch was created."""
        @property
        def name(self) -> str: ...

    @final
    class BranchDeleted(UpdateType):
        """A branch was deleted."""
        @property
        def name(self) -> str: ...
        @property
        def previous_snap_id(self) -> str: ...

    @final
    class BranchReset(UpdateType):
        """A branch was reset to a different snapshot."""
        @property
        def name(self) -> str: ...
        @property
        def previous_snap_id(self) -> str: ...

    @final
    class CommitAmended(UpdateType):
        """A commit on a branch was amended."""
        @property
        def branch(self) -> str: ...
        @property
        def previous_snap_id(self) -> str: ...
        @property
        def new_snap_id(self) -> str: ...

    @final
    class ConfigChanged(UpdateType):
        """The repository configuration was changed."""

        ...

    @final
    class ExpirationRan(UpdateType):
        """Snapshot expiration was run."""

        ...

    @final
    class FeatureFlagChanged(UpdateType):
        """A feature flag was changed."""
        @property
        def id(self) -> int: ...
        @property
        def new_value(self) -> bool | None: ...

    @final
    class GCRan(UpdateType):
        """Garbage collection was run."""

        ...

    @final
    class MetadataChanged(UpdateType):
        """Repository metadata was changed."""

        ...

    @final
    class NewCommit(UpdateType):
        """A new commit was made on a branch."""
        @property
        def branch(self) -> str: ...
        @property
        def new_snap_id(self) -> str: ...

    @final
    class NewDetachedSnapshot(UpdateType):
        """A new detached snapshot was created."""
        @property
        def new_snap_id(self) -> str: ...

    @final
    class RepoInitialized(UpdateType):
        """The repository was initialized."""

        ...

    @final
    class RepoMigrated(UpdateType):
        """The repository was migrated to a new spec version."""
        @property
        def from_version(self) -> int: ...
        @property
        def to_version(self) -> int: ...

    @final
    class RepoStatusChanged(UpdateType):
        """The repository availability status was changed."""
        @property
        def status(self) -> RepoStatus: ...

    @final
    class TagCreated(UpdateType):
        """A new tag was created."""
        @property
        def name(self) -> str: ...

    @final
    class TagDeleted(UpdateType):
        """A tag was deleted."""
        @property
        def name(self) -> str: ...
        @property
        def previous_snap_id(self) -> str: ...

BranchCreated #

Bases: UpdateType

A new branch was created.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class BranchCreated(UpdateType):
    """A new branch was created."""
    @property
    def name(self) -> str: ...

BranchDeleted #

Bases: UpdateType

A branch was deleted.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class BranchDeleted(UpdateType):
    """A branch was deleted."""
    @property
    def name(self) -> str: ...
    @property
    def previous_snap_id(self) -> str: ...

BranchReset #

Bases: UpdateType

A branch was reset to a different snapshot.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class BranchReset(UpdateType):
    """A branch was reset to a different snapshot."""
    @property
    def name(self) -> str: ...
    @property
    def previous_snap_id(self) -> str: ...

CommitAmended #

Bases: UpdateType

A commit on a branch was amended.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class CommitAmended(UpdateType):
    """A commit on a branch was amended."""
    @property
    def branch(self) -> str: ...
    @property
    def previous_snap_id(self) -> str: ...
    @property
    def new_snap_id(self) -> str: ...

ConfigChanged #

Bases: UpdateType

The repository configuration was changed.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class ConfigChanged(UpdateType):
    """The repository configuration was changed."""

    ...

ExpirationRan #

Bases: UpdateType

Snapshot expiration was run.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class ExpirationRan(UpdateType):
    """Snapshot expiration was run."""

    ...

FeatureFlagChanged #

Bases: UpdateType

A feature flag was changed.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class FeatureFlagChanged(UpdateType):
    """A feature flag was changed."""
    @property
    def id(self) -> int: ...
    @property
    def new_value(self) -> bool | None: ...

GCRan #

Bases: UpdateType

Garbage collection was run.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class GCRan(UpdateType):
    """Garbage collection was run."""

    ...

MetadataChanged #

Bases: UpdateType

Repository metadata was changed.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class MetadataChanged(UpdateType):
    """Repository metadata was changed."""

    ...

NewCommit #

Bases: UpdateType

A new commit was made on a branch.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class NewCommit(UpdateType):
    """A new commit was made on a branch."""
    @property
    def branch(self) -> str: ...
    @property
    def new_snap_id(self) -> str: ...

NewDetachedSnapshot #

Bases: UpdateType

A new detached snapshot was created.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class NewDetachedSnapshot(UpdateType):
    """A new detached snapshot was created."""
    @property
    def new_snap_id(self) -> str: ...

RepoInitialized #

Bases: UpdateType

The repository was initialized.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class RepoInitialized(UpdateType):
    """The repository was initialized."""

    ...

RepoMigrated #

Bases: UpdateType

The repository was migrated to a new spec version.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class RepoMigrated(UpdateType):
    """The repository was migrated to a new spec version."""
    @property
    def from_version(self) -> int: ...
    @property
    def to_version(self) -> int: ...

RepoStatusChanged #

Bases: UpdateType

The repository availability status was changed.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class RepoStatusChanged(UpdateType):
    """The repository availability status was changed."""
    @property
    def status(self) -> RepoStatus: ...

TagCreated #

Bases: UpdateType

A new tag was created.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class TagCreated(UpdateType):
    """A new tag was created."""
    @property
    def name(self) -> str: ...

TagDeleted #

Bases: UpdateType

A tag was deleted.

Source code in icechunk-python/python/icechunk/_icechunk_python.pyi
@final
class TagDeleted(UpdateType):
    """A tag was deleted."""
    @property
    def name(self) -> str: ...
    @property
    def previous_snap_id(self) -> str: ...