Package-level declarations

Types

Link copied to clipboard

A checkpoint store that survives the process, which is the only kind that makes resuming real.

Link copied to clipboard
class MigrationCheckpoint(val resumeAt: PointId, val copied: Long)

How far a migration got: the point id to resume at and how many points had been written by then.

Link copied to clipboard

Where a migration remembers how far it got.

Link copied to clipboard
class MigrationReport(val source: String, val target: String, val copied: Long, val resumed: Boolean, val sourceCount: Long, val targetCount: Long, val sampledPairs: Int, val recall: Double?, val aliasMoved: Boolean)

What a migration did, and what it checked before it was willing to move an alias.

Link copied to clipboard
class MigrationVerification(val sampleSize: Int = 32, val topK: Int = 10, val minRecall: Double = 0.9, val using: String? = null)

How hard to check the copy before the alias is allowed to move.

Link copied to clipboard

The verification refused the copy, so the alias was left where it was and the target is still there to inspect.

Functions

Link copied to clipboard

The default transform: the same point, in the new collection.

Link copied to clipboard
suspend fun QdrantClient.migrateCollection(from: String, to: String, alias: String? = null, createTarget: CreateCollectionBuilder.() -> Unit? = null, batchSize: Int = 256, checkpoints: MigrationCheckpointStore = MigrationCheckpointStore.inMemory(), migrationId: String = "->", verification: MigrationVerification = MigrationVerification(), transform: suspend (Record) -> PointStruct? = ::copyUnchanged): MigrationReport

Copies a collection into another one and moves an alias onto it, without taking reads down.