mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-06 17:18:35 +08:00
related: #43942 Signed-off-by: MrPresent-Han <chun.han@gmail.com> Co-authored-by: MrPresent-Han <chun.han@gmail.com>
45 lines
1.0 KiB
Go
45 lines
1.0 KiB
Go
package pathutil
|
|
|
|
import (
|
|
"fmt"
|
|
"path/filepath"
|
|
|
|
"go.uber.org/zap"
|
|
|
|
"github.com/milvus-io/milvus/pkg/v2/log"
|
|
"github.com/milvus-io/milvus/pkg/v2/util/paramtable"
|
|
)
|
|
|
|
type PathType int
|
|
|
|
const (
|
|
GrowingMMapPath PathType = iota
|
|
LocalChunkPath
|
|
BM25Path
|
|
RootCachePath
|
|
)
|
|
|
|
const (
|
|
CachePathPrefix = "cache"
|
|
GrowingMMapPathPrefix = "growing_mmap"
|
|
LocalChunkPathPrefix = "local_chunk"
|
|
BM25PathPrefix = "bm25"
|
|
)
|
|
|
|
func GetPath(pathType PathType, nodeID int64) string {
|
|
rootPath := paramtable.Get().LocalStorageCfg.Path.GetValue()
|
|
|
|
path := filepath.Join(rootPath, CachePathPrefix)
|
|
switch pathType {
|
|
case GrowingMMapPath:
|
|
path = filepath.Join(path, fmt.Sprintf("%d", nodeID), GrowingMMapPathPrefix)
|
|
case LocalChunkPath:
|
|
path = filepath.Join(path, fmt.Sprintf("%d", nodeID), LocalChunkPathPrefix)
|
|
case BM25Path:
|
|
path = filepath.Join(path, fmt.Sprintf("%d", nodeID), BM25PathPrefix)
|
|
case RootCachePath:
|
|
}
|
|
log.Info("Get path for", zap.Any("pathType", pathType), zap.Int64("nodeID", nodeID), zap.String("path", path))
|
|
return path
|
|
}
|