Skip to content

Commit 5ade2b1

Browse files
msmygitMadhavan
andauthored
feat: Update dependencies Java Driver (#218)
* Update dependencies C* 3.x,4.x,DSE,Java Driver * Update with CqlVector enhancements * updates to vector * gradle build changes * Temporarily re-introduce other compiler args to test * Revert "Temporarily re-introduce other compiler args to test" This reverts commit 0cfbb81. --------- Co-authored-by: Madhavan <[email protected]>
1 parent 1d5e42f commit 5ade2b1

File tree

9 files changed

+51
-25
lines changed

9 files changed

+51
-25
lines changed

agent-c3/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ dependencies {
4747
exclude group: 'io.netty'
4848
}
4949

50-
testImplementation "com.datastax.oss:java-driver-core:${ossDriverVersion}"
51-
testImplementation "com.datastax.oss:java-driver-query-builder:${ossDriverVersion}"
50+
testImplementation "org.apache.cassandra:java-driver-core:${ossDriverVersion}"
51+
testImplementation "org.apache.cassandra:java-driver-query-builder:${ossDriverVersion}"
5252

5353
testImplementation "org.testcontainers:testcontainers:${testContainersVersion}"
5454
testImplementation project(':testcontainers')

agent-c4/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@ dependencies {
5454
exclude group: 'io.netty'
5555
}
5656

57-
testImplementation "com.datastax.oss:java-driver-core:${ossDriverVersion}"
58-
testImplementation "com.datastax.oss:java-driver-query-builder:${ossDriverVersion}"
57+
testImplementation "org.apache.cassandra:java-driver-core:${ossDriverVersion}"
58+
testImplementation "org.apache.cassandra:java-driver-query-builder:${ossDriverVersion}"
5959

6060
testImplementation "org.testcontainers:testcontainers:${testContainersVersion}"
6161
testImplementation project(':testcontainers')

agent-dse4/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ dependencies {
5353
exclude group: 'io.netty'
5454
}
5555

56-
testImplementation "com.datastax.oss:java-driver-core:${ossDriverVersion}"
57-
testImplementation "com.datastax.oss:java-driver-query-builder:${ossDriverVersion}"
56+
testImplementation "org.apache.cassandra:java-driver-core:${ossDriverVersion}"
57+
testImplementation "org.apache.cassandra:java-driver-query-builder:${ossDriverVersion}"
5858

5959
testImplementation "org.testcontainers:testcontainers:${testContainersVersion}"
6060
testImplementation project(':testcontainers')

connector/build.gradle

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ task versionTxt() {
1313

1414
compileJava {
1515
dependsOn versionTxt
16+
options.compilerArgs = ['-Xlint:none']
1617
}
1718

1819
compileTestJava {
@@ -33,8 +34,8 @@ dependencies {
3334
implementation project(':commons')
3435
implementation("com.github.ben-manes.caffeine:caffeine:${caffeineVersion}")
3536
implementation("io.vavr:vavr:${vavrVersion}")
36-
implementation "com.datastax.oss:java-driver-core:${ossDriverVersion}"
37-
implementation "com.datastax.oss:java-driver-query-builder:${ossDriverVersion}"
37+
implementation "org.apache.cassandra:java-driver-core:${ossDriverVersion}"
38+
implementation "org.apache.cassandra:java-driver-query-builder:${ossDriverVersion}"
3839
implementation("org.apache.kafka:connect-api:${kafkaVersion}")
3940
implementation("com.google.guava:guava:${guavaVersion}")
4041
implementation("com.datastax.oss:messaging-connectors-commons-core:${messagingConnectorsCommonsVersion}")
@@ -46,6 +47,16 @@ dependencies {
4647
compileOnly("${pulsarGroup}:pulsar-io-core:${pulsarVersion}")
4748
implementation(platform("com.fasterxml.jackson:jackson-bom:${jacksonBomVersion}"))
4849

50+
configurations.all {
51+
resolutionStrategy {
52+
force "io.netty:netty-handler:${nettyVersion}"
53+
force "io.netty:netty-transport-native-epoll:${nettyVersion}"
54+
force "io.netty:netty-transport-native-unix-common:${nettyVersion}"
55+
force "io.netty:netty-codec-haproxy:${nettyVersion}"
56+
force "io.netty:netty-tcnative-boringssl-static:${nettyTcNativeVersion}"
57+
}
58+
}
59+
4960
constraints {
5061
implementation("ch.qos.logback:logback-classic:${logbackVersion}")
5162
implementation("com.github.jnr:jnr-posix:${jnrVersion}")
@@ -62,7 +73,7 @@ dependencies {
6273
testAnnotationProcessor "org.projectlombok:lombok:${lombokVersion}"
6374

6475

65-
testImplementation("com.datastax.oss:dsbulk-tests:1.6.0")
76+
testImplementation("com.datastax.oss:dsbulk-tests:${dsbulkVersion}")
6677
testImplementation("org.reactivestreams:reactive-streams:1.0.3")
6778
testImplementation("org.junit.jupiter:junit-jupiter-params:5.7.2")
6879
testImplementation("org.junit.jupiter:junit-jupiter-api:5.7.2")

connector/src/main/java/com/datastax/oss/pulsar/source/converters/AbstractNativeConverter.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
import com.datastax.oss.driver.api.core.metadata.schema.ColumnMetadata;
2424
import com.datastax.oss.driver.api.core.metadata.schema.KeyspaceMetadata;
2525
import com.datastax.oss.driver.api.core.metadata.schema.TableMetadata;
26-
import com.datastax.oss.driver.api.core.type.CqlVectorType;
26+
import com.datastax.oss.driver.api.core.type.VectorType;
2727
import com.datastax.oss.driver.api.core.type.DataType;
2828
import com.datastax.oss.driver.api.core.type.ListType;
2929
import com.datastax.oss.driver.api.core.type.MapType;
@@ -80,7 +80,7 @@ public AbstractNativeConverter(KeyspaceMetadata ksm, TableMetadata tm, List<Colu
8080
log.info("Add collection schema {}={}", field.name(), collectionSchema);
8181
break;
8282
case ProtocolConstants.DataType.CUSTOM:
83-
if (cm.getType() instanceof CqlVectorType) {
83+
if (cm.getType() instanceof VectorType) {
8484
Schema vectorSchema = dataTypeSchema(ksm, cm.getType());
8585
subSchemas.put(field.name(), vectorSchema);
8686
log.info("Add vector schema {}={}", field.name(), vectorSchema);
@@ -139,7 +139,7 @@ boolean isSupportedCqlType(DataType dataType) {
139139
case ProtocolConstants.DataType.MAP:
140140
return true;
141141
case ProtocolConstants.DataType.CUSTOM:
142-
return dataType instanceof CqlVectorType;
142+
return dataType instanceof VectorType;
143143
case ProtocolConstants.DataType.TUPLE:
144144
return true;
145145
}
@@ -210,14 +210,14 @@ Schema dataTypeSchema(KeyspaceMetadata ksm, DataType dataType) {
210210
case ProtocolConstants.DataType.MAP:
211211
MapType mapType = (MapType) dataType;
212212
return org.apache.avro.Schema.createMap(dataTypeSchema(ksm, mapType.getValueType()));
213-
case ProtocolConstants.DataType.CUSTOM:
214-
if (dataType instanceof CqlVectorType) {
215-
CqlVectorType vectorType = (CqlVectorType) dataType;
216-
return org.apache.avro.Schema.createArray(dataTypeSchema(ksm, vectorType.getSubtype()));
217-
}
218213
case ProtocolConstants.DataType.TUPLE:
219214
TupleType tupleType = (TupleType) dataType;
220215
return buildTupleSchema(ksm, dataType.asCql(false, true), tupleType, true);
216+
case ProtocolConstants.DataType.CUSTOM:
217+
if (dataType instanceof VectorType) {
218+
VectorType vectorType = (VectorType) dataType;
219+
return org.apache.avro.Schema.createArray(dataTypeSchema(ksm, vectorType.getElementType()));
220+
}
221221
default:
222222
throw new UnsupportedOperationException("Ignoring unsupported type=" + dataType.asCql(false, true));
223223
}

connector/src/main/java/com/datastax/oss/pulsar/source/converters/NativeAvroConverter.java

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
import com.datastax.oss.driver.api.core.metadata.schema.ColumnMetadata;
2727
import com.datastax.oss.driver.api.core.metadata.schema.KeyspaceMetadata;
2828
import com.datastax.oss.driver.api.core.metadata.schema.TableMetadata;
29-
import com.datastax.oss.driver.api.core.type.CqlVectorType;
29+
import com.datastax.oss.driver.api.core.type.VectorType;
3030
import com.datastax.oss.driver.api.core.type.DataType;
3131
import com.datastax.oss.driver.api.core.type.ListType;
3232
import com.datastax.oss.driver.api.core.type.MapType;
@@ -169,12 +169,13 @@ public byte[] toConnectData(Row row) {
169169
}
170170
break;
171171
case ProtocolConstants.DataType.CUSTOM: {
172-
if (cm.getType() instanceof CqlVectorType) {
172+
if (cm.getType() instanceof VectorType) {
173173
Schema vectorSchema = subSchemas.get(fieldName);
174-
CqlVector<?> vector = row.getCqlVector(fieldName);
174+
VectorType vectorType = (VectorType) cm.getType();
175+
CqlVector<?> vector = row.getVector(fieldName, CodecRegistry.DEFAULT.codecFor(vectorType.getElementType()).getJavaType().getRawType());
175176
log.debug("field={} vectorSchema={} vectorValue={}", fieldName, vectorSchema, vector);
176177
List<Object> vectorValue = new ArrayList<>();
177-
vector.getValues().forEach(vectorValue::add);
178+
vector.forEach(vectorValue::add);
178179
genericRecordBuilder.put(fieldName, buildArrayValue(vectorSchema, vectorValue));
179180
}
180181
}
@@ -307,6 +308,19 @@ GenericRecord buildUDTValue(Schema udtSchema, UdtValue udtValue) {
307308
genericRecord.put(field.toString(), mapValue);
308309
}
309310
break;
311+
case ProtocolConstants.DataType.CUSTOM: {
312+
if (udtValue.getType(field) instanceof VectorType) {
313+
VectorType vectorType = (VectorType) udtValue.getType(field);
314+
CqlVector<?> vector = udtValue.getVector(field, CodecRegistry.DEFAULT.codecFor(vectorType.getElementType()).getJavaType().getRawType());
315+
String path = typeName + "." + field.toString();
316+
Schema elementSchema = subSchemas.get(path);
317+
List<Object> vectorValue = new ArrayList<>();
318+
vector.forEach(vectorValue::add);
319+
log.debug("path={} elementSchema={} vectorType={} vectorValue={}", path, elementSchema, vectorType, vectorValue);
320+
genericRecord.put(field.toString(), buildArrayValue(elementSchema, vectorValue));
321+
}
322+
}
323+
break;
310324
default:
311325
log.debug("Ignoring unsupported type field name={} type={}", field, dataType.asCql(false, true));
312326
}

connector/src/main/java/com/datastax/oss/pulsar/source/converters/NativeJsonConverter.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -340,6 +340,7 @@ public static JsonNode toJson(GenericRecord genericRecord) {
340340
}
341341

342342

343+
@Override
343344
public boolean isSupportedCqlType(DataType dataType) {
344345
switch (dataType.getProtocolCode()) {
345346
case ProtocolConstants.DataType.ASCII:

gradle.properties

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ releasesRepoUrl=https://repo.datastax.com/artifactory/datastax-public-releases-l
99
# deps version
1010
avroVersion=1.11.4
1111
lombokVersion=1.18.20
12-
ossDriverVersion=4.16.0
12+
ossDriverVersion=4.19.2
1313
cassandra3Version=3.11.10
1414
cassandra4Version=4.0.4
1515
dse4Version=6.8.23
@@ -45,4 +45,4 @@ cdc_total_space_in_mb=70
4545
dockerRepo=myrepo/
4646

4747
# CDC backfilling Client
48-
dsbulkVersion=1.10.0
48+
dsbulkVersion=1.11.0

testcontainers/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ plugins {
55
}
66

77
tasks.withType(JavaCompile) {
8-
options.compilerArgs += '-Xlint:none'
8+
options.compilerArgs = ['-Xlint:none']
99
}
1010

1111
lombok {
@@ -38,7 +38,7 @@ dependencies {
3838

3939
implementation("org.apache.avro:avro:${avroVersion}")
4040
implementation("commons-io:commons-io:2.8.0")
41-
implementation("com.datastax.oss:java-driver-core:${ossDriverVersion}") {
41+
implementation("org.apache.cassandra:java-driver-core:${ossDriverVersion}") {
4242
// fasterxml 2.12 not compatible for com.github.docker-java
4343
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-core'
4444
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'

0 commit comments

Comments
 (0)