Skip to content
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

[client-v2] Testing the JDBC driver #1902

Open
10 of 13 tasks
Tracked by #1929
Paultagoras opened this issue Nov 4, 2024 · 8 comments
Open
10 of 13 tasks
Tracked by #1929

[client-v2] Testing the JDBC driver #1902

Paultagoras opened this issue Nov 4, 2024 · 8 comments
Assignees

Comments

@Paultagoras
Copy link
Contributor

Paultagoras commented Nov 4, 2024

Phase 1 - Automated Connector Tests (ETA: 11/22)

Preview Give feedback
  1. Paultagoras

Phase 2 - Manual Connector Testing (ETA: 11/22)

Preview Give feedback

Phase 3 - Nice to have testing (ETA: 11/27)

Preview Give feedback
@Paultagoras Paultagoras added the bug label Nov 4, 2024
@PeaStew
Copy link

PeaStew commented Nov 7, 2024

missing the database parameter as per https://clickhouse.com/docs/en/integrations/tableau which means no default database is available for selection

@slvrtrn
Copy link

slvrtrn commented Dec 6, 2024

Metabase tests fail on the latest snapshot.
Somewhere in the Metabase internals there is autoCommit = false setting

clojure.lang.ExceptionInfo: Error loading data: INSERT FAILED: setAutoCommit = false not supported

this throws in v2:

@Override
public void setAutoCommit(boolean autoCommit) throws SQLException {
checkOpen();
if (!autoCommit) {
throw new SQLFeatureNotSupportedException("setAutoCommit = false not supported", ExceptionUtils.SQL_STATE_FEATURE_NOT_SUPPORTED);
}
}

IMO should be just ignored with no-op, cause many standard implementations will try to set these

@chernser
Copy link
Contributor

chernser commented Dec 6, 2024

@slvrtrn
In the new version we are trying to follow JDBC javadoc - if something is not implemented we are throwing exception.
So we have two options:

  • create a option flag to ignore unimplemented values - the fastest solution
  • implement simple "transaction" - however it will work only when we build SQL as string. In the future it will not work when we stream data to server (we are not going to support transactions very soon or emulate them on client side)

@GEORGE-BOAST
Copy link

missing the database parameter as per https://clickhouse.com/docs/en/integrations/tableau which means no default database is available for selection

What is the solution here? I am trying to setup tableau cloud (on desktop) to connect to my xxx database on clickhouse and no tables appear.

@mshustov
Copy link
Member

mshustov commented Dec 9, 2024

@GEORGE-BOAST what driver version do you use? Could you fill in a new bug report?

@GEORGE-BOAST
Copy link

do

I am using the latest JDBC driver with the latest version of tableau desktop.

I cannot connect using SSL, when not having said box checked, I can connect, however no tables show.

Example;

Code: 62. DB::Exception: Syntax error: failed at position 11 ('.'): .tree_lst;. Expected end of query. (SYNTAX_ERROR) (version 24.11.1.2557 (official build))
Unable to connect to the ClickHouse JDBC by ClickHouse, Inc. server “172.X.X.X”. Check that the server is running and that you have access privileges to the requested database.
Connector Class: clickhouse_jdbc, Version: 0.3.1
For support, contact ClickHouse, Inc..

@slvrtrn
Copy link

slvrtrn commented Dec 10, 2024

In the new version we are trying to follow JDBC javadoc - if something is not implemented we are throwing exception.
So we have two options:

So we have two options:

  • create a option flag to ignore unimplemented values - the fastest solution
  • implement simple "transaction" - however it will work only when we build SQL as string. In the future it will not work when we stream data to server (we are not going to support transactions very soon or emulate them on client side)

As a user, I think my preferred solution is no-op in case of unsupported standard things. So I guess option one is good.

@mshustov
Copy link
Member

Code: 62. DB::Exception: Syntax error: failed at position 11 ('.'): .tree_lst;. Expected end of query. (SYNTAX_ERROR) (version 24.11.1.2557 (official build))

AFAIK neither version of the driver modifies the query. please fill a bug report and include the failing query, which you can find in clickhouse system.query_log

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants