mirror of
https://github.com/milvus-io/milvus.git
synced 2026-10-28 08:55:40 +08:00
issue: #40451 - Load and placement management: extract immutable load snapshots, configuration recovery, replica allocation, and manual placement. Restrict assignments and balancing to loaded partitions, with a full-partition fast path, and preserve missing-segment error precedence in manual balance. - Scheduling and cost: reconcile background work in collection batches using cache scanners so scoped events can run between batches. Compute immutable LogicalSize weights in DataView using initialization-fixed rowCount or insertBytes mode, a configurable 64KB unit, row-count fallback, and segmentBaseCost=16; consume the weights throughout placement, fanout, scoring, recovery, and movement. Keep physical rows separate and use one LostStats flag. - Schema and view lifecycle: persist the certified read schema in each DataView, support direct logical transitions or waiting for the current complete materialized projection, and bind new QueryViews to the selected snapshot. Preserve old published-schema recovery, worker synchronization, collection-scoped final-removal subscriptions, and inactivity tracking based on actual progress. See the [schema contract](https://github.com/chyezh/milvus/blob/ce23b02e1c0facfeede0073b22365e1607756d48/docs/design-docs/design_docs/qviews/data_view_schema.md). - Readiness and protocols: count expected replicas and shards, support resource-group-scoped loading and refresh progress with configuration/schema/data-version fences, and provide node clients and simplified loading protocols. Remove compatibility paths for unreleased QueryView formats while retaining existing QueryCoord metadata recovery. - Integration boundary: keep production runtime activation, Load/Release routing, W/A producers, DDL/schema-materialization wiring, and missing dependency implementations in the follow-up integration PR. Provide the required LoadInfoCatalog and PrepareDataViewSchema interfaces here; the follow-up also removes direct RPC load-config writes and retains serialized WAL ACK retries and partition-readiness semantics. --------- Signed-off-by: chyezh <chyezh@outlook.com> Signed-off-by: sijie-ni-0214 <sijie.ni@zilliz.com> Co-authored-by: sijie-ni-0214 <sijie.ni@zilliz.com>