Skip to content

Commit eacc50a

Browse files
author
Jonathan Pearlin
authored
chore: update to latest CDK release (#69200)
1 parent f244a50 commit eacc50a

File tree

10 files changed

+114
-101
lines changed

10 files changed

+114
-101
lines changed
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
cdkVersion=0.1.61
1+
cdkVersion=0.1.67

airbyte-integrations/connectors/destination-clickhouse/metadata.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ data:
22
connectorSubtype: database
33
connectorType: destination
44
definitionId: ce0d828e-1dc4-496c-b122-2da42e637e48
5-
dockerImageTag: 2.1.10
5+
dockerImageTag: 2.1.11
66
dockerRepository: airbyte/destination-clickhouse
77
githubIssueLabel: destination-clickhouse
88
icon: clickhouse.svg

airbyte-integrations/connectors/destination-clickhouse/src/main/kotlin/io/airbyte/integrations/destination/clickhouse/write/transform/ClickhouseCoercer.kt

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import io.airbyte.cdk.load.data.TimeWithoutTimezoneValue
1818
import io.airbyte.cdk.load.data.TimestampWithTimezoneValue
1919
import io.airbyte.cdk.load.data.TimestampWithoutTimezoneValue
2020
import io.airbyte.cdk.load.data.UnionType
21+
import io.airbyte.cdk.load.dataflow.transform.ValidationResult
2122
import io.airbyte.cdk.load.dataflow.transform.ValueCoercer
2223
import io.airbyte.cdk.load.util.serializeToString
2324
import io.airbyte.integrations.destination.clickhouse.write.transform.ClickhouseCoercer.Constants.DATE32_MAX
@@ -67,50 +68,49 @@ class ClickhouseCoercer : ValueCoercer {
6768
return value
6869
}
6970

70-
override fun validate(value: EnrichedAirbyteValue): EnrichedAirbyteValue {
71+
override fun validate(value: EnrichedAirbyteValue): ValidationResult =
7172
when (val abValue = value.abValue) {
7273
is NumberValue ->
7374
if (abValue.value <= DECIMAL128_MIN || abValue.value >= DECIMAL128_MAX) {
74-
value.nullify(
75+
ValidationResult.ShouldNullify(
7576
AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION
7677
)
77-
}
78+
} else ValidationResult.Valid
7879
is IntegerValue ->
7980
if (abValue.value < INT64_MIN || abValue.value > INT64_MAX) {
80-
value.nullify(
81+
ValidationResult.ShouldNullify(
8182
AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION
8283
)
83-
}
84+
} else ValidationResult.Valid
8485
is DateValue -> {
8586
val days = abValue.value.toEpochDay()
8687
if (days < DATE32_MIN || days > DATE32_MAX) {
87-
value.nullify(
88+
ValidationResult.ShouldNullify(
8889
AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION
8990
)
90-
}
91+
} else ValidationResult.Valid
9192
}
9293
is TimestampWithTimezoneValue -> {
9394
val seconds = abValue.value.toEpochSecond()
9495
if (seconds < DATETIME64_MIN || seconds > DATETIME64_MAX) {
95-
value.nullify(
96+
ValidationResult.ShouldNullify(
9697
AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION
9798
)
98-
}
99+
} else ValidationResult.Valid
99100
}
100101
is TimestampWithoutTimezoneValue -> {
101102
val seconds = abValue.value.toEpochSecond(ZoneOffset.UTC)
102103
if (seconds < DATETIME64_MIN || seconds > DATETIME64_MAX) {
103-
value.nullify(
104+
ValidationResult.ShouldNullify(
104105
AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION
105106
)
106-
}
107+
} else ValidationResult.Valid
108+
}
109+
else -> {
110+
ValidationResult.Valid
107111
}
108-
else -> {}
109112
}
110113

111-
return value
112-
}
113-
114114
object Constants {
115115
// CH will overflow ints without erroring
116116
val INT64_MAX = BigInteger(Long.MAX_VALUE.toString())

airbyte-integrations/connectors/destination-clickhouse/src/test/kotlin/io/airbyte/integrations/destination/clickhouse/write/transform/ClickhouseCoercerTest.kt

Lines changed: 16 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import io.airbyte.cdk.load.data.TimeWithoutTimezoneValue
2020
import io.airbyte.cdk.load.data.TimestampWithTimezoneValue
2121
import io.airbyte.cdk.load.data.TimestampWithoutTimezoneValue
2222
import io.airbyte.cdk.load.data.UnionType
23+
import io.airbyte.cdk.load.dataflow.transform.ValidationResult
2324
import io.airbyte.integrations.destination.clickhouse.write.transform.ClickhouseCoercer.Constants.DATE32_MAX
2425
import io.airbyte.integrations.destination.clickhouse.write.transform.ClickhouseCoercer.Constants.DATE32_MIN
2526
import io.airbyte.integrations.destination.clickhouse.write.transform.ClickhouseCoercer.Constants.DECIMAL128_MAX
@@ -60,9 +61,7 @@ class ClickhouseCoercerTest {
6061

6162
val result = coercer.validate(input)
6263

63-
assertEquals(input, result)
64-
assertEquals(input.abValue, result.abValue)
65-
assertEquals(mutableListOf(), result.changes)
64+
assertEquals(ValidationResult.Valid, result)
6665
}
6766

6867
@ParameterizedTest
@@ -72,10 +71,10 @@ class ClickhouseCoercerTest {
7271

7372
val result = coercer.validate(input)
7473

75-
assertEquals(NullValue, result.abValue)
74+
assertEquals(ValidationResult.ShouldNullify::class, result::class)
7675
assertEquals(
7776
AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION,
78-
result.changes[0].reason
77+
(result as ValidationResult.ShouldNullify).reason
7978
)
8079
}
8180

@@ -86,9 +85,7 @@ class ClickhouseCoercerTest {
8685

8786
val result = coercer.validate(input)
8887

89-
assertEquals(input, result)
90-
assertEquals(input.abValue, result.abValue)
91-
assertEquals(mutableListOf(), result.changes)
88+
assertEquals(ValidationResult.Valid, result)
9289
}
9390

9491
@ParameterizedTest
@@ -98,10 +95,10 @@ class ClickhouseCoercerTest {
9895

9996
val result = coercer.validate(input)
10097

101-
assertEquals(NullValue, result.abValue)
98+
assertEquals(ValidationResult.ShouldNullify::class, result::class)
10299
assertEquals(
103100
AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION,
104-
result.changes[0].reason
101+
(result as ValidationResult.ShouldNullify).reason
105102
)
106103
}
107104

@@ -113,9 +110,7 @@ class ClickhouseCoercerTest {
113110

114111
val result = coercer.validate(input)
115112

116-
assertEquals(input, result)
117-
assertEquals(input.abValue, result.abValue)
118-
assertEquals(mutableListOf(), result.changes)
113+
assertEquals(ValidationResult.Valid, result)
119114
}
120115

121116
@ParameterizedTest
@@ -126,10 +121,10 @@ class ClickhouseCoercerTest {
126121

127122
val result = coercer.validate(input)
128123

129-
assertEquals(NullValue, result.abValue)
124+
assertEquals(ValidationResult.ShouldNullify::class, result::class)
130125
assertEquals(
131126
AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION,
132-
result.changes[0].reason
127+
(result as ValidationResult.ShouldNullify).reason
133128
)
134129
}
135130

@@ -143,9 +138,7 @@ class ClickhouseCoercerTest {
143138

144139
val result = coercer.validate(input)
145140

146-
assertEquals(input, result)
147-
assertEquals(input.abValue, result.abValue)
148-
assertEquals(mutableListOf(), result.changes)
141+
assertEquals(ValidationResult.Valid, result)
149142
}
150143

151144
@ParameterizedTest
@@ -156,10 +149,10 @@ class ClickhouseCoercerTest {
156149

157150
val result = coercer.validate(input)
158151

159-
assertEquals(NullValue, result.abValue)
152+
assertEquals(ValidationResult.ShouldNullify::class, result::class)
160153
assertEquals(
161154
AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION,
162-
result.changes[0].reason
155+
(result as ValidationResult.ShouldNullify).reason
163156
)
164157
}
165158

@@ -173,9 +166,7 @@ class ClickhouseCoercerTest {
173166

174167
val result = coercer.validate(input)
175168

176-
assertEquals(input, result)
177-
assertEquals(input.abValue, result.abValue)
178-
assertEquals(mutableListOf(), result.changes)
169+
assertEquals(ValidationResult.Valid, result)
179170
}
180171

181172
@ParameterizedTest
@@ -188,10 +179,10 @@ class ClickhouseCoercerTest {
188179

189180
val result = coercer.validate(input)
190181

191-
assertEquals(NullValue, result.abValue)
182+
assertEquals(ValidationResult.ShouldNullify::class, result::class)
192183
assertEquals(
193184
AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION,
194-
result.changes[0].reason
185+
(result as ValidationResult.ShouldNullify).reason
195186
)
196187
}
197188

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
testExecutionConcurrency=-1
2-
cdkVersion=0.1.62
2+
cdkVersion=0.1.67
33
JunitMethodExecutionTimeout=10 m

airbyte-integrations/connectors/destination-snowflake/metadata.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ data:
66
connectorSubtype: database
77
connectorType: destination
88
definitionId: 424892c4-daac-4491-b35d-c6688ba547ba
9-
dockerImageTag: 4.0.23
9+
dockerImageTag: 4.0.24
1010
dockerRepository: airbyte/destination-snowflake
1111
documentationUrl: https://docs.airbyte.com/integrations/destinations/snowflake
1212
githubIssueLabel: destination-snowflake

airbyte-integrations/connectors/destination-snowflake/src/main/kotlin/io/airbyte/integrations/destination/snowflake/write/transform/SnowflakeValueCoercer.kt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import io.airbyte.cdk.load.data.ObjectValue
1414
import io.airbyte.cdk.load.data.StringValue
1515
import io.airbyte.cdk.load.data.UnionType
1616
import io.airbyte.cdk.load.data.csv.toCsvValue
17+
import io.airbyte.cdk.load.dataflow.transform.ValidationResult
1718
import io.airbyte.cdk.load.dataflow.transform.ValueCoercer
1819
import io.airbyte.cdk.load.util.serializeToString
1920
import io.airbyte.protocol.models.v0.AirbyteRecordMessageMetaChange
@@ -84,11 +85,10 @@ class SnowflakeValueCoercer : ValueCoercer {
8485
return value
8586
}
8687

87-
override fun validate(value: EnrichedAirbyteValue): EnrichedAirbyteValue {
88+
override fun validate(value: EnrichedAirbyteValue): ValidationResult =
8889
if (!isValid(value.abValue)) {
89-
value.nullify(AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION)
90-
}
91-
92-
return value
93-
}
90+
ValidationResult.ShouldNullify(
91+
AirbyteRecordMessageMetaChange.Reason.DESTINATION_FIELD_SIZE_LIMITATION
92+
)
93+
} else ValidationResult.Valid
9494
}

0 commit comments

Comments
 (0)