[#1513] ir/settlement: Do not allocate intermediate slice of nodes
After recent changes `buildContainer` method returns two-dimensional slice of `NodeInfo` so there is no need to flatten it to build slice of `common.NodeInfo`. Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
parent
c408a6a0db
commit
13e74fce8a
1 changed files with 13 additions and 7 deletions
|
@ -19,7 +19,6 @@ import (
|
|||
auditClient "github.com/nspcc-dev/neofs-node/pkg/morph/client/audit"
|
||||
balanceClient "github.com/nspcc-dev/neofs-node/pkg/morph/client/balance"
|
||||
containerClient "github.com/nspcc-dev/neofs-node/pkg/morph/client/container"
|
||||
"github.com/nspcc-dev/neofs-node/pkg/services/object_manager/placement"
|
||||
"github.com/nspcc-dev/neofs-node/pkg/util/logger"
|
||||
auditAPI "github.com/nspcc-dev/neofs-sdk-go/audit"
|
||||
containerAPI "github.com/nspcc-dev/neofs-sdk-go/container"
|
||||
|
@ -173,14 +172,21 @@ func (s settlementDeps) ContainerNodes(e uint64, cid cid.ID) ([]common.NodeInfo,
|
|||
return nil, err
|
||||
}
|
||||
|
||||
ns := placement.FlattenNodes(cn)
|
||||
res := make([]common.NodeInfo, 0, len(ns))
|
||||
var sz int
|
||||
|
||||
for i := range ns {
|
||||
res = append(res, &nodeInfoWrapper{
|
||||
ni: ns[i],
|
||||
for i := range cn {
|
||||
sz += len(cn[i])
|
||||
}
|
||||
|
||||
res := make([]common.NodeInfo, 0, sz)
|
||||
|
||||
for i := range cn {
|
||||
for j := range cn[i] {
|
||||
res = append(res, nodeInfoWrapper{
|
||||
ni: cn[i][j],
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
return res, nil
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue