Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions java/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,16 @@ JVM engine connectors can be built using the Lance Java SDK. Here are some conne
* [Flink Lance connector](https://github.com/lancedb/lance-flink)
* [Trino Lance connector](https://github.com/lancedb/lance-trino)

## Configuration

Environment variables read by the JNI layer at runtime:

| Variable | Default | Effect |
|---|---|---|
| `LANCE_JNI_DISABLE_DEFAULT_REGISTRY_SHARING` | unset (sharing on) | Set to `1`/`true`/`yes` to give every default `Dataset.open` (no explicit `Session`) a fresh `ObjectStoreRegistry`. Disables the process-wide registry that coalesces concurrent cold builds for the same URI. |

Default-open paths share an `ObjectStoreRegistry` so concurrent opens against the same URI reuse one `ObjectStore` instead of each rebuilding the credential chain and HTTP client. Bare-URI opens (empty storage options, no provider, no namespace commit handler) collapse onto a single cache entry per URI: the first caller's resolved default credentials become the credentials used by every subsequent caller for the lifetime of that `ObjectStore`. Callers that need cross-tenant isolation under bare URIs should either pass an explicit `Session`, supply tenant-distinguishing storage options, or set the variable above to opt out entirely.

## Contributing

From the codebase dimension, the lance project is a multiple-lang project. All Java-related code is located in the `java` directory.
Expand Down
43 changes: 43 additions & 0 deletions java/lance-jni/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions java/lance-jni/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,14 @@ roaring = "0.11.4"
prost-types = "0.14.1"
chrono = "0.4.41"

[dev-dependencies]
# Test-only: parameterizes the `parse_disable_value` classification cases in
# src/blocking_dataset.rs. Matches the version the top-level workspace pins.
rstest = "0.26.1"
# Test-only: temp dir for the default-open registry integration test in
# src/blocking_dataset.rs. Matches the version the top-level workspace pins.
tempfile = "3"

[profile.dev]
debug = "line-tables-only"
incremental = false
Expand Down
Loading
Loading