nspcc-dev/neofs-node

node: Refactor using `StorageEngine` in `Object` service

Ouverte

#1 834 ouverte le 4 oct. 2022

 (0 commentaire) (0 réaction) (0 personne assignée)Go (49 forks)auto 404
I4S2U4enhancementgood first issueneofs-storage

Métriques du dépôt

Stars
 (36 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

Description

Object service server of storage node uses engine.StorageEngine type directly almost everywhere. Such code architecture doesn't allow to tune local storage behavior. For example, in #1798 there was a need to block all local operations, but on Object server only: Control service should still call the engine.

I propose to refactor engine's usage as it done it ObjectService.Put server

https://github.com/nspcc-dev/neofs-node/blob/4eb0ed11f8e56beee3dfbee632cb4b9cad3bb47c/pkg/services/object/put/local.go#L11-L16

Each component should precisely document expected behavior of local object storage by itself via locally defined interface. As a bonus, instance can be easily mocked for testing.

Guide contributeur