Skip to content

findMatchingDataSets

findMatchingDataSets(dataSets, metadata, legacyPieceStorageIdLimit?): SelectionDataSet[]

Defined in: packages/synapse-core/src/warm-storage/find-matching-data-sets.ts:55

Find datasets matching the given metadata, sorted by preference.

Matching is exact: a dataset matches only if its metadata keys and values are identical to the requested metadata.

Only active datasets are considered (live, managed, pdpEndEpoch === 0n).

Sort order:

  1. Compact datasets (dataSetId >= legacyPieceStorageIdLimit) before legacy ones
  2. Within each group, datasets with pieces before empty datasets
  3. Within each group, older datasets (lower ID) first
ParameterTypeDefault valueDescription
dataSetsSelectionDataSet[]undefinedDatasets to search (typically filtered to a single provider)
metadataMetadataObjectundefinedDesired metadata keys and values
legacyPieceStorageIdLimitbigint0nData set ID boundary between legacy and compact piece storage (see FilecoinChain.legacyPieceStorageIdLimit). Defaults to 0n, which treats every dataset as compact.

SelectionDataSet[]

Matching datasets in preference order