-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
improve array listing #9
Conversation
3182a5d
to
b3d9822
Compare
b3d9822
to
13a085c
Compare
// public arrays | ||
if (listPublicArrays) { | ||
try { | ||
ArrayBrowserData resultPublic = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we perhaps run the listings async in the backgroup to parallelize?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you mean, load the three array categories in a different thread each and then join?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah I was thinking we could make the listing request concurrent in threads to reduce the latency.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes absolutely, I will keep working on the PR
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
13a085c
to
7daddc8
Compare
6db4cdc
to
f8f3404
Compare
@@ -169,15 +180,15 @@ public String getString(String columnLabel) throws SQLException { | |||
|
|||
switch (columnLabel) { | |||
case "TABLE_NAME": | |||
return currentArray.getTiledbUri(); | |||
return "tiledb://" + currentArray.getNamespace() + "/" + currentArray.getName(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Names aren't guaranteed to be unique, is this just for display?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is just for display yes, but when the user asks for a preview the BI tools use this name to query the array. I have thought of a workaround though which I will implement first thing tomorrow.
f8f3404
to
e748189
Compare
To solve the name uniqueness problem, all arrays are now listed with their TileDB URI and namespace/name like this:
Whenever the JDBC driver is given such a pattern it will only use the URI with the UUID. This is achieved by using the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work!
This pull request has been linked to Shortcut Story #33884: Listing of the arrays when using the JDBC driver in a BI tool is incomplete.. |
This PR will improve the way the JDBC driver lists arrays. [sc-33884]