From f1f4286442de970e218563b18c94b182687f5f0c Mon Sep 17 00:00:00 2001 From: Leonard Lyubich Date: Tue, 27 Feb 2024 19:48:54 +0400 Subject: [PATCH] Revert "[#2260] services/object: Do not assemble object with TTL=1" This reverts commit 907f427b99768ff010834621578441ef81dc0ff9. GET requests with TTL=1 are absolutely correct regardless of the need to assemble the object. This TTL blocks request forwarding - it does not happen. At the same time, assembling an object on the server spawns new requests from scratch, which is not forwarding. The original commit does not have a description of the cause, and it was never discovered. Fixes #2447. Signed-off-by: Leonard Lyubich --- CHANGELOG.md | 1 + pkg/services/object/get/exec.go | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2de4044b22..232d2cccf7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ Changelog for NeoFS Node ### Fixed - Access to `PUT` objects no longer grants `DELETE` rights (#2261) +- Storage nodes no longer reject GET w/ TTL=1 requests to read complex objects (#2447) ### Changed diff --git a/pkg/services/object/get/exec.go b/pkg/services/object/get/exec.go index 7a1b5fa920..fc3963e9bb 100644 --- a/pkg/services/object/get/exec.go +++ b/pkg/services/object/get/exec.go @@ -134,7 +134,7 @@ func (exec execCtx) key() (*ecdsa.PrivateKey, error) { } func (exec *execCtx) canAssemble() bool { - return exec.svc.assembly && !exec.isRaw() && !exec.headOnly() && !exec.isLocal() + return exec.svc.assembly && !exec.isRaw() && !exec.headOnly() } func (exec *execCtx) splitInfo() *objectSDK.SplitInfo {