Skip to content

Commit fe7d80b

Browse files
committed
Resolved Merge Conflicts
2 parents 2a5438c + 043d82a commit fe7d80b

File tree

498 files changed

+11833
-1837
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

498 files changed

+11833
-1837
lines changed

.github/workflows/bugCatcher.yml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,6 @@ jobs:
3030
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
3131
restore-keys: ${{ runner.os }}-m2
3232

33-
- name: Build with Maven
34-
run: mvn -B package --file pom.xml
35-
3633
- name: Set up constants
3734
env:
3835
DATABRICKS_HOST: ${{ secrets.DATABRICKS_HOST }}
@@ -53,4 +50,4 @@ jobs:
5350
DATABRICKS_HTTP_PATH: ${{ env.DATABRICKS_HTTP_PATH }}
5451
DATABRICKS_TOKEN: ${{ env.DATABRICKS_TOKEN }}
5552
DATABRICKS_USER: ${{ env.DATABRICKS_USER }}
56-
DATABRICKS_JDBC_M2M_URL: ${{ env.DATABRICKS_JDBC_M2M_URL }}
53+
DATABRICKS_JDBC_M2M_URL: ${{ env.DATABRICKS_JDBC_M2M_URL }}

.github/workflows/prCheck.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,10 +85,9 @@ jobs:
8585
run: |
8686
BRANCH_COVERAGE=$(cat coverage.txt)
8787
echo "Branch Coverage: $BRANCH_COVERAGE%"
88-
if (( $(echo "$BRANCH_COVERAGE < 80" | bc -l) )); then
89-
#TODO: Get the coverage back to 85%
90-
echo "Coverage is less than 80%"
88+
if (( $(echo "$BRANCH_COVERAGE < 84" | bc -l) )); then
89+
echo "Coverage is less than 84%"
9190
exit 1
9291
else
93-
echo "Coverage is equal to or greater than 85%"
92+
echo "Coverage is equal to or greater than 84%"
9493
fi

