mirror of
https://github.com/lancedb/lancedb.git
synced 2026-11-14 14:46:53 +00:00
Adds `Table::get_lsm_write_spec` returning `Option<LsmWriteSpec>`, the read counterpart to `set_lsm_write_spec` / `unset_lsm_write_spec`. - Rust core: `NativeTable` reconstructs the spec from the MemWAL index details (`mem_wal_index_details`), resolving the shard column via the dataset schema. Read-only, so unaffected by describe_indices filtering. - Remote: `RemoteTable` reads the `__lance_mem_wal` system index via `index/list` with `include_system: true` (kept out of the curated `list_indices` surface) and parses its `details` JSON, using the server-resolved `column` name. - Python and TypeScript bindings, sync + async, with round-trip tests. The remote path depends on lance emitting the resolved shard column name in the MemWAL index details JSON, and on the server honoring `include_system` on `index/list`. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
LanceDB JavaScript SDK
A JavaScript library for LanceDB.
Installation
npm install @lancedb/lancedb
This will download the appropriate native library for your platform. We currently support:
- Linux (x86_64 and aarch64 on glibc and musl)
- MacOS (Intel and ARM/M1/M2)
- Windows (x86_64 and aarch64)
Usage
Basic Example
import * as lancedb from "@lancedb/lancedb";
const db = await lancedb.connect("data/sample-lancedb");
const table = await db.createTable("my_table", [
{ id: 1, vector: [0.1, 1.0], item: "foo", price: 10.0 },
{ id: 2, vector: [3.9, 0.5], item: "bar", price: 20.0 },
]);
const results = await table.vectorSearch([0.1, 0.3]).limit(20).toArray();
console.log(results);
The quickstart contains more complete examples.
Development
See CONTRIBUTING.md for information on how to contribute to LanceDB.