mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-06 17:18:35 +08:00
issue: #43897 - Return LastConfirmedMessageID when wal append operation. - Add resource-key-based locker for broadcast-ack operation to protect the coord state when executing ddl. - Resource-key-based locker is held until the broadcast operation is acked. - ResourceKey support shared and exclusive lock. - Add FastAck execute ack right away after the broadcast done to speed up ddl. - Ack callback will support broadcast message result now. - Add tombstone for broadcaster to avoid to repeatedly commit DDL and ABA issue. --------- Signed-off-by: chyezh <chyezh@outlook.com>
26 lines
485 B
Go
26 lines
485 B
Go
package balance
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/milvus-io/milvus/internal/streamingcoord/server/balancer"
|
|
"github.com/milvus-io/milvus/pkg/v2/util/syncutil"
|
|
)
|
|
|
|
var singleton = syncutil.NewFuture[balancer.Balancer]()
|
|
|
|
func Register(balancer balancer.Balancer) {
|
|
singleton.Set(balancer)
|
|
}
|
|
|
|
func GetWithContext(ctx context.Context) (balancer.Balancer, error) {
|
|
return singleton.GetWithContext(ctx)
|
|
}
|
|
|
|
func Release() {
|
|
if !singleton.Ready() {
|
|
return
|
|
}
|
|
singleton.Get().Close()
|
|
}
|