[#645] config: Resolve funlen linter
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
This commit is contained in:
parent
13cda5de8e
commit
9c10844eb0
1 changed files with 80 additions and 67 deletions
|
@ -191,6 +191,7 @@ type subStorageCfg struct {
|
||||||
openedCacheSize int
|
openedCacheSize int
|
||||||
initWorkerCount int
|
initWorkerCount int
|
||||||
initInAdvance bool
|
initInAdvance bool
|
||||||
|
rebuildDropTimeout time.Duration
|
||||||
|
|
||||||
// badgerstore-specific
|
// badgerstore-specific
|
||||||
indexCacheSize int64
|
indexCacheSize int64
|
||||||
|
@ -199,7 +200,6 @@ type subStorageCfg struct {
|
||||||
gcInterval time.Duration
|
gcInterval time.Duration
|
||||||
gcDiscardRatio float64
|
gcDiscardRatio float64
|
||||||
valueLogFileSize int64
|
valueLogFileSize int64
|
||||||
rebuildDropTimeout time.Duration
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// readConfig fills applicationConfiguration with raw configuration values
|
// readConfig fills applicationConfiguration with raw configuration values
|
||||||
|
@ -909,50 +909,15 @@ func (c *cfg) getSubstorageOpts(shCfg shardCfg) []blobstor.SubStorage {
|
||||||
for _, sRead := range shCfg.subStorages {
|
for _, sRead := range shCfg.subStorages {
|
||||||
switch sRead.typ {
|
switch sRead.typ {
|
||||||
case blobovniczatree.Type:
|
case blobovniczatree.Type:
|
||||||
blobTreeOpts := []blobovniczatree.Option{
|
blobovniczaTreeOpts := c.getBlobovniczaTreeOpts(sRead)
|
||||||
blobovniczatree.WithRootPath(sRead.path),
|
|
||||||
blobovniczatree.WithPermissions(sRead.perm),
|
|
||||||
blobovniczatree.WithBlobovniczaSize(sRead.size),
|
|
||||||
blobovniczatree.WithBlobovniczaShallowDepth(sRead.depth),
|
|
||||||
blobovniczatree.WithBlobovniczaShallowWidth(sRead.width),
|
|
||||||
blobovniczatree.WithBlobovniczaLeafWidth(sRead.leafWidth),
|
|
||||||
blobovniczatree.WithOpenedCacheSize(sRead.openedCacheSize),
|
|
||||||
blobovniczatree.WithInitWorkerCount(sRead.initWorkerCount),
|
|
||||||
blobovniczatree.WithInitInAdvance(sRead.initInAdvance),
|
|
||||||
blobovniczatree.WithWaitBeforeDropDB(sRead.rebuildDropTimeout),
|
|
||||||
blobovniczatree.WithLogger(c.log),
|
|
||||||
blobovniczatree.WithObjectSizeLimit(shCfg.smallSizeObjectLimit),
|
|
||||||
}
|
|
||||||
|
|
||||||
if c.metricsCollector != nil {
|
|
||||||
blobTreeOpts = append(blobTreeOpts,
|
|
||||||
blobovniczatree.WithMetrics(
|
|
||||||
lsmetrics.NewBlobovniczaTreeMetrics(sRead.path, c.metricsCollector.BlobobvnizcaTreeMetrics()),
|
|
||||||
),
|
|
||||||
)
|
|
||||||
}
|
|
||||||
ss = append(ss, blobstor.SubStorage{
|
ss = append(ss, blobstor.SubStorage{
|
||||||
Storage: blobovniczatree.NewBlobovniczaTree(blobTreeOpts...),
|
Storage: blobovniczatree.NewBlobovniczaTree(blobovniczaTreeOpts...),
|
||||||
Policy: func(_ *objectSDK.Object, data []byte) bool {
|
Policy: func(_ *objectSDK.Object, data []byte) bool {
|
||||||
return uint64(len(data)) < shCfg.smallSizeObjectLimit
|
return uint64(len(data)) < shCfg.smallSizeObjectLimit
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
case fstree.Type:
|
case fstree.Type:
|
||||||
fstreeOpts := []fstree.Option{
|
fstreeOpts := c.getFSTreeOpts(sRead)
|
||||||
fstree.WithPath(sRead.path),
|
|
||||||
fstree.WithPerm(sRead.perm),
|
|
||||||
fstree.WithDepth(sRead.depth),
|
|
||||||
fstree.WithNoSync(sRead.noSync),
|
|
||||||
fstree.WithLogger(c.log),
|
|
||||||
}
|
|
||||||
if c.metricsCollector != nil {
|
|
||||||
fstreeOpts = append(fstreeOpts,
|
|
||||||
fstree.WithMetrics(
|
|
||||||
lsmetrics.NewFSTreeMetricsWithoutShardID(sRead.path, c.metricsCollector.FSTree()),
|
|
||||||
),
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
ss = append(ss, blobstor.SubStorage{
|
ss = append(ss, blobstor.SubStorage{
|
||||||
Storage: fstree.New(fstreeOpts...),
|
Storage: fstree.New(fstreeOpts...),
|
||||||
Policy: func(_ *objectSDK.Object, _ []byte) bool {
|
Policy: func(_ *objectSDK.Object, _ []byte) bool {
|
||||||
|
@ -960,6 +925,22 @@ func (c *cfg) getSubstorageOpts(shCfg shardCfg) []blobstor.SubStorage {
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
case badgerstore.Type:
|
case badgerstore.Type:
|
||||||
|
badgerStoreOpts := c.getBadgerStoreOpts(sRead)
|
||||||
|
ss = append(ss, blobstor.SubStorage{
|
||||||
|
Storage: badgerstore.New(badgerStoreOpts...),
|
||||||
|
Policy: func(_ *objectSDK.Object, data []byte) bool {
|
||||||
|
return uint64(len(data)) < shCfg.smallSizeObjectLimit
|
||||||
|
},
|
||||||
|
})
|
||||||
|
default:
|
||||||
|
// should never happen, that has already
|
||||||
|
// been handled: when the config was read
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ss
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *cfg) getBadgerStoreOpts(sRead subStorageCfg) []badgerstore.Option {
|
||||||
badgerStoreOpts := []badgerstore.Option{
|
badgerStoreOpts := []badgerstore.Option{
|
||||||
badgerstore.WithPath(sRead.path),
|
badgerstore.WithPath(sRead.path),
|
||||||
badgerstore.WithPermissions(sRead.perm),
|
badgerstore.WithPermissions(sRead.perm),
|
||||||
|
@ -975,18 +956,50 @@ func (c *cfg) getSubstorageOpts(shCfg shardCfg) []blobstor.SubStorage {
|
||||||
badgerstore.WithMetrics(
|
badgerstore.WithMetrics(
|
||||||
lsmetrics.NewBadgerStoreMetrics(sRead.path, c.metricsCollector.BadgerStoreMetrics())))
|
lsmetrics.NewBadgerStoreMetrics(sRead.path, c.metricsCollector.BadgerStoreMetrics())))
|
||||||
}
|
}
|
||||||
ss = append(ss, blobstor.SubStorage{
|
return badgerStoreOpts
|
||||||
Storage: badgerstore.New(badgerStoreOpts...),
|
}
|
||||||
Policy: func(_ *objectSDK.Object, data []byte) bool {
|
|
||||||
return uint64(len(data)) < shCfg.smallSizeObjectLimit
|
func (c *cfg) getFSTreeOpts(sRead subStorageCfg) []fstree.Option {
|
||||||
},
|
fstreeOpts := []fstree.Option{
|
||||||
})
|
fstree.WithPath(sRead.path),
|
||||||
default:
|
fstree.WithPerm(sRead.perm),
|
||||||
// should never happen, that has already
|
fstree.WithDepth(sRead.depth),
|
||||||
// been handled: when the config was read
|
fstree.WithNoSync(sRead.noSync),
|
||||||
|
fstree.WithLogger(c.log),
|
||||||
}
|
}
|
||||||
|
if c.metricsCollector != nil {
|
||||||
|
fstreeOpts = append(fstreeOpts,
|
||||||
|
fstree.WithMetrics(
|
||||||
|
lsmetrics.NewFSTreeMetricsWithoutShardID(sRead.path, c.metricsCollector.FSTree()),
|
||||||
|
),
|
||||||
|
)
|
||||||
}
|
}
|
||||||
return ss
|
return fstreeOpts
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *cfg) getBlobovniczaTreeOpts(sRead subStorageCfg) []blobovniczatree.Option {
|
||||||
|
blobTreeOpts := []blobovniczatree.Option{
|
||||||
|
blobovniczatree.WithRootPath(sRead.path),
|
||||||
|
blobovniczatree.WithPermissions(sRead.perm),
|
||||||
|
blobovniczatree.WithBlobovniczaSize(sRead.size),
|
||||||
|
blobovniczatree.WithBlobovniczaShallowDepth(sRead.depth),
|
||||||
|
blobovniczatree.WithBlobovniczaShallowWidth(sRead.width),
|
||||||
|
blobovniczatree.WithBlobovniczaLeafWidth(sRead.leafWidth),
|
||||||
|
blobovniczatree.WithOpenedCacheSize(sRead.openedCacheSize),
|
||||||
|
blobovniczatree.WithInitWorkerCount(sRead.initWorkerCount),
|
||||||
|
blobovniczatree.WithInitInAdvance(sRead.initInAdvance),
|
||||||
|
blobovniczatree.WithLogger(c.log),
|
||||||
|
blobovniczatree.WithWaitBeforeDropDB(sRead.rebuildDropTimeout),
|
||||||
|
}
|
||||||
|
|
||||||
|
if c.metricsCollector != nil {
|
||||||
|
blobTreeOpts = append(blobTreeOpts,
|
||||||
|
blobovniczatree.WithMetrics(
|
||||||
|
lsmetrics.NewBlobovniczaTreeMetrics(sRead.path, c.metricsCollector.BlobobvnizcaTreeMetrics()),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
}
|
||||||
|
return blobTreeOpts
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *cfg) getShardOpts(shCfg shardCfg) shardOptsWithID {
|
func (c *cfg) getShardOpts(shCfg shardCfg) shardOptsWithID {
|
||||||
|
|
Loading…
Add table
Reference in a new issue