Skip to content

Commit 7f1582f

Browse files
authored
Merge pull request #736 from Altinity/734-json-validate-error-when-parsing-status
Convert localDateTime to String in show_replica_status API call
2 parents 821a79b + 381c2fb commit 7f1582f

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

sink-connector-lightweight/src/main/java/com/altinity/clickhouse/debezium/embedded/cdc/DebeziumChangeEventCapture.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
import java.sql.ResultSet;
4040
import java.sql.ResultSetMetaData;
4141
import java.sql.SQLException;
42+
import java.time.LocalDateTime;
4243
import java.util.*;
4344
import java.util.concurrent.*;
4445
import java.util.concurrent.atomic.AtomicBoolean;
@@ -442,7 +443,11 @@ public String getDebeziumStorageStatus(ClickHouseSinkConnectorConfig config, Pro
442443
JSONObject row = new JSONObject();
443444
colNames.forEach(cn -> {
444445
try {
445-
row.put(cn, resultSet.getObject(cn));
446+
Object v = resultSet.getObject(cn);
447+
if (v != null && v instanceof LocalDateTime) {
448+
v = ((LocalDateTime) v).toString();
449+
}
450+
row.put(cn, v);
446451
} catch (SQLException e) {
447452
e.printStackTrace();
448453
}
@@ -577,6 +582,7 @@ public void setupDebeziumEventCapture(Properties props, DebeziumRecordParserServ
577582
// Create the engine with this configuration ...
578583
try {
579584
DebeziumEngine.Builder<ChangeEvent<SourceRecord, SourceRecord>> changeEventBuilder = DebeziumEngine.create(Connect.class);
585+
580586
changeEventBuilder.using(props);
581587
changeEventBuilder.notifying(new DebeziumEngine.ChangeConsumer<ChangeEvent<SourceRecord, SourceRecord>>() {
582588
@Override

0 commit comments

Comments
 (0)