Skip to content
This repository was archived by the owner on Oct 10, 2025. It is now read-only.

Commit c6b30b9

Browse files
authored
Merge pull request #93 from zhicwu/develop
Release 2.0.01
2 parents 677aadb + a201ae4 commit c6b30b9

File tree

17 files changed

+90
-69
lines changed

17 files changed

+90
-69
lines changed

.github/workflows/build.yml

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@ on:
1919
- "misc/**"
2020

2121
jobs:
22-
build:
22+
java:
23+
name: "Build and verify Java code..."
2324
runs-on: ubuntu-latest
24-
2525
steps:
2626
- uses: actions/checkout@v2
2727
- name: Set up JDK 1.8
@@ -30,3 +30,28 @@ jobs:
3030
java-version: 1.8
3131
- name: Build with Maven
3232
run: mvn --batch-mode --update-snapshots verify
33+
34+
docker:
35+
name: "Build and verify Dockerfile..."
36+
runs-on: ubuntu-latest
37+
steps:
38+
- name: Checkout
39+
uses: actions/checkout@v2
40+
- name: Set up QEMU
41+
uses: docker/setup-qemu-action@v1
42+
- name: Set up Docker Buildx
43+
uses: docker/setup-buildx-action@v1
44+
- name: Build Default Docker Image
45+
uses: docker/build-push-action@v2
46+
with:
47+
context: .
48+
file: ./Dockerfile
49+
push: false
50+
tags: my/clickhouse-jdbc-bridge:latest
51+
- name: Build All-in-one Docker Image
52+
uses: docker/build-push-action@v2
53+
with:
54+
context: .
55+
file: ./all-in-one.Dockerfile
56+
push: false
57+
tags: my/clickhouse-jdbc-bridge:latest

.github/workflows/release.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ jobs:
3232
uses: actions/setup-java@v1
3333
with:
3434
java-version: 1.8
35+
- run: sed -i -e 's|^\( <version>\).*\(</version>\)$|\1${{ github.event.inputs.major }}.${{ github.event.inputs.minor }}.${{ github.event.inputs.patch }}\2|' pom.xml
3536
- name: Release Maven package
3637
uses: samuelmeuli/action-maven-publish@v1
3738
with:

Dockerfile

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,17 @@
1717
# KIND, either express or implied. See the License for the
1818
# specific language governing permissions and limitations
1919
# under the License.
20-
FROM adoptopenjdk/openjdk8-openj9:jre8u275-b01_openj9-0.23.0-ubuntu
20+
FROM adoptopenjdk/openjdk8-openj9:jre8u282-b08_openj9-0.24.0-ubuntu
2121

22-
ARG revision=2.0.0
22+
ARG revision=latest
2323
ARG repository=ClickHouse/clickhouse-jdbc-bridge
2424

2525
# Maintainer
2626
LABEL maintainer="zhicwu@gmail.com"
2727

2828
# Environment variables
2929
ENV JDBC_BRIDGE_HOME=/app JDBC_BRIDGE_VERSION=${revision} \
30-
JDBC_BRIDGE_REL_URL=https://github.com/${repository}/releases/download/v${revision}
30+
JDBC_BRIDGE_REL_URL=https://github.com/${repository}/releases/download
3131

