Skip to main content

Multipart Commands

The liorans3 multipart (alias: mp) command group manages chunked multipart ingestion for large files.


1. liorans3 multipart upload​

High-level automated chunked multipart upload with parallel concurrency, automatic chunk retries, and a terminal progress bar.

Syntax​

liorans3 multipart upload <bucket> <key> <file> [options]

Options​

  • --part-size <bytes>: Chunk part size in bytes (minimum 5 MiB = 5242880).
  • --part-size-mb <mb>: Chunk part size in Megabytes (e.g. 32).
  • --concurrency <n>: Parallel chunk worker count (default: 4).
  • --content-type <type>: MIME content type.
  • --file-name <name>: Original file name metadata.
  • --metadata <key=value...>: Custom metadata attributes.
  • --retries <n>: Maximum retry attempts per chunk (default: 3).

Example​

liorans3 multipart upload datasets large-archive.tar.gz ./dataset.tar.gz \
--part-size-mb 32 \
--concurrency 4 \
--metadata env=prod \
--metadata pipeline=nightly

Example Output​

Uploading large-archive.tar.gz [========================] 100% (2.40 GiB / 2.40 GiB, 45.2 MB/s)
Multipart upload committed: 'large-archive.tar.gz' (2.40 GiB, SHA-256: 7f8a9b2c...)

2. liorans3 multipart create​

Initializes a new multipart upload session on the server.

Syntax​

liorans3 multipart create <bucket> <key> [options]

Example Output​

Multipart Upload Initialized:
Upload ID: 0192a7b8-c9d0-7000-8000-000000000001
Bucket: datasets
Key: large-archive.tar.gz
Recommended Part Size: 32.00 MiB
Max Parallel Parts: 4
Expires: 2026-10-08T12:00:00.000Z

3. liorans3 multipart status <uploadId>​

Inspects the status and verified uploaded parts of an active session.

Syntax​

liorans3 multipart status <uploadId>

Example Output​

Multipart Upload: 0192a7b8-c9d0-7000-8000-000000000001
Target: datasets/large-archive.tar.gz
State: in_progress
Received: 64.00 MiB (67108864 bytes)
Part Size: 32.00 MiB
Parts Count: 2
Expires: 2026-10-08T12:00:00.000Z

Uploaded Parts:
PART SIZE ETAG SHA-256
1 32.00 MiB "a1b2c3d4..." 9e8d7c6b5a4...
2 32.00 MiB "e5f6a7b8..." 1f2e3d4c5b6...

4. liorans3 multipart part <uploadId> <partNumber> <file>​

Uploads an individual chunk part to an active session:

liorans3 multipart part 0192a7b8-c9d0-7000-8000-000000000001 3 ./chunk_03.bin

Output:

Part 3 uploaded successfully (32.00 MiB, ETag: "f4e3d2c1...").

5. liorans3 multipart complete <uploadId>​

Finalizes, verifies, and atomically commits the multipart upload:

liorans3 multipart complete 0192a7b8-c9d0-7000-8000-000000000001

Output:

Multipart upload 'large-archive.tar.gz' completed successfully (2.40 GiB, SHA-256: 7f8a9b2c...).

6. liorans3 multipart abort <uploadId>​

Aborts an active session and removes temporary staged parts:

liorans3 multipart abort 0192a7b8-c9d0-7000-8000-000000000001

Output:

Multipart upload '0192a7b8-c9d0-7000-8000-000000000001' aborted.

7. liorans3 multipart resume <uploadId> <file>​

Resumes an interrupted session, querying verified parts and uploading only missing chunks:

liorans3 multipart resume 0192a7b8-c9d0-7000-8000-000000000001 ./dataset.tar.gz --concurrency 4