Storage policy

note

Storage policy is Enterprise only.

Storage policies automate partition lifecycle management: they convert older partitions to Parquet locally and drop local copies on a schedule. These settings control the scan interval, retry behavior, and worker threads for the storage policy engine.

For details, see the storage policy concept page.

storage.policy.check.interval​

  • Default: 5m
  • Reloadable: no

How often QuestDB scans for partitions to process.

storage.policy.max.reschedule.count​

  • Default: 20
  • Reloadable: no

Maximum number of retries before abandoning a storage policy task.

storage.policy.retry.interval​

  • Default: 1m
  • Reloadable: no

Retry interval for failed storage policy tasks.

storage.policy.worker.affinity​

  • Default: -1
  • Reloadable: no

CPU affinity for each storage policy worker thread (comma-separated list). -1 means no affinity.

storage.policy.worker.count​

  • Default: 4
  • Reloadable: no

Number of storage policy worker threads. Setting to 0 disables the feature.

storage.policy.worker.haltOnError​

  • Default: false
  • Reloadable: no

Whether a storage policy worker thread halts when it hits an unhandled error.

storage.policy.worker.nap.threshold​

  • Default: 100
  • Reloadable: no

Number of idle worker-loop iterations before a storage policy worker naps.

storage.policy.worker.sleep.threshold​

  • Default: 500
  • Reloadable: no

Number of idle worker-loop iterations before a storage policy worker sleeps.

storage.policy.worker.sleep.timeout​

  • Default: 100ms
  • Reloadable: no

Sleep duration when a storage policy worker has no tasks to process.

storage.policy.worker.yield.threshold​

  • Default: 10
  • Reloadable: no

Number of idle worker-loop iterations before a storage policy worker yields.