[#1460] engine: Do not use pointers as the results

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
This commit is contained in:
Pavel Karpy 2022-05-31 14:56:59 +03:00 committed by Pavel Karpy
parent 7b6363f4c6
commit 08bf8a68f1
9 changed files with 47 additions and 49 deletions

View file

@ -60,7 +60,7 @@ func (r RngRes) Object() *objectSDK.Object {
// Returns ErrRangeOutOfBounds if the requested object range is out of bounds.
//
// Returns an error if executions are blocked (see BlockExecution).
func (e *StorageEngine) GetRange(prm RngPrm) (res *RngRes, err error) {
func (e *StorageEngine) GetRange(prm RngPrm) (res RngRes, err error) {
err = e.execIfNotBlocked(func() error {
res, err = e.getRange(prm)
return err
@ -69,7 +69,7 @@ func (e *StorageEngine) GetRange(prm RngPrm) (res *RngRes, err error) {
return
}
func (e *StorageEngine) getRange(prm RngPrm) (*RngRes, error) {
func (e *StorageEngine) getRange(prm RngPrm) (RngRes, error) {
if e.metrics != nil {
defer elapsed(e.metrics.AddRangeDuration)()
}
@ -137,12 +137,12 @@ func (e *StorageEngine) getRange(prm RngPrm) (*RngRes, error) {
})
if outSI != nil {
return nil, objectSDK.NewSplitInfoError(outSI)
return RngRes{}, objectSDK.NewSplitInfoError(outSI)
}
if obj == nil {
if shardWithMeta.Shard == nil || !shard.IsErrNotFound(outError) {
return nil, outError
return RngRes{}, outError
}
// If the object is not found but is present in metabase,
@ -160,7 +160,7 @@ func (e *StorageEngine) getRange(prm RngPrm) (*RngRes, error) {
return err == nil
})
if obj == nil {
return nil, outError
return RngRes{}, outError
}
e.reportShardError(shardWithMeta, "meta info was present, but object is missing",
metaError,
@ -168,7 +168,7 @@ func (e *StorageEngine) getRange(prm RngPrm) (*RngRes, error) {
)
}
return &RngRes{
return RngRes{
obj: obj,
}, nil
}