Skip to content

storage: ExportRequest poorly leveraged to clean up abandoned intents #59704

@nvb

Description

@nvb

Currently, an ExportRequest will take an extremely long time to resolve a collection of abandoned intents. This can make it look like the ExportRequest is stuck somewhere in KV. The reason for this (or at least part of it) is that ExportMVCCToSst currently only returns a single intent if it returns a WriteIntentError. This is different than a request like ScanRequest, which will collect a set of intents in a WriteIntentError, which allows higher levels to process all of them at once.

We should improve ExportRequest to collect multiple intents in a single WriteIntentError.

We should also write a test that exercises the path where an ExportRequest needs to clean up millions of abandoned intents.

gz#7529

Epic: CRDB-2554

Metadata

Metadata

Assignees

Labels

A-disaster-recoveryA-kv-transactionsRelating to MVCC and the transactional model.A-storageRelating to our storage engine (Pebble) on-disk storage.C-enhancementSolution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)T-kvKV Teamdocs-donedocs-known-limitation

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions