Files
lancedb/rust/lancedb
adenzhou1350 7a3709b376 fix(remote): preserve request IDs in multipart response errors (#4456)
Keep the request ID when a multipart create/complete response has a
missing or incorrectly typed `upload_id`/`version`. These errors
currently use an empty ID, unlike JSON parse errors, so callers lose the
ID needed to correlate the failed request.

Add six cases through `Table.add(...).write_parallelism(2).execute()`,
capturing the actual outgoing `x-request-id`: four missing/wrong-type
cases fail on unchanged main, while two invalid-JSON controls already
pass. After the fix all six pass, and all 15 multipart tests pass.

Native Linux validation (locked dependencies, `ci` profile):
- `cargo test --offline --profile ci --locked -p lancedb
--no-default-features --features remote --lib
remote::table::tests::test_multipart_write`: 15 passed.
- `cargo fmt --all -- --check`: passed.
- `cargo clippy --offline --profile ci --locked -p lancedb
--no-default-features --features remote --lib --tests -- -D warnings`:
passed.

The committed source bytes match the tested source. HTTP endpoints are
mocked; this does not claim a live Cloud or full-repository test run.
2026-10-23 02:45:02 +08:00
..

LanceDB Rust SDK

img Docs.rs

LanceDB Rust SDK, a serverless vector database.

Read more at: https://lancedb.com/

Tip

A transitive dependency of lancedb is lzma-sys, which uses dynamic linking by default. If you want to statically link lzma-sys, you should activate it's static feature by adding the following to your dependencies:

lzma-sys = { version = "*", features = ["static"] }