mirror of
https://github.com/featurebasedb/featurebase.git
synced 2026-10-11 05:17:54 +00:00
cleanup TypedDBPerShardGetShardsForIndex logic
This commit is contained in:
parent
f8e7b27a6f
commit
18e253870e
1 changed files with 13 additions and 21 deletions
34
dbshard.go
34
dbshard.go
|
|
@ -734,32 +734,24 @@ func (per *DBPerShard) TypedDBPerShardGetShardsForIndex(ty txtype, idx *Index, r
|
|||
// Upon return, cache the setOfShards value and reuse it next time
|
||||
|
||||
if ty == roaringTxn {
|
||||
// INVAR: roaringViewPath == "", because the other case is
|
||||
// handled above.
|
||||
rx := &RoaringTx{
|
||||
Index: idx,
|
||||
}
|
||||
if roaringViewPath == "" {
|
||||
fields := idx.Fields()
|
||||
for _, field := range fields {
|
||||
for _, view := range field.views() {
|
||||
sos, err := rx.SliceOfShards("", "", "", view.path)
|
||||
if err != nil {
|
||||
return nil,
|
||||
errors.Wrap(err, fmt.Sprintf(
|
||||
"TypedDBPerShardGetLocalShardsForIndex roaringTxn view.path='%v'", view.path))
|
||||
}
|
||||
for _, shard := range sos {
|
||||
setOfShards.add(shard)
|
||||
}
|
||||
fields := idx.Fields()
|
||||
for _, field := range fields {
|
||||
for _, view := range field.views() {
|
||||
sos, err := rx.SliceOfShards("", "", "", view.path)
|
||||
if err != nil {
|
||||
return nil,
|
||||
errors.Wrap(err, fmt.Sprintf(
|
||||
"TypedDBPerShardGetLocalShardsForIndex roaringTxn view.path='%v'", view.path))
|
||||
}
|
||||
for _, shard := range sos {
|
||||
setOfShards.add(shard)
|
||||
}
|
||||
}
|
||||
return setOfShards.CloneMaybe(), nil
|
||||
}
|
||||
sos, err := rx.SliceOfShards("", "", "", roaringViewPath)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
for _, shard := range sos {
|
||||
setOfShards.add(shard)
|
||||
}
|
||||
return setOfShards.CloneMaybe(), nil
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue