You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by "lidavidm (via GitHub)" <gi...@apache.org> on 2026/07/17 04:22:51 UTC
Re: [PR] feat(javascript): make driver optional when uri or profile is provided [arrow-adbc]
lidavidm commented on code in PR #4537:
URL: https://github.com/apache/arrow-adbc/pull/4537#discussion_r3600344982
##########
javascript/src/client.rs:
##########
@@ -87,34 +87,78 @@ impl AdbcDatabaseCore {
.profile_search_paths
.map(|paths| paths.into_iter().map(PathBuf::from).collect());
- let database_opts = opts.database_options.map(map_database_options);
-
- let database = if opts.driver.contains(':') {
- let provider = adbc_driver_manager::profile::FilesystemProfileProvider::new_with_search_paths(
- profile_search_paths,
- );
- // URI-style ("sqlite:file::memory:") or profile URI ("profile://my_profile")
- ManagedDatabase::from_uri_with_profile_provider(
- &opts.driver,
- entrypoint.as_deref(),
- version,
- load_flags,
- manifest_search_paths,
- provider,
- database_opts.into_iter().flatten(),
- )?
- } else {
- // Short name ("sqlite") or path ("/usr/lib/libadbc_driver_sqlite.so")
- let mut driver = ManagedDriver::load_from_name(
- &opts.driver,
- entrypoint.as_deref(),
- version,
- load_flags,
- manifest_search_paths,
- )?;
- match database_opts {
- Some(db_opts) => driver.new_database_with_opts(db_opts)?,
- None => driver.new_database()?,
+ let database = match opts.driver {
+ Some(ref driver) if driver.contains(':') => {
Review Comment:
I think in C++ we look for `://` (this does catch out `sqlite:` without the recent changes to also accept `sqlite://`). Wouldn't this catch Windows-style paths?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org