[#208] Remove `childfree` search attribute

With updated specification of object related operation
we don't have this search attribute any more and we
should not use functions related to this attribute.

This commit breaks object service logic, however it will
be fixed later.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
support/v0.27
Alex Vanin 2020-11-26 12:15:15 +03:00 committed by Alex Vanin
parent 46a43a778f
commit 6280d075b9
4 changed files with 3 additions and 32 deletions

View File

@ -63,8 +63,6 @@ func stringEqualMatcher(key, objVal, filterVal string) bool {
switch key {
default:
return objVal == filterVal
case v2object.FilterPropertyChildfree:
return (filterVal == v2object.BooleanPropertyValueTrue) == (objVal == v2object.BooleanPropertyValueTrue)
case v2object.FilterPropertyPhy, v2object.FilterPropertyRoot:
return true
}

View File

@ -10,7 +10,6 @@ import (
"github.com/nspcc-dev/neofs-api-go/pkg/container"
objectSDK "github.com/nspcc-dev/neofs-api-go/pkg/object"
"github.com/nspcc-dev/neofs-api-go/pkg/owner"
v2object "github.com/nspcc-dev/neofs-api-go/v2/object"
"github.com/nspcc-dev/neofs-node/pkg/core/object"
"github.com/nspcc-dev/neofs-node/pkg/util/test"
"github.com/pkg/errors"
@ -174,24 +173,7 @@ func TestDB_SelectProperties(t *testing.T) {
lnk.SetID(testOID())
lnk.SetChildren(testOID())
lnkAddr := lnk.Object().Address()
require.NoError(t, db.Put(lnk.Object()))
// childfree filter
fs = fs[:0]
fs.AddChildfreeFilter()
testSelect(t, db, fs, childAddr, parAddr)
// non-childfree filter
fs = fs[:0]
fs.AddNonChildfreeFilter()
testSelect(t, db, fs, lnkAddr)
// childfree filter (with random false value)
fs = fs[:0]
fs.AddFilter(v2object.FilterPropertyChildfree, "some false value", objectSDK.MatchStringEqual)
testSelect(t, db, fs, lnkAddr)
}
func TestDB_Path(t *testing.T) {

View File

@ -96,12 +96,7 @@ func addressKey(addr *objectSDK.Address) []byte {
func objectIndices(obj *object.Object, parent bool) []bucketItem {
as := obj.Attributes()
res := make([]bucketItem, 0, 7+len(as)) // 7 predefined buckets and object attributes
childfreeVal := v2object.BooleanPropertyValueTrue
if len(obj.Children()) > 0 {
childfreeVal = ""
}
res := make([]bucketItem, 0, 6+len(as)) // 6 predefined buckets and object attributes
res = append(res,
bucketItem{
@ -116,10 +111,6 @@ func objectIndices(obj *object.Object, parent bool) []bucketItem {
key: v2object.FilterHeaderOwnerID,
val: obj.OwnerID().String(),
},
bucketItem{
key: v2object.FilterPropertyChildfree,
val: childfreeVal,
},
bucketItem{
key: v2object.FilterHeaderParent,
val: obj.ParentID().String(),

View File

@ -8,24 +8,24 @@ import (
// FIXME: this is a temporary solution for object fields filters
// fixme: remove it, it is broken now
func NewRightChildQuery(par *object.ID) query.Query {
q := &Query{
filters: make(object.SearchFilters, 0, 2),
}
q.filters.AddFilter(v2object.FilterHeaderParent, idValue(par), object.MatchStringEqual)
q.filters.AddFilter(v2object.FilterPropertyChildfree, v2object.BooleanPropertyValueTrue, object.MatchStringEqual)
return q
}
// fixme: remove it, it is broken now
func NewLinkingQuery(par *object.ID) query.Query {
q := &Query{
filters: make(object.SearchFilters, 0, 2),
}
q.filters.AddFilter(v2object.FilterHeaderParent, idValue(par), object.MatchStringEqual)
q.filters.AddFilter(v2object.FilterPropertyChildfree, v2object.BooleanPropertyValueFalse, object.MatchStringEqual)
return q
}