.github/workflows/release.yml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
name: Release
2+
on:
3+
push:
4+
tags:
5+
- 'v*'
6+
workflow_dispatch:
7+
8+
jobs:
9+
publish:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: Checkout
13+
uses: actions/checkout@v2
14+
15+
- name: Set up Java for publishing to Maven Central Repository
16+
uses: actions/setup-java@v3
17+
env:
18+
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
19+
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
20+
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
21+
with:
22+
java-version: 11
23+
server-id: ossrh
24+
distribution: "adopt"
25+
server-username: OSSRH_USERNAME
26+
server-password: OSSRH_PASSWORD
27+
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
28+
gpg-passphrase: GPG_PASSPHRASE
29+
30+
- name: Publish to the Maven Central Repository
31+
run: mvn -Prelease --batch-mode deploy
32+
env:
33+
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
34+
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
35+
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
36+
37+
- name: Create GitHub release
38+
uses: softprops/action-gh-release@v1
39+
with:
40+
files: target/*.jar

.github/workflows/runBenchmarks.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,11 +65,6 @@ jobs:
6565
echo "DATABRICKS_DOGFOOD_HOST=${DATABRICKS_DOGFOOD_HOST}" >> $GITHUB_ENV
6666
echo "DATABRICKS_DOGFOOD_TOKEN=${DATABRICKS_DOGFOOD_TOKEN}" >> $GITHUB_ENV
6767
echo "DATABRICKS_DOGFOOD_HTTP_PATH=${DATABRICKS_DOGFOOD_HTTP_PATH}" >> $GITHUB_ENV
68-
69-
70-
- name: Build with Maven
71-
run: mvn -B package --file pom.xml
72-
7368
7469
- name: Run Benchmark Tests
7570
run: |

.github/workflows/runIntegrationTests.yml

Lines changed: 18 additions & 113 deletions
Original file line numberDiff line numberDiff line change
@@ -2,135 +2,40 @@ name: Integration Tests Workflow
22

33
on:
44
push:
5-
branches: [ main, benchmarking-branch ]
5+
branches: [main, benchmarking-branch]
66
pull_request:
77
types: [opened, synchronize, reopened]
8-
branches: [ main, benchmarking-branch ]
8+
branches: [main, benchmarking-branch]
99
workflow_dispatch:
1010

1111
jobs:
1212
build-and-test:
1313
name: Build and Run Integration Tests
1414
runs-on: ubuntu-latest
1515
environment: azure-prod
16+
strategy:
17+
matrix:
18+
include:
19+
- test-command: mvn -B compile test -Dtest=*IntegrationTests
20+
token-secret: DATABRICKS_TOKEN
21+
use-thrift-client: 'false'
22+
- test-command: mvn -B compile test -Dtest=**/fakeservice/tests/MultiChunkExecutionIntegrationTests.java,**/fakeservice/tests/ConnectionIntegrationTests.java
23+
token-secret: THRIFT_DATABRICKS_TOKEN
24+
use-thrift-client: 'true'
1625
steps:
17-
- name: Checkout code
18-
uses: actions/checkout@v2
19-
20-
- name: Set up JDK 21
21-
uses: actions/setup-java@v2
22-
with:
23-
java-version: 21
24-
distribution: 'adopt'
25-
26-
- name: Cache Maven packages
27-
uses: actions/cache@v2
28-
with:
29-
path: ~/.m2
30-
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
31-
restore-keys: ${{ runner.os }}-m2
32-
33-
- name: Set up Warehouse Connection
34-
env:
35-
DATABRICKS_HOST: ${{ secrets.DATABRICKS_HOST }}
36-
DATABRICKS_BENCHFOOD_HOST: ${{ secrets.DATABRICKS_BENCHFOOD_HOST }}
37-
DATABRICKS_BENCHMARKING_HOST: ${{ secrets.DATABRICKS_BENCHMARKING_HOST }}
38-
DATABRICKS_HTTP_PATH: ${{ secrets.DATABRICKS_HTTP_PATH }}
39-
DATABRICKS_BENCHFOOD_HTTP_PATH: ${{ secrets.DATABRICKS_BENCHFOOD_HTTP_PATH }}
40-
DATABRICKS_BENCHMARKING_HTTP_PATH: ${{ secrets.DATABRICKS_BENCHMARKING_HTTP_PATH }}
41-
DATABRICKS_TOKEN: ${{ secrets.DATABRICKS_TOKEN }}
42-
DATABRICKS_BENCHFOOD_TOKEN: ${{ secrets.DATABRICKS_BENCHFOOD_TOKEN }}
43-
DATABRICKS_BENCHMARKING_TOKEN: ${{ secrets.DATABRICKS_BENCHMARKING_TOKEN }}
44-
DATABRICKS_USER: ${{ secrets.DATABRICKS_USER }}
45-
DATABRICKS_CATALOG: ${{ secrets.DATABRICKS_CATALOG }}
46-
DATABRICKS_SCHEMA: ${{ secrets.DATABRICKS_SCHEMA }}
47-
DATABRICKS_DOGFOOD_HOST: ${{ secrets.DATABRICKS_DOGFOOD_HOST }}
48-
DATABRICKS_DOGFOOD_TOKEN: ${{ secrets.DATABRICKS_DOGFOOD_TOKEN }}
49-
DATABRICKS_DOGFOOD_HTTP_PATH: ${{ secrets.DATABRICKS_DOGFOOD_HTTP_PATH }}
50-
run: |
51-
echo "DATABRICKS_HOST=${DATABRICKS_HOST}" >> $GITHUB_ENV
52-
echo "DATABRICKS_BENCHFOOD_HOST=${DATABRICKS_BENCHFOOD_HOST}" >> $GITHUB_ENV
53-
echo "DATABRICKS_BENCHMARKING_HOST=${DATABRICKS_BENCHMARKING_HOST}" >> $GITHUB_ENV
54-
echo "DATABRICKS_HTTP_PATH=${DATABRICKS_HTTP_PATH}" >> $GITHUB_ENV
55-
echo "DATABRICKS_BENCHFOOD_HTTP_PATH=${DATABRICKS_BENCHFOOD_HTTP_PATH}" >> $GITHUB_ENV
56-
echo "DATABRICKS_BENCHMARKING_HTTP_PATH=${DATABRICKS_BENCHMARKING_HTTP_PATH}" >> $GITHUB_ENV
57-
echo "DATABRICKS_TOKEN=${DATABRICKS_TOKEN}" >> $GITHUB_ENV
58-
echo "DATABRICKS_BENCHFOOD_TOKEN=${DATABRICKS_BENCHFOOD_TOKEN}" >> $GITHUB_ENV
59-
echo "DATABRICKS_BENCHMARKING_TOKEN=${DATABRICKS_BENCHMARKING_TOKEN}" >> $GITHUB_ENV
60-
echo "DATABRICKS_USER=${DATABRICKS_USER}" >> $GITHUB_ENV
61-
echo "DATABRICKS_CATALOG=${DATABRICKS_CATALOG}" >> $GITHUB_ENV
62-
echo "DATABRICKS_SCHEMA=${DATABRICKS_SCHEMA}" >> $GITHUB_ENV
63-
echo "DATABRICKS_DOGFOOD_HOST=${DATABRICKS_DOGFOOD_HOST}" >> $GITHUB_ENV
64-
echo "DATABRICKS_DOGFOOD_TOKEN=${DATABRICKS_DOGFOOD_TOKEN}" >> $GITHUB_ENV
65-
echo "DATABRICKS_DOGFOOD_HTTP_PATH=${DATABRICKS_DOGFOOD_HTTP_PATH}" >> $GITHUB_ENV
66-
67-
- name: Build with Maven
68-
run: mvn -B package --file pom.xml
69-
70-
- name: Run Integration Tests
71-
run: mvn -B test -Dtest=*IntegrationTests
72-
env:
73-
DATABRICKS_HOST: ${{ env.DATABRICKS_HOST }}
74-
DATABRICKS_BENCHFOOD_HOST: ${{ env.DATABRICKS_BENCHFOOD_HOST }}
75-
DATABRICKS_BENCHMARKING_HOST: ${{ env.DATABRICKS_BENCHMARKING_HOST }}
76-
DATABRICKS_HTTP_PATH: ${{ env.DATABRICKS_HTTP_PATH }}
77-
DATABRICKS_BENCHFOOD_HTTP_PATH: ${{ env.DATABRICKS_BENCHFOOD_HTTP_PATH }}
78-
DATABRICKS_BENCHMARKING_HTTP_PATH: ${{ env.DATABRICKS_BENCHMARKING_HTTP_PATH }}
79-
DATABRICKS_TOKEN: ${{ env.DATABRICKS_TOKEN }}
80-
DATABRICKS_BENCHFOOD_TOKEN: ${{ env.DATABRICKS_BENCHFOOD_TOKEN }}
81-
DATABRICKS_BENCHMARKING_TOKEN: ${{ env.DATABRICKS_BENCHMARKING_TOKEN }}
82-
DATABRICKS_USER: ${{ env.DATABRICKS_USER }}
83-
DATABRICKS_CATALOG: ${{ env.DATABRICKS_CATALOG }}
84-
DATABRICKS_SCHEMA: ${{ env.DATABRICKS_SCHEMA }}
85-
DATABRICKS_DOGFOOD_HOST: ${{ env.DATABRICKS_DOGFOOD_HOST }}
86-
DATABRICKS_DOGFOOD_TOKEN: ${{ env.DATABRICKS_DOGFOOD_TOKEN }}
87-
DATABRICKS_DOGFOOD_HTTP_PATH: ${{ env.DATABRICKS_DOGFOOD_HTTP_PATH }}
88-
build-and-test-thrift:
89-
name: Build and Run Integration Tests (Thrift)
90-
runs-on: ubuntu-latest
91-
environment: azure-prod
92-
steps:
93-
- name: Checkout code
94-
uses: actions/checkout@v2
95-
96-
- name: Set up JDK 21
97-
uses: actions/setup-java@v2
26+
- uses: actions/checkout@v2
27+
- uses: actions/setup-java@v2
9828
with:
9929
java-version: 21
10030
distribution: 'adopt'
101-
102-
- name: Cache Maven packages
103-
uses: actions/cache@v2
31+
- uses: actions/cache@v2
10432
with:
10533
path: ~/.m2
10634
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
10735
restore-keys: ${{ runner.os }}-m2
108-
109-
- name: Set up All purpose Connection
110-
env:
111-
DATABRICKS_HOST: ${{ secrets.THRIFT_DATABRICKS_HOST }}
112-
DATABRICKS_TOKEN: ${{ secrets.THRIFT_DATABRICKS_TOKEN }}
113-
DATABRICKS_USER: ${{ secrets.THRIFT_DATABRICKS_USER }}
114-
DATABRICKS_HTTP_PATH: ${{ secrets.THRIFT_DATABRICKS_HTTP_PATH }}
115-
DATABRICKS_CATALOG: ${{ secrets.DATABRICKS_CATALOG }}
116-
DATABRICKS_SCHEMA: ${{ secrets.DATABRICKS_SCHEMA }}
117-
run: |
118-
echo "DATABRICKS_HOST=${DATABRICKS_HOST}" >> $GITHUB_ENV
119-
echo "DATABRICKS_TOKEN=${DATABRICKS_TOKEN}" >> $GITHUB_ENV
120-
echo "DATABRICKS_USER=${DATABRICKS_USER}" >> $GITHUB_ENV
121-
echo "DATABRICKS_HTTP_PATH=${DATABRICKS_HTTP_PATH}" >> $GITHUB_ENV
122-
echo "DATABRICKS_CATALOG=${DATABRICKS_CATALOG}" >> $GITHUB_ENV
123-
echo "DATABRICKS_SCHEMA=${DATABRICKS_SCHEMA}" >> $GITHUB_ENV
124-
125-
- name: Build with Maven
126-
run: mvn -B package --file pom.xml
127-
12836
- name: Run Integration Tests
129-
run: mvn -B test -Dtest=**/fakeservice/tests/*.java,!**/fakeservice/tests/ConcurrencyIntegrationTests.java,!**/fakeservice/tests/PreparedStatementIntegrationTests.java
37+
run: ${{ matrix.test-command }}
13038
env:
131-
DATABRICKS_HOST: ${{ env.DATABRICKS_HOST }}
132-
DATABRICKS_TOKEN: ${{ env.DATABRICKS_TOKEN }}
133-
DATABRICKS_USER: ${{ env.DATABRICKS_USER }}
134-
DATABRICKS_HTTP_PATH: ${{ env.DATABRICKS_HTTP_PATH }}
135-
DATABRICKS_CATALOG: ${{ env.DATABRICKS_CATALOG }}
136-
DATABRICKS_SCHEMA: ${{ env.DATABRICKS_SCHEMA }}
39+
DATABRICKS_TOKEN: ${{ secrets[matrix.token-secret] }}
40+
DATABRICKS_USER: ${{ secrets.DATABRICKS_USER }}
41+
USE_THRIFT_CLIENT: ${{ matrix.use-thrift-client }}

