Skip to content

Commit 8f4b5fa

Browse files
committed
Merge branch 'main' into v2_numbers_conversion
2 parents 5cb801c + 3b831cd commit 8f4b5fa

File tree

37 files changed

+890
-204
lines changed

37 files changed

+890
-204
lines changed

README.md

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,9 @@ Nightly Builds: https://s01.oss.sonatype.org/content/repositories/snapshots/com/
6868

6969
### Artifacts
7070

71-
| Component | Maven Central Link |
72-
|---------------------------|--------------------|
73-
| ClickHouse Java Client V2 | [![Maven Central](https://img.shields.io/maven-central/v/com.clickhouse/client-v2)](https://mvnrepository.com/artifact/com.clickhouse/client-v2) |
71+
| Component | Maven Central Link | Javadoc Link |
72+
|---------------------------|--------------------|--------------|
73+
| ClickHouse Java Client V2 | [![Maven Central](https://img.shields.io/maven-central/v/com.clickhouse/client-v2)](https://mvnrepository.com/artifact/com.clickhouse/client-v2) | [![javadoc](https://javadoc.io/badge2/com.clickhouse/client-v2/javadoc.svg)](https://javadoc.io/doc/com.clickhouse/client-v2) |
7474

7575
### Compatibility
7676

@@ -194,10 +194,13 @@ Client client = new Client.Builder()
194194

195195
### Artifacts
196196

197-
| Component | Maven Central Link |
198-
|-----------|--------------------|
199-
| ClickHouse Java HTTP Client | [![Maven Central](https://img.shields.io/maven-central/v/com.clickhouse/clickhouse-client)](https://mvnrepository.com/artifact/com.clickhouse/clickhouse-http-client) |
200-
| ClickHouse JDBC Driver | [![Maven Central](https://img.shields.io/maven-central/v/com.clickhouse/clickhouse-jdbc)](https://mvnrepository.com/artifact/com.clickhouse/clickhouse-jdbc) |
197+
| Component | Maven Central Link | Javadoc Link |
198+
|-----------|--------------------|--------------|
199+
| ClickHouse Java Unified Client | [![Maven Central](https://img.shields.io/maven-central/v/com.clickhouse/clickhouse-client)](https://mvnrepository.com/artifact/com.clickhouse/clickhouse-client) | [![javadoc](https://javadoc.io/badge2/com.clickhouse/clickhouse-client/javadoc.svg)](https://javadoc.io/doc/com.clickhouse/clickhouse-client) |
200+
| ClickHouse Java HTTP Client | [![Maven Central](https://img.shields.io/maven-central/v/com.clickhouse/clickhouse-http-client)](https://mvnrepository.com/artifact/com.clickhouse/clickhouse-http-client) | [![javadoc](https://javadoc.io/badge2/com.clickhouse/clickhouse-http-client/javadoc.svg)](https://javadoc.io/doc/com.clickhouse/clickhouse-http-client) |
201+
| ClickHouse JDBC Driver | [![Maven Central](https://img.shields.io/maven-central/v/com.clickhouse/clickhouse-jdbc)](https://mvnrepository.com/artifact/com.clickhouse/clickhouse-jdbc) | [![javadoc](https://javadoc.io/badge2/com.clickhouse/clickhouse-jdbc/javadoc.svg)](https://javadoc.io/doc/com.clickhouse/clickhouse-jdbc) |
202+
| ClickHouse R2DBC Driver | [![Maven Central](https://img.shields.io/maven-central/v/com.clickhouse/clickhouse-r2dbc)](https://mvnrepository.com/artifact/com.clickhouse/clickhouse-r2dbc) | [![javadoc](https://javadoc.io/badge2/com.clickhouse/clickhouse-r2dbc/javadoc.svg)](https://javadoc.io/doc/com.clickhouse/clickhouse-r2dbc) |
203+
| ClickHouse gRPC Driver | [![Maven Central](https://img.shields.io/maven-central/v/com.clickhouse/clickhouse-grpc-client)](https://mvnrepository.com/artifact/com.clickhouse/clickhouse-grpc-client) | [![javadoc](https://javadoc.io/badge2/com.clickhouse/clickhouse-jdbc/javadoc.svg)](https://javadoc.io/doc/com.clickhouse/clickhouse-grpc-client) | [![javadoc](https://javadoc.io/badge2/com.clickhouse/clickhouse-grpc-client/javadoc.svg)](https://javadoc.io/doc/com.clickhouse/clickhouse-grpc-client) |
201204

202205

203206
### Features

clickhouse-client/src/main/java/com/clickhouse/client/ClickHouseClient.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@
4040
import com.clickhouse.data.ClickHouseValue;
4141
import com.clickhouse.data.ClickHouseValues;
4242
import com.clickhouse.data.ClickHouseWriter;
43+
import com.clickhouse.logging.Logger;
44+
import com.clickhouse.logging.LoggerFactory;
4345

4446
/**
4547
* A unified interface defines Java client for ClickHouse. A client can only
@@ -56,6 +58,7 @@
5658
* implementation properly in runtime.
5759
*/
5860
public interface ClickHouseClient extends AutoCloseable {
61+
Logger LOG = LoggerFactory.getLogger(ClickHouseClient.class);
5962

6063
/**
6164
* Returns a builder for creating a new client.
@@ -959,8 +962,8 @@ default boolean ping(ClickHouseNode server, int timeout) {
959962
.get(timeout, TimeUnit.MILLISECONDS)) {
960963
return resp != null;
961964
} catch (Exception e) {
962-
// ignore
963-
e.printStackTrace();
965+
LOG.debug("Failed to connect to the server", e);
966+
return false;
964967
}
965968
}
966969

clickhouse-client/src/test/resources/README.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,11 @@ openssl x509 -req -in server.csr -CA myCA.crt -CAkey myCA.key -CAcreateserial -o
1818
openssl req -nodes -subj "/CN=me" -newkey rsa:2048 -keyout client.key -out client.csr
1919
openssl x509 -req -in client.csr -out client.crt -CAcreateserial -CA myCA.crt -CAkey myCA.key -days 36500
2020
```
21+
22+
### Some_user
23+
24+
```bash
25+
openssl req -nodes -subj "/CN=some_user" -newkey rsa:2048 -keyout some_user.key -out some_user.csr
26+
openssl x509 -req -in some_user.csr -out some_user.crt -CAcreateserial -CA marsnet_ca.crt -CAkey marsnet_ca.key -days 36500
27+
28+
```
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIICtDCCAZwCFBbI6UQK2g1r8o4XRXu+9wvQBHmnMA0GCSqGSIb3DQEBCwUAMBcx
3+
FTATBgNVBAMMDGxvY2FsaG9zdCBDQTAgFw0yNDEwMTAxNjM3MzhaGA8yMTI0MDkx
4+
NjE2MzczOFowFDESMBAGA1UEAwwJc29tZV91c2VyMIIBIjANBgkqhkiG9w0BAQEF
5+
AAOCAQ8AMIIBCgKCAQEA68bBZlvBT64suwLa61eob9roTVXlJQmB9tGvX2cnJacP
6+
NBx2h6W8Ow43doRLBRt32SopV06O1i2c0L84pRoliJcGrUhKyxAsVxVv11mFd4qg
7+
962TeYe3VawSKK2w83GNfVhjQFwuNEDuzJT0I7J0jH/uNclMxAtFZNkKVMA2GOK2
8+
c3Pib8zCmqITWAX5XXWUUvS0LWsASaBAEVh4R7StYbDl0L3VeiHCw6fKpdevVfw5
9+
eDb+KuwMUOCPak0v31izEsXtcAyc7hxEZLfUMA+00zAdUENTC38GOJNTqirg0YmD
10+
+wxPdp3quWwkF/b831UTczAHkK7GP3swPjfciMN8nwIDAQABMA0GCSqGSIb3DQEB
11+
CwUAA4IBAQB+1poCA9p/XyKf5jxnAkaZQzoRW+fNqZvz8Eld2gGLqw7ZZUiBW6zo
12+
d4aCAeuNehw5zJEOf1ew5EZzdWYRdxXUarjs3HOSQalfYTS8HqNI19sgWYD6Zcx+
13+
sygJqswtplvPAB6phk9zyhQDLFNuJ8dp28xRgGuywYtVMnvLG1wapPf/fnqkRcOW
14+
yTBS4BBvtmzKPzMMZl/qB4Ol/STgVphceMFmI71HQQFUPb56E5tAQ+m3fezjdAJ2
15+
gZ+/LsApHLwhEV0ZGyIe/MNx0nDrkfWYWa7BsqvG6uuxyPXxgXSQofNjJN+RahRm
16+
oHREhAYRL40BS1F20aLRFRupzLJngLBh
17+
-----END CERTIFICATE-----
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
-----BEGIN CERTIFICATE REQUEST-----
2+
MIICWTCCAUECAQAwFDESMBAGA1UEAwwJc29tZV91c2VyMIIBIjANBgkqhkiG9w0B
3+
AQEFAAOCAQ8AMIIBCgKCAQEA68bBZlvBT64suwLa61eob9roTVXlJQmB9tGvX2cn
4+
JacPNBx2h6W8Ow43doRLBRt32SopV06O1i2c0L84pRoliJcGrUhKyxAsVxVv11mF
5+
d4qg962TeYe3VawSKK2w83GNfVhjQFwuNEDuzJT0I7J0jH/uNclMxAtFZNkKVMA2
6+
GOK2c3Pib8zCmqITWAX5XXWUUvS0LWsASaBAEVh4R7StYbDl0L3VeiHCw6fKpdev
7+
Vfw5eDb+KuwMUOCPak0v31izEsXtcAyc7hxEZLfUMA+00zAdUENTC38GOJNTqirg
8+
0YmD+wxPdp3quWwkF/b831UTczAHkK7GP3swPjfciMN8nwIDAQABoAAwDQYJKoZI
9+
hvcNAQELBQADggEBAA6cpW7rdV0a8FDxEBfZoStJPEVUisqS5pUT43UjFJ7M55kC
10+
LGQ9Vl2Ua0nA4BwX5Le/IWVwwnhnnIJWvoPEbka9TWBVGujOPvt/WwBbEN2yHgGD
11+
QgFrIq/zOaFVj3J3EuJtIXL2jOylDK14j+2k4MN4OJobVtQhyUHpmRTPgq4EVJIw
12+
/PU6Lltgr2V4pTs3m9Ey2pIHF04HQIzr6Tt6MRJkKGEYWvOZlYuCbXA5bPLMyq5g
13+
rs0kC1DMF5C3VsBND8oGQt0ULbc2AQy6AFJegdD/ZT+d4eeh+ejymc0nmB+kbxaM
14+
tAxp2yTsRKUsGu7TBeMY1DxoP1xG5lAHkGznESg=
15+
-----END CERTIFICATE REQUEST-----
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDrxsFmW8FPriy7
3+
AtrrV6hv2uhNVeUlCYH20a9fZyclpw80HHaHpbw7Djd2hEsFG3fZKilXTo7WLZzQ
4+
vzilGiWIlwatSErLECxXFW/XWYV3iqD3rZN5h7dVrBIorbDzcY19WGNAXC40QO7M
5+
lPQjsnSMf+41yUzEC0Vk2QpUwDYY4rZzc+JvzMKaohNYBflddZRS9LQtawBJoEAR
6+
WHhHtK1hsOXQvdV6IcLDp8ql169V/Dl4Nv4q7AxQ4I9qTS/fWLMSxe1wDJzuHERk
7+
t9QwD7TTMB1QQ1MLfwY4k1OqKuDRiYP7DE92neq5bCQX9vzfVRNzMAeQrsY/ezA+
8+
N9yIw3yfAgMBAAECggEAG+dVD976al/ehbAepkKkub7fxk33mrdc17qqNYbDlcux
9+
2297lwMw2zu2qa1EzvvDZoKnC4ujEPWrUkiHP4Ga1pGqeyCL+tX/rBC/60Mk2L3M
10+
iMjUpB9BPdTpqJch0uCUp7R/DpNk7nnkKSHUdlMSQxHdkyUEk6ESheRqj2wuGtSj
11+
zVjXqUQa1yUiD1RZsg+o1v0Jk1bPvljMAblWslD4fBicX82MslExkuG4Kv411hss
12+
EBfkbGAQAAVHGiQijaiJ1nuwuiiqHNgaNRUZSqnIZm6+TGCbCDbXjzRIVBzMEvfd
13+
kB1DmpmxpzsVMDN6CK+RSpZXOgq2yTwcYAAbR5NHUQKBgQD/87ZGygLCHxzlj7T6
14+
MpinZq8QEoB4OCqPn8gSvWI237U1Kr32KxjPHSHBu5DPDPNy6bf/upha3kqJ+53c
15+
KVy3vZ9rEfkkXO9+5lNmlRWzG3+2TavH0SuihMQa1rK1aReyaDNG4xN8l9JxrVjx
16+
iKo/lTdBKpSZjxC11mbbWBTPEQKBgQDr0hMoxazSMcCxYO2WXYVejVyiEueoQqSQ
17+
BSDBqRKbv0+Gt5geM1dPxInRYCPJDhzgTbTvp33NSnl9LkhIBy/g2Z/jKZxxQB8f
18+
LQiN+yoja6kYTagBfogCLHObdPl/VV5/hBEaffeM94KLwGfOxGXbWUzA/sdoHjxc
19+
EcD/ncrwrwKBgQDw3H7WxPmthiviV8cegAip1/a8cDzXZTugJuPXxsKrEwBqxQs4
20+
ojvZg/elYYYXYn+izxBpJkaDlJaenNtkOMRY4Kgp0SMcthxm1gb8DSX7g9A+VX9n
21+
LY8bhEcrXomUMA6txGMkvUI0SIcwlMmTmmFkLl5uA80NaNV32Qi4N351kQKBgQCp
22+
/Ic1B7D430ZAVldM4WMG8i1I4wm73zYSXq/rCT3RqQjhWiw78NRKOqkBlSSWhCbK
23+
hRkc+4YSWlHSq28NBKk9koHPVKphdFA6v9J/zgHlAHEmhKvLT/MoZfR7pclHQTlZ
24+
/8/4Yb71DWE77dimUin+AJP0NnN1GP53e5C8cXjdHwKBgCeCtZtNpj0O2dt4s6CC
25+
392etUExPNvV5vyLfAlgTGI9SDPHApxomeu4wmsdBn8pIKY4apdP7MDXRgeU85Ql
26+
DNOFDngldtgzvTS7PjyJ3JORqDdzidKnmQ0YLlLvzdoD1xQtI+YIkZoMB6dgugfC
27+
tG/1B7aaPnbRlHz98DJBpEk4
28+
-----END PRIVATE KEY-----

clickhouse-http-client/pom.xml

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,19 +40,14 @@
4040
<dependency>
4141
<groupId>org.apache.httpcomponents.client5</groupId>
4242
<artifactId>httpclient5</artifactId>
43-
<exclusions>
44-
<exclusion>
45-
<groupId>org.apache.httpcomponents.core5</groupId>
46-
<artifactId>httpcore5</artifactId>
47-
</exclusion>
48-
</exclusions>
49-
<optional>true</optional>
43+
<version>${apache.httpclient.version}</version>
5044
</dependency>
5145
<dependency>
5246
<groupId>org.apache.httpcomponents.core5</groupId>
5347
<artifactId>httpcore5</artifactId>
54-
<optional>true</optional>
48+
<version>${apache.httpclient.version}</version>
5549
</dependency>
50+
5651
<dependency>
5752
<groupId>org.brotli</groupId>
5853
<artifactId>dec</artifactId>

clickhouse-http-client/src/main/java/com/clickhouse/client/http/ApacheHttpConnectionImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -194,11 +194,11 @@ private void setHeaders(HttpRequest request, Map<String, String> headers) {
194194
}
195195

196196
private void checkResponse(ClickHouseConfig config, CloseableHttpResponse response) throws IOException {
197-
if (response.getCode() == HttpURLConnection.HTTP_OK) {
197+
final Header errorCode = response.getFirstHeader(ClickHouseHttpProto.HEADER_EXCEPTION_CODE);
198+
if (response.getCode() == HttpURLConnection.HTTP_OK && errorCode == null) {
198199
return;
199200
}
200201

201-
final Header errorCode = response.getFirstHeader(ClickHouseHttpProto.HEADER_EXCEPTION_CODE);
202202
final Header serverName = response.getFirstHeader(ClickHouseHttpProto.HEADER_SRV_DISPLAY_NAME);
203203
if (response.getEntity() == null) {
204204
throw new ConnectException(

clickhouse-http-client/src/main/java/com/clickhouse/client/http/ClickHouseHttpProto.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,12 @@ public class ClickHouseHttpProto {
4646

4747
public static final String HEADER_DB_PASSWORD = "X-ClickHouse-Key";
4848

49+
public static final String HEADER_SSL_CERT_AUTH = "x-clickhouse-ssl-certificate-auth";
50+
4951
/**
5052
* Query parameter to specify the query ID.
5153
*/
5254
public static final String QPARAM_QUERY_ID = "query_id";
5355

56+
public static final String QPARAM_ROLE = "role";
5457
}

clickhouse-jdbc/pom.xml

Lines changed: 2 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -47,26 +47,7 @@
4747
<artifactId>commons-compress</artifactId>
4848
<optional>true</optional>
4949
</dependency>
50-
<dependency>
51-
<groupId>org.apache.httpcomponents.client5</groupId>
52-
<artifactId>httpclient5</artifactId>
53-
<exclusions>
54-
<exclusion>
55-
<groupId>org.apache.httpcomponents.core5</groupId>
56-
<artifactId>httpcore5</artifactId>
57-
</exclusion>
58-
<exclusion>
59-
<groupId>org.slf4j</groupId>
60-
<artifactId>slf4j-api</artifactId>
61-
</exclusion>
62-
</exclusions>
63-
<optional>true</optional>
64-
</dependency>
65-
<dependency>
66-
<groupId>org.apache.httpcomponents.core5</groupId>
67-
<artifactId>httpcore5</artifactId>
68-
<optional>true</optional>
69-
</dependency>
50+
7051
<dependency>
7152
<groupId>org.lz4</groupId>
7253
<artifactId>lz4-pure-java</artifactId>
@@ -145,7 +126,7 @@
145126
<dependency>
146127
<groupId>com.clickhouse</groupId>
147128
<artifactId>clickhouse-http-client</artifactId>
148-
<version>0.7.0-SNAPSHOT</version>
129+
<version>${revision}</version>
149130
<scope>compile</scope>
150131
</dependency>
151132
</dependencies>

0 commit comments

Comments
 (0)