Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
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
Prev Previous commit
Upgrade ClickHouse JDBC driver from 0.3.2 to 0.9.6
The old driver (ru.yandex.clickhouse:clickhouse-jdbc:0.3.2) failed to
decompress error responses from the server, throwing
"Magic is not correct" IOException instead of reporting the actual
ClickHouse error message. This caused SQLancer to treat expected errors
(like ILLEGAL_TYPE_OF_ARGUMENT) as assertion failures, because the
JDBC exception message didn't contain the expected error substrings.

Changes:
- Update Maven dependency from ru.yandex.clickhouse:clickhouse-jdbc:0.3.2
  to com.clickhouse:clickhouse-jdbc:0.9.6 (with "all" classifier)
- Update all imports from com.clickhouse.client.ClickHouseDataType
  to com.clickhouse.data.ClickHouseDataType (package was renamed)
- Add "Magic is not correct" to expected errors as safety net

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
  • Loading branch information
alexey-milovidov and claude committed Mar 2, 2026
commit 918e5132a336fbb6415a1b5d43773e00b5d52b3c
5 changes: 3 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -333,9 +333,10 @@
<version>2.0.6</version>
</dependency>
<dependency>
<groupId>ru.yandex.clickhouse</groupId>
<groupId>com.clickhouse</groupId>
<artifactId>clickhouse-jdbc</artifactId>
<version>0.3.2</version>
<version>0.9.6</version>
<classifier>all</classifier>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
Expand Down
5 changes: 4 additions & 1 deletion src/sqlancer/clickhouse/ClickHouseErrors.java
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,10 @@ public static List<String> getExpectedExpressionErrors() {
// AST generation logic
"MULTIPLE_EXPRESSIONS_FOR_ALIAS", "AMBIGUOUS_IDENTIFIER", // https://github.com/ClickHouse/ClickHouse/issues/45389
"AMBIGUOUS_COLUMN_NAME", // same https://github.com/ClickHouse/ClickHouse/issues/45389
"No equality condition found in JOIN ON expression", "Cannot parse number with multiple sign");
"No equality condition found in JOIN ON expression", "Cannot parse number with multiple sign",

// JDBC driver may fail to decompress error responses under certain conditions
"Magic is not correct");
}

public static void addExpectedExpressionErrors(ExpectedErrors errors) {
Expand Down
2 changes: 1 addition & 1 deletion src/sqlancer/clickhouse/ClickHouseSchema.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
import java.util.List;
import java.util.Map;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.Randomly;
import sqlancer.SQLConnection;
Expand Down
2 changes: 1 addition & 1 deletion src/sqlancer/clickhouse/ast/ClickHouseAggregate.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import java.util.List;
import java.util.stream.Collectors;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.Randomly;
import sqlancer.clickhouse.ClickHouseSchema;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package sqlancer.clickhouse.ast;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.LikeImplementationHelper;
import sqlancer.Randomly;
Expand Down
2 changes: 1 addition & 1 deletion src/sqlancer/clickhouse/ast/ClickHouseCast.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import java.util.Optional;
import java.util.regex.Pattern;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.clickhouse.ast.constant.ClickHouseCreateConstant;

Expand Down
2 changes: 1 addition & 1 deletion src/sqlancer/clickhouse/ast/ClickHouseCastOperation.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package sqlancer.clickhouse.ast;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.clickhouse.ClickHouseSchema.ClickHouseLancerDataType;

Expand Down
2 changes: 1 addition & 1 deletion src/sqlancer/clickhouse/ast/ClickHouseConstant.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package sqlancer.clickhouse.ast;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.clickhouse.ast.constant.ClickHouseCreateConstant;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package sqlancer.clickhouse.ast;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.Randomly;
import sqlancer.clickhouse.ast.constant.ClickHouseCreateConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.clickhouse.ast.ClickHouseConstant;
import sqlancer.clickhouse.ast.ClickHouseExpression;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.clickhouse.ast.ClickHouseConstant;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.clickhouse.ast.ClickHouseConstant;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package sqlancer.clickhouse.ast.constant;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.clickhouse.ast.ClickHouseConstant;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.math.BigInteger;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.IgnoreMeException;
import sqlancer.clickhouse.ast.ClickHouseConstant;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import java.util.stream.Collectors;
import java.util.stream.IntStream;

import com.clickhouse.client.ClickHouseDataType;
import com.clickhouse.data.ClickHouseDataType;

import sqlancer.Randomly;
import sqlancer.clickhouse.ClickHouseProvider.ClickHouseGlobalState;
Expand Down
Loading