{
  "id": 11248344,
  "title": "GET and Range Reads Inside Lioran S3: Metadata Lookup to Async File Streaming",
  "url": "https://urgent.news/2026/10/01/get-and-range-reads-inside-lioran-s3-metadata-lookup-to-async-file",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-10-01T17:50:00.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/ultrontheai/get-and-range-reads-inside-lioran-s3-metadata-lookup-to-async-file-streaming-5clb"
  },
  "original_language": "en",
  "account": "GET and Range Reads Inside Lioran S3 focus on the read path of object storage. The Lioran S3 local engine keeps this path direct, with logical key → metadata lookup → physical path → Tokio file → async stream. When a GET begins, self.metadata.get_object(bucket, key) is called, returning ObjectNotFound if no metadata record exists. The engine then checks the record is not deleted and has a Committed status, preventing incomplete/non-committed GET responses. The metadata record provides a relative physical path, which the engine resolves under the configured storage root. If the physical payload is missing despite a committed metadata status, an error is reported instead of a normal ObjectNotFound. The engine returns a Box<dyn AsyncRead + Send + Unpin> with the metadata, enabling streaming from the reader rather than materializing the full payload into memory. Range reads follow the same process, with file.seek(SeekFrom::Start(start)).await limiting the returned reader to the requested range. Range reads are crucial for video seeking, media players, resumable downloads, archive inspection, and partial dataset reads. The normal read path avoids copying the full payload into RocksDB or a Rust Vec, reconstructing a filesystem path, or doing media-specific processing. This simplicity of moving metadata, opening a file, and streaming bytes matters greatly and impacts performance differently depending on whether the payload is already in the OS page cache or is a cold read. The core correctness step is the metadata-to-placement mapping, and any optimization must ensure the correct physical object is read.",
  "summary": "GET and Range Reads Inside Lioran S3 Writes get most of the dramatic engineering diagrams. Reads are where object storage spends much of its life. The current Lioran S3 local engine keeps the read path deliberately direct: logical key ↓ metadata lookup ↓ physical path ↓ Tokio file ↓ async stream I’m Swaraj Puppalwar , Founder & CTO of Lioran Group / Lioran Developer Solutions . Metadata first A…",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}