Skip to content

Copy binary header from local storage to GET/HEAD response without unmarshal #3783

@cthulhu-rider

Description

@cthulhu-rider

Is your feature request related to a problem? Please describe.

to respond with local object header stored in BLOB storage, server:

  1. reads full header binary into buffer
  2. decodes it into SDK object structure
  3. converts it to API object structure
  4. encodes it into protobuf

in more detail, 1 includes:
1.1. format verification
1.2. memory allocation

each step (except perhaps 1.1) results in memory allocations. Although, given that BLOB storage keeps headers as protobufs, most of them are redundant

Describe the solution you'd like

read header protobuf directly into response message. This will reduce the number of allocations and speed up the execution

consider keeping 1.1

Additional context

#2925

Metadata

Metadata

Assignees

No one assigned

    Labels

    I3Minimal impactS3Minimally significantU3RegularenhancementImproving existing functionalityneofs-storageStorage node application issuesperformanceMore of something per second

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions