[#2057] meta: Do not lock the whole meta on GET
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
This commit is contained in:
parent
fa231b8c56
commit
3d6defd3e8
1 changed files with 6 additions and 2 deletions
|
@ -47,8 +47,12 @@ func (r GetRes) Header() *objectSDK.Object {
|
||||||
// Returns an error of type apistatus.ObjectAlreadyRemoved if object has been placed in graveyard.
|
// Returns an error of type apistatus.ObjectAlreadyRemoved if object has been placed in graveyard.
|
||||||
// Returns the object.ErrObjectIsExpired if the object is presented but already expired.
|
// Returns the object.ErrObjectIsExpired if the object is presented but already expired.
|
||||||
func (db *DB) Get(prm GetPrm) (res GetRes, err error) {
|
func (db *DB) Get(prm GetPrm) (res GetRes, err error) {
|
||||||
db.modeMtx.Lock()
|
db.modeMtx.RLock()
|
||||||
defer db.modeMtx.Unlock()
|
defer db.modeMtx.RUnlock()
|
||||||
|
|
||||||
|
if db.mode.NoMetabase() {
|
||||||
|
return res, ErrDegradedMode
|
||||||
|
}
|
||||||
|
|
||||||
currEpoch := db.epochState.CurrentEpoch()
|
currEpoch := db.epochState.CurrentEpoch()
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue