mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-06 17:18:35 +08:00
issue: #41544 - add lock interceptor into wal. - use recovery and shardmanager to replace the original implementation of segment assignment. - remove redundant implementation and unittest. - remove redundant proto definition. - use 2 streamingnode in e2e. --------- Signed-off-by: chyezh <chyezh@outlook.com>
23 lines
670 B
Go
23 lines
670 B
Go
package lock
|
|
|
|
import (
|
|
"github.com/milvus-io/milvus/internal/streamingnode/server/wal/interceptors"
|
|
"github.com/milvus-io/milvus/pkg/v2/util/lock"
|
|
)
|
|
|
|
// NewInterceptorBuilder creates a new redo interceptor builder.
|
|
func NewInterceptorBuilder() interceptors.InterceptorBuilder {
|
|
return &interceptorBuilder{}
|
|
}
|
|
|
|
// interceptorBuilder is the builder for redo interceptor.
|
|
type interceptorBuilder struct{}
|
|
|
|
// Build creates a new redo interceptor.
|
|
func (b *interceptorBuilder) Build(param *interceptors.InterceptorBuildParam) interceptors.Interceptor {
|
|
return &lockAppendInterceptor{
|
|
vchannelLocker: lock.NewKeyLock[string](),
|
|
txnManager: param.TxnManager,
|
|
}
|
|
}
|