CollectionParamsDiff

@Serializable
data class CollectionParamsDiff(val replicationFactor: Int? = null, val writeConsistencyFactor: Int? = null, val readFanOutFactor: Int? = null, val readFanOutDelayMs: Long? = null, val payload: PayloadStorageParams? = null, val onDiskPayload: Boolean? = null)

The parts of a collection's configuration that can be changed after it exists.

Several of these could only be chosen at creation before, which mattered most for the newest one: memory tiers arrived in Qdrant 1.19 and payloadMemory set a collection's payload placement at creation, so moving an existing collection from cold to cached, which is the whole point of a tier, meant recreating the collection. The replication factor is the same story for a cluster that grew.

A field left null is left unchanged, which is the opposite of how QuotaConfig behaves and is worth knowing before using either.

vectors and sparseVectors are on Qdrant's own update request and deliberately not here: they change what the collection stores rather than how it is placed, and they belong with the vector-config work rather than with this.

Constructors

Link copied to clipboard
constructor(replicationFactor: Int? = null, writeConsistencyFactor: Int? = null, readFanOutFactor: Int? = null, readFanOutDelayMs: Long? = null, payload: PayloadStorageParams? = null, onDiskPayload: Boolean? = null)

Properties

Link copied to clipboard
@SerialName(value = "on_disk_payload")
val onDiskPayload: Boolean?

Deprecated by Qdrant 1.19 in favour of payload.

Link copied to clipboard
@SerialName(value = "payload")
val payload: PayloadStorageParams?

Payload placement. Overrides onDiskPayload when both are set.

Link copied to clipboard
@SerialName(value = "read_fan_out_delay_ms")
val readFanOutDelayMs: Long?

How long to wait before trying another replica, in milliseconds.

Link copied to clipboard
@SerialName(value = "read_fan_out_factor")
val readFanOutFactor: Int?

Extra remote nodes every read is also sent to, answering with the first response back.

Link copied to clipboard
@SerialName(value = "replication_factor")
val replicationFactor: Int?

Replicas the cluster tries to maintain for each shard.

Link copied to clipboard
@SerialName(value = "write_consistency_factor")
val writeConsistencyFactor: Int?

Replicas that have to acknowledge a write for it to count.