NOTICE

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
Copyright (2024) Databricks, Inc.
2+
3+
This Software includes software developed at Databricks (https://www.databricks.com/) and its use is subject to the included LICENSE file.
4+
5+
________________
6+
This Software contains code from the following open source projects, licensed under the Apache 2.0 license (https://www.apache.org/licenses/LICENSE-2.0):
7+
8+
databricks/databricks-sdk-java - https://github.com/databricks/databricks-sdk-java
9+
Copyright (2023) Databricks, Inc.
10+
Notice - https://github.com/databricks/databricks-sdk-java/blob/main/NOTICE
11+
12+
apache/arrow - https://github.com/apache/arrow/tree/main
13+
Copyright 2016-2024 The Apache Software Foundation
14+
Notice - https://github.com/apache/arrow/blob/main/NOTICE.txt
15+
16+
diffplug/spotless - https://github.com/diffplug/spotless/tree/main
17+
Copyright 2020 DiffPlug
18+
19+
apache/httpcomponents-client - https://github.com/apache/httpcomponents-client
20+
Copyright 1999-2023 The Apache Software Foundation
21+
Notice - https://github.com/apache/httpcomponents-client/blob/master/NOTICE.txt
22+
23+
apache/thrift - https://github.com/apache/thrift
24+
Copyright (C) 2006 - 2019, The Apache Software Foundation
25+
Notice - https://github.com/apache/thrift/blob/master/NOTICE
26+
27+
apache/commons-io - https://github.com/apache/commons-io
28+
Copyright 2002-2024 The Apache Software Foundation
29+
Notice - https://github.com/apache/commons-io/blob/master/NOTICE.txt
30+
31+
google/guava - https://github.com/google/guava
32+
Copyright guava authors
33+
34+
apache/logging-log4j2 - https://github.com/apache/logging-log4j2
35+
Copyright 1999-2024 Apache Software Foundation
36+
Notice - https://github.com/apache/logging-log4j2/blob/2.x/NOTICE.txt
37+
38+
FasterXML/jackson-databind - https://github.com/FasterXML/jackson-databind
39+
Copyright jackson-databind authors
40+
41+
FasterXML/jackson-annotations - https://github.com/FasterXML/jackson-annotations
42+
Copyright jackson-annotations authors
43+
44+
FasterXML/jackson-core - https://github.com/FasterXML/jackson-core
45+
Copyright jackson-core authors
46+
47+
immutables/immutable - https://github.com/immutables/immutables
48+
Copyright 2013-2024 Immutables Authors and Contributors
49+
50+
lz4/lz4-java - https://github.com/lz4/lz4-java
51+
Copyright lz4-java authors
52+
53+
wiremock/wiremock - https://github.com/wiremock/wiremock
54+
Copyright wiremock authors
55+
Notice - https://github.com/wiremock/wiremock/blob/master/NOTICE.txt
56+
57+
apache/commons-fileupload - https://github.com/apache/commons-fileupload
58+
Copyright 2002-2024 The Apache Software Foundation
59+
Notice - https://github.com/apache/commons-fileupload/blob/master/NOTICE.txt
60+
61+
________________
62+
This Software contains code from the following open source projects, licensed under the MIT license (https://opensource.org/license/mit):
63+
64+
mockito/mockito - https://github.com/mockito/mockito
65+
Copyright (c) 2007 Mockito contributors
66+
67+
hydromatic/sql-logic-test - https://github.com/hydromatic/sql-logic-test
68+
Copyright 2022 VMware, Inc.
69+
Copyright 2023 Julian Hyde
70+
Notice - https://github.com/hydromatic/sql-logic-test/blob/main/NOTICE
71+
72+
73+
________________
74+
This Software contains code from the following open source projects, licensed under the Eclipse Public License (https://www.eclipse.org/legal/epl-2.0/):
75+
76+
junit-team/junit5 - https://github.com/junit-team/junit5/tree/main
77+
Copyright junit5 authors
78+
79+
jakartaee/common-annotations-api - https://github.com/jakartaee/common-annotations-api
80+
Copyright common-annotations-api authors
81+
Notice - https://github.com/jakartaee/common-annotations-api/blob/master/NOTICE.md
82+
83+
________________
84+
This Software contains code from the following open source projects, licensed under the GNU Lesser General Public License (https://www.gnu.org/licenses/lgpl-3.0.html):
85+
86+
Findbugs 3.0.1 - https://findbugs.sourceforge.net/
87+
Copyright annotations 3.0.1 authors
88+

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ You can install Databricks JDBC driver by adding the following to your `pom.xml`
1212
<dependency>
1313
<groupId>com.databricks</groupId>
1414
<artifactId>databricks-jdbc-oss</artifactId>
15-
<version>0.0.1</version>
15+
<version>0.9.0-oss</version>
1616
</dependency>
1717
```
1818
Databricks JDBC is compatible with Java 11 and higher. CI testing runs on Java versions 11, 17, and 21.

0 commit comments

Comments
 (0)