3232
# Labels
3333
LABEL app_name="ClickHouse JDBC Bridge" app_version="$JDBC_BRIDGE_VERSION"
@@ -37,16 +37,19 @@ RUN apt-get update \
3737
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --allow-unauthenticated apache2-utils \
3838
apt-transport-https curl htop iftop iptraf iputils-ping jq lsof net-tools tzdata wget \
3939
&& apt-get clean \
40+
&& if [ "$revision" = "latest" ] ; then export JDBC_BRIDGE_VERSION=$(curl -s https://repo1.maven.org/maven2/ru/yandex/clickhouse/clickhouse-jdbc-bridge/maven-metadata.xml | grep '<latest>' | sed -e 's|^.*>\(.*\)<.*$|\1|'); else export JDBC_BRIDGE_VERSION=${revision}; fi \
41+
&& export JDBC_BRIDGE_REL_URL=$JDBC_BRIDGE_REL_URL/v$JDBC_BRIDGE_VERSION \
4042
&& wget -q -P $JDBC_BRIDGE_HOME $JDBC_BRIDGE_REL_URL/LICENSE $JDBC_BRIDGE_REL_URL/NOTICE \
41-
$JDBC_BRIDGE_REL_URL/clickhouse-jdbc-bridge-${revision}-shaded.jar \
43+
$JDBC_BRIDGE_REL_URL/clickhouse-jdbc-bridge-${JDBC_BRIDGE_VERSION}-shaded.jar \
44+
&& ln -s $JDBC_BRIDGE_HOME/clickhouse-jdbc-bridge-${JDBC_BRIDGE_VERSION}-shaded.jar $JDBC_BRIDGE_HOME/clickhouse-jdbc-bridge-shaded.jar \
4245
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
4346

4447
COPY --chown=root:root docker/ $JDBC_BRIDGE_HOME
4548

4649
RUN chmod +x $JDBC_BRIDGE_HOME/*.sh \
4750
&& mkdir -p $JDBC_BRIDGE_HOME/logs /usr/local/lib/java \
4851
&& ln -s $JDBC_BRIDGE_HOME/logs /var/log/clickhouse-jdbc-bridge \
49-
&& ln -s $JDBC_BRIDGE_HOME/clickhouse-jdbc-bridge-${revision}-shaded.jar \
52+
&& ln -s $JDBC_BRIDGE_HOME/clickhouse-jdbc-bridge-${JDBC_BRIDGE_VERSION}-shaded.jar \
5053
/usr/local/lib/java/clickhouse-jdbc-bridge-shaded.jar \
5154
&& ln -s $JDBC_BRIDGE_HOME /etc/clickhouse-jdbc-bridge
5255

README.md

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -96,31 +96,28 @@ JDBC bridge for ClickHouse®. It acts as a stateless proxy passing queries from
9696
Debian/Ubuntu
9797
```bash
9898
apt update && apt install -y procps wget
99-
export JDBC_BRIDGE_VERSION=2.0.0
100-
wget https://github.com/ClickHouse/clickhouse-jdbc-bridge/releases/download/v$JDBC_BRIDGE_VERSION/clickhouse-jdbc-bridge_$JDBC_BRIDGE_VERSION-1_all.deb
101-
apt install --no-install-recommends -f ./clickhouse-jdbc-bridge_$JDBC_BRIDGE_VERSION-1_all.deb
99+
wget https://github.com/ClickHouse/clickhouse-jdbc-bridge/releases/download/v2.0.1/clickhouse-jdbc-bridge_2.0.1-1_all.deb
100+
apt install --no-install-recommends -f ./clickhouse-jdbc-bridge_2.0.1-1_all.deb
102101
clickhouse-jdbc-bridge
103102
```
104103

105104
CentOS/RHEL
106105
```bash
107106
yum install -y wget
108-
export JDBC_BRIDGE_VERSION=2.0.0
109-
wget https://github.com/ClickHouse/clickhouse-jdbc-bridge/releases/download/v$JDBC_BRIDGE_VERSION/clickhouse-jdbc-bridge-$JDBC_BRIDGE_VERSION-1.noarch.rpm
110-
yum localinstall -y clickhouse-jdbc-bridge-$JDBC_BRIDGE_VERSION-1.noarch.rpm
107+
wget https://github.com/ClickHouse/clickhouse-jdbc-bridge/releases/download/v2.0.1/clickhouse-jdbc-bridge-2.0.1-1.noarch.rpm
108+
yum localinstall -y clickhouse-jdbc-bridge-2.0.1-1.noarch.rpm
111109
clickhouse-jdbc-bridge
112110
```
113111

114112
* Java CLI
115113

116114
```bash
117-
export JDBC_BRIDGE_VERSION=2.0.0
118-
wget https://github.com/ClickHouse/clickhouse-jdbc-bridge/releases/download/v$JDBC_BRIDGE_VERSION/clickhouse-jdbc-bridge-$JDBC_BRIDGE_VERSION-shaded.jar
115+
wget https://github.com/ClickHouse/clickhouse-jdbc-bridge/releases/download/v2.0.1/clickhouse-jdbc-bridge-2.0.1-shaded.jar
119116
# add named datasource
120117
wget -P config/datasources https://raw.githubusercontent.com/ClickHouse/clickhouse-jdbc-bridge/master/misc/quick-start/jdbc-bridge/config/datasources/ch-server.json
121118
# start jdbc bridge, and then issue below query in ClickHouse for testing
122119
# select * from jdbc('ch-server', 'select 1')
123-
java -jar clickhouse-jdbc-bridge-$JDBC_BRIDGE_VERSION-shaded.jar
120+
java -jar clickhouse-jdbc-bridge-2.0.1-shaded.jar
124121
```
125122

126123

@@ -267,7 +264,7 @@ Assuming you started a test environment using docker-compose, please refer to ex
267264
"drivers/mariadb",
268265
"D:\\drivers\\mariadb",
269266
"/mnt/d/drivers/mariadb",
270-
"https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/2.7.0/mariadb-java-client-2.7.0.jar"
267+
"https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/2.7.2/mariadb-java-client-2.7.2.jar"
271268
],
272269
"driverClassName": "org.mariadb.jdbc.Driver",
273270
...
@@ -330,16 +327,16 @@ cd clickhouse-jdbc-bridge
330327
# compile and run unit tests
331328
mvn -Prelease verify
332329
# release shaded jar, rpm and debian packages
333-
mvn -Prelease -Drevision=2.0.0 package
330+
mvn -Prelease package
334331
```
335332
336333
In order to build docker images:
337334
```bash
338335
git clone https://github.com/ClickHouse/clickhouse-jdbc-bridge.git
339336
cd clickhouse-jdbc-bridge
340-
docker build --squash --build-arg revision=2.0.0 -t my/clickhouse-jdbc-bridge .
337+
docker build -t my/clickhouse-jdbc-bridge .
341338
# or if you want to build the all-ine-one image
342-
docker build --squash --build-arg revision=20.9.3 -f all-in-one.Dockerfile -t my/clickhouse-all-in-one .
339+
docker build --build-arg revision=20.9.3 -f all-in-one.Dockerfile -t my/clickhouse-all-in-one .
343340
```
344341
345342
## Develop

all-in-one.Dockerfile

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ WORKDIR /app
3737

3838
RUN apt-get update \
3939
&& apt-get install -y --no-install-recommends dpkg fakeroot rpm \
40-
&& mvn -Prelease -DskipTests -Drevision=${revision} package
40+
&& mvn -Prelease -DskipTests package
4141

4242

4343
#
@@ -58,15 +58,13 @@ RUN apt-get update \
5858
&& apt-get clean \
5959
&& rm -rf /*.deb /var/lib/apt/lists/* /tmp/* /var/tmp/* \
6060
&& wget -q -P /etc/clickhouse-jdbc-bridge/drivers/clickhouse \
61-
https://repo1.maven.org/maven2/net/jpountz/lz4/lz4/1.3.0/lz4-1.3.0.jar \
62-
https://repo1.maven.org/maven2/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.jar \
63-
https://repo1.maven.org/maven2/ru/yandex/clickhouse/clickhouse-jdbc/0.2.4/clickhouse-jdbc-0.2.4-shaded.jar \
61+
https://repo1.maven.org/maven2/ru/yandex/clickhouse/clickhouse-jdbc/0.2.5/clickhouse-jdbc-0.2.5-shaded.jar \
6462
&& wget -q -P /etc/clickhouse-jdbc-bridge/drivers/mariadb \
65-
https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/2.7.1/mariadb-java-client-2.7.1.jar \
63+
https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/2.7.2/mariadb-java-client-2.7.2.jar \
6664
&& wget -q -P /etc/clickhouse-jdbc-bridge/drivers/mysql5 \
6765
https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.49/mysql-connector-java-5.1.49.jar \
6866
&& wget -q -P /etc/clickhouse-jdbc-bridge/drivers/mysql8 \
69-
https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.21/mysql-connector-java-8.0.21.jar \
67+
https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.23/mysql-connector-java-8.0.23.jar \
7068
&& wget -q -P /etc/clickhouse-jdbc-bridge/drivers/postgres \
7169
https://repo1.maven.org/maven2/org/postgresql/postgresql/42.2.18/postgresql-42.2.18.jar \
7270
&& sed -i -e 's|\(^[[:space:]]*\)\(exec.*clickhouse-server.*$\)|\1exec -c clickhouse-jdbc-bridge >/dev/null \&\n\1\2|' /entrypoint.sh \

docker/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ The latest tag points to the latest release from `master` branch. Branch tags li
1212
```bash
1313
docker run -d --name ch-jdbc-bridge -p9019:9019 \
1414
-e MAVEN_REPO_URL="https://repo1.maven.org/maven2" \
15-
-e JDBC_DRIVERS="org/mariadb/jdbc/mariadb-java-client/2.7.1/mariadb-java-client-2.7.1.jar,org/postgresql/postgresql/42.2.18/postgresql-42.2.18.jar" yandex/clickhouse-jdbc-bridge
15+
-e JDBC_DRIVERS="org/mariadb/jdbc/mariadb-java-client/2.7.2/mariadb-java-client-2.7.2.jar,org/postgresql/postgresql/42.2.18/postgresql-42.2.18.jar" yandex/clickhouse-jdbc-bridge
1616
```
1717
If you prefer to use JDBC drivers and named datasources on host, you can use the following commands:
1818
```bash
1919
wget -P drivers \
20-
https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/2.7.1/mariadb-java-client-2.7.1.jar \
20+
https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/2.7.2/mariadb-java-client-2.7.2.jar \
2121
https://repo1.maven.org/maven2/org/postgresql/postgresql/42.2.18/postgresql-42.2.18.jar
2222
wget -P datasources \
2323
https://raw.githubusercontent.com/ClickHouse/clickhouse-jdbc-bridge/master/misc/quick-start/jdbc-bridge/config/datasources/mariadb10.json \

docker/config/datasources/datasource.json.example

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55
"self"
66
],
77
"driverUrls": [
8-
"https://repo1.maven.org/maven2/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.jar",
9-
"https://repo1.maven.org/maven2/ru/yandex/clickhouse/clickhouse-jdbc/0.2.4/clickhouse-jdbc-0.2.4-shaded.jar"
8+
"https://repo1.maven.org/maven2/ru/yandex/clickhouse/clickhouse-jdbc/0.2.5/clickhouse-jdbc-0.2.5-shaded.jar"
109
],
1110
"driverClassName": "ru.yandex.clickhouse.ClickHouseDriver",
1211
"jdbcUrl": "jdbc:clickhouse://ch-server:8123/system?compress=false",

docker/config/datasources/script.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
"script": {
33
"type": "script",
44
"driverUrls": [
5-
"/d/Tools/groovy-3.0.1/lib",
6-
"!/d/Tools/groovy-3.0.1/lib/groovy-jaxb-3.0.1.jar",
7-
"D:/Tools/groovy-3.0.1/lib",
8-
"!D:/Tools/groovy-3.0.1/lib/groovy-jaxb-3.0.1.jar"
5+
"/d/Tools/groovy-3.0.7/lib",
6+
"!/d/Tools/groovy-3.0.7/lib/groovy-jaxb-3.0.7.jar",
7+
"D:/Tools/groovy-3.0.7/lib",
8+
"!D:/Tools/groovy-3.0.7/lib/groovy-jaxb-3.0.7.jar"
99
]
1010
}
1111
}

docker/docker-entrypoint.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ start_server() {
2121
fi
2222

2323
if [ "$(echo ${CUSTOM_DRIVER_LOADER:="true"} | tr '[:upper:]' '[:lower:]')" != "true" ]; then
24-
local classpath="./clickhouse-jdbc-bridge-$JDBC_BRIDGE_VERSION-shaded.jar:$(echo $(ls ${DRIVER_DIR:="drivers"}/*.jar) | tr ' ' ':'):."
24+
local classpath="./clickhouse-jdbc-bridge-shaded.jar:$(echo $(ls ${DRIVER_DIR:="drivers"}/*.jar) | tr ' ' ':'):."
2525
java -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle \
2626
-Xdump:none -Xdump:tool:events=systhrow+throw,filter=*OutOfMemoryError,exec="kill -9 %pid" \
2727
-Dlog4j.configuration=file:///$JDBC_BRIDGE_HOME/log4j.properties -Dnashorn.args=--language=es6 \
@@ -30,7 +30,7 @@ start_server() {
3030
java -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle \
3131
-Xdump:none -Xdump:tool:events=systhrow+throw,filter=*OutOfMemoryError,exec="kill -9 %pid" \
3232
-Dlog4j.configuration=file:///$JDBC_BRIDGE_HOME/log4j.properties -Dnashorn.args=--language=es6 \
33-
${JDBC_BRIDGE_JVM_OPTS:=""} -jar clickhouse-jdbc-bridge-$JDBC_BRIDGE_VERSION-shaded.jar
33+
${JDBC_BRIDGE_JVM_OPTS:=""} -jar clickhouse-jdbc-bridge-shaded.jar
3434
fi
3535
}
3636

misc/perf-test/jdbc-bridge/config/datasources/mariadb.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"$schema": "../../../../../docker/config/datasource.jschema",
33
"mariadb": {
44
"driverUrls": [
5-
"https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/2.7.0/mariadb-java-client-2.7.0.jar"
5+
"https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/2.7.2/mariadb-java-client-2.7.2.jar"
66
],
77
"driverClassName": "org.mariadb.jdbc.Driver",
88
"jdbcUrl": "jdbc:mariadb://mariadb:3306/test?useSSL=false&useCompression=false&rewriteBatchedStatements=true",

0 commit comments

Comments
 (0)