For the complete documentation index, see llms.txt. This page is also available as Markdown.

Pruning

ESS provides a pruning feature to perform hard deletes of soft-deleted resources and orphan data.

The pruning process operates in multiple iterations with configurable batch sizes. This approach processes smaller batches of resources per iteration, reducing peak system load and memory consumption while allowing fine-grained control over the total processing time through the maximum iterations parameter.

Pruning (Hard Deletes)

Prune consists of two Kubernetes CronJobs :

  • One to delete “prunable” resources. Prunable resources are resources that have been marked for deletion (i.e., soft-deleted) and are past their INRUPT_STORAGE_PRUNE_RETENTION_WINDOW .

  • One to delete orphan data. Orphan data are resource data without associated metadata.

Configuration

Configuration to Prune Soft-Deleted Resources

For soft-deleted resources, Prune has the following configurations:

To configure the Prune jobs, see Modify Prune Configuration

Configuration to Prune Orphan Data

For orphan data, Prune has the following configurations:

To configure the Prune jobs, see Modify Prune Configuration

Observability

For pruning jobs, the additional fields include:

  • an mdc (managed diagnostic context) field that can be used for correlation;

  • various pruning metrics.

The following lists the various pruning metrics that appear in the log messages (listed by the messageId ):

INFO-Level Messages

  • STORAGEPRUNE000001 (Pruning start process)

    Field
    Description

    retentionWindow

    The value of the configured retention window in milliseconds.

    batchSize

    The value of the configured batch size (either prunable or orphan).

  • STORAGEPRUNE000002 (Prune process completion)

    Logged when the entire pruning process completes.

  • STORAGEPRUNE000003 (Pruner completed)

    Field
    Description

    pruner

    The name of the pruner that completed (e.g., StorageMetadataPruner, StorageOrphanPruner, JdbcViewDefinitionPersistence, JdbcViewBindingPersistence).

    count

    The total number of items pruned by this pruner.

WARNING-Level Messages

  • STORAGEPRUNE000004 (Maximum iterations reached)

    Field
    Description

    pruner

    The name of the pruner that reached the iteration limit.

    maxIterations

    The configured maximum iterations value.

    This warning indicates that more items may remain to be pruned. They will be processed in subsequent scheduled job runs.

Prune emits Prometheus metrics with the following labeled names.

All of the following are prefixed with application_com_inrupt_storage_prune_.

{type="retentionWindow"}

The value of the configured retention window.

{type="prunableBatchSize"}

{type="orphanBatchSize"}

{type="resource", status="prunable"}

The number of Solid resource metadata entries found to fall outside the retention window.

{type="data", status="prunable"}

The number of Solid resource data entries found to belong to metadata entries that fall outside the retention window.

{type="data", status="listed"}

The number of Solid resource data entries listed from S3.

{type="data", status="orphan"}

The number of Solid resource data entries (out of the total listed) found to lack corresponding listed metadata entries.

{type="data", status="deleted"}

The number of Solid resource data entries deleted from S3.

Pruner_findPrunable

Time (in milliseconds) taken to find prunable resource metadata (i.e., metadata associated with soft-deleted resources).

Pruner_listData

Time (in milliseconds) taken to list resource data.

Pruner_findOrphans

Time (in milliseconds) taken to identify orphan resource data.

Pruner_deleteData

Time (in milliseconds) taken to delete resource data.

Pruner_pruneMetadata

Time (in milliseconds) taken to delete resource metadata.

When OpenTelemetry is configured, the application emits a single span named prune with the following attributes.

retentionWindowMilliseconds

The value of the configured retention window.

prunableBatchSize

orphanBatchSize

resourceCount

The number of Solid resource metadata entries found to fall outside the retention window.

dataCount

The number of Solid resource data entries found to belong to metadata entries that fall outside the retention window.

Last updated