Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expose serverTimezone debezium option via MySQL Source spec for CDC #6573

Closed
digital-thinking opened this issue Sep 30, 2021 · 19 comments · Fixed by #17815
Closed

Expose serverTimezone debezium option via MySQL Source spec for CDC #6573

digital-thinking opened this issue Sep 30, 2021 · 19 comments · Fixed by #17815
Assignees
Labels
area/connectors Connector related issues connectors/source/mysql connectors/sources-database team/db-dw-sources Backlog for Database and Data Warehouse Sources team

Comments

@digital-thinking
Copy link

Hello all,

A full refresh works, as it is using the JDBC connection params defined in the UI, but the incremental update seems to ignore the configured jdbc parameters and fails.

Enviroment

  • Airbyte version: 0.30.1-alpha
  • OS Version / Instance: Windows 100 /Docker WSL2
  • Deployment: Docker
  • Source Connector and version: MySQL | airbyte/source-mysql | 0.4.5
  • Destination Connector and version: snowflake | airbyte/destination-snowflake | 0.3.14
  • Severity: Very Low / Low / Medium / High / Critical
  • Step where error happened: Sync job

Current Behavior

Fails to sync due MySQL errors, which are happening because the jdbc params are not applied in incemental mode (binlog)

Expected Behavior

Should use the JDBC params defined in the source settings and sync.

Logs

LOG

2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: org.apache.kafka.connect.errors.ConnectException: Error reading MySQL variables: The server time zone value 'CEST' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' configuration property) to use a more specific time zone value if you want to utilize time zone support.
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.integrations.debezium.internals.DebeziumRecordIterator.requestClose(DebeziumRecordIterator.java:152)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.integrations.debezium.internals.DebeziumRecordIterator.computeNext(DebeziumRecordIterator.java:99)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.integrations.debezium.internals.DebeziumRecordIterator.computeNext(DebeziumRecordIterator.java:52)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.TransformedIterator.hasNext(TransformedIterator.java:42)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.commons.util.DefaultAutoCloseableIterator.computeNext(DefaultAutoCloseableIterator.java:58)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.commons.util.CompositeIterator.computeNext(CompositeIterator.java:83)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.commons.util.CompositeIterator.computeNext(CompositeIterator.java:83)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.commons.util.DefaultAutoCloseableIterator.computeNext(DefaultAutoCloseableIterator.java:58)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.commons.util.DefaultAutoCloseableIterator.computeNext(DefaultAutoCloseableIterator.java:58)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at java.base/java.util.Iterator.forEachRemaining(Iterator.java:132)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.integrations.base.IntegrationRunner.run(IntegrationRunner.java:139)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.integrations.source.mysql.MySqlSource.main(MySqlSource.java:251)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - Caused by: java.lang.RuntimeException: org.apache.kafka.connect.errors.ConnectException: Error reading MySQL variables: The server time zone value 'CEST' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' configuration property) to use a more specific time zone value if you want to utilize time zone support.
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.integrations.debezium.internals.DebeziumRecordPublisher.close(DebeziumRecordPublisher.java:137)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.commons.concurrency.VoidCallable.call(VoidCallable.java:35)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.airbyte.integrations.debezium.internals.DebeziumRecordIterator.requestClose(DebeziumRecordIterator.java:149)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	... 23 more
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - Caused by: org.apache.kafka.connect.errors.ConnectException: Error reading MySQL variables: The server time zone value 'CEST' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' configuration property) to use a more specific time zone value if you want to utilize time zone support.
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.connector.mysql.MySqlJdbcContext.querySystemVariables(MySqlJdbcContext.java:342)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.connector.mysql.MySqlJdbcContext.readMySqlSystemVariables(MySqlJdbcContext.java:321)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.connector.mysql.MySqlTaskContext.<init>(MySqlTaskContext.java:79)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.connector.mysql.MySqlTaskContext.<init>(MySqlTaskContext.java:52)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.connector.mysql.MySqlConnectorTask.createAndStartTaskContext(MySqlConnectorTask.java:346)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.connector.mysql.MySqlConnectorTask.start(MySqlConnectorTask.java:142)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.connector.common.BaseSourceTask.start(BaseSourceTask.java:106)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.embedded.EmbeddedEngine.run(EmbeddedEngine.java:758)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.embedded.ConvertingEngineBuilder$2.run(ConvertingEngineBuilder.java:171)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at java.base/java.lang.Thread.run(Thread.java:832)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - Caused by: java.sql.SQLException: The server time zone value 'CEST' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' configuration property) to use a more specific time zone value if you want to utilize time zone support.
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:73)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:76)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:456)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.jdbc.JdbcConnection.lambda$patternBasedFactory$1(JdbcConnection.java:230)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.jdbc.JdbcConnection.connection(JdbcConnection.java:871)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.jdbc.JdbcConnection.connection(JdbcConnection.java:866)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.jdbc.JdbcConnection.connect(JdbcConnection.java:412)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at io.debezium.connector.mysql.MySqlJdbcContext.querySystemVariables(MySqlJdbcContext.java:328)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	... 11 more
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - Caused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value 'CEST' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' configuration property) to use a more specific time zone value if you want to utilize time zone support.
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:85)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.util.TimeUtil.getCanonicalTimezone(TimeUtil.java:134)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.protocol.a.NativeProtocol.configureTimezone(NativeProtocol.java:2186)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.protocol.a.NativeProtocol.initServerSession(NativeProtocol.java:2209)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:1318)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:967)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:826)
2021-09-30 12:03:28 ERROR () LineGobbler(voidCall):65 - 	... 19 more


</details>

## Steps to Reproduce
1. Use a MySQL database with the timezone  set to 'CEST' as a Source
2. Use JDBC connection param to Change it to e.g. serverTimezone=Europe/Berlin
3. Try to sync Data from the database to any target with BINLOG (CDC) and Incremental mode, which fails and switch to full refresh and it will work

@digital-thinking digital-thinking added the type/bug Something isn't working label Sep 30, 2021
@sherifnada sherifnada added the area/connectors Connector related issues label Sep 30, 2021
@marcosmarxm
Copy link
Member

@digital-thinking this is a problem between mysql/debezium. I found this Stack Overflow discussion: https://stackoverflow.com/questions/67340500/kafka-connect-mysql-server-time-zone-value-edt-is-unrecognized can you give it a try?

@digital-thinking
Copy link
Author

digital-thinking commented Oct 11, 2021

@marcosmarxm seems like the same issue, do you know, where I can change that config in airbyte?

@dcoueron
Copy link

dcoueron commented Dec 9, 2021

Hi, while trying to setup CDC on a MariaDB database I encountered the same issue with Airbyte 0.33.5.
@digital-thinking , @marcosmarxm , did you manage to solve this ?

@digital-thinking
Copy link
Author

@dcoueron No, and we abandoned airbyte for performance reasons.

@agiletich
Copy link

Facing the same issue on 0.39.16-alpha with CDT timezone.

JDBC URL Params is set to serverTimezone=UTC

2022-06-25 09:07:06 source > java.lang.RuntimeException: java.lang.RuntimeException: org.apache.kafka.connect.errors.ConnectException: Error reading MySQL variables: The server time zone value 'CDT' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' configuration property) to use a more specific time zone value if you want to utilize time zone support.

@gsmith-schlesinger
Copy link

Also encountering this issue as well. @marcosmarxm can this issue be reopened? This appears to still be an issue with CDC not taking JDBC pramas. Or should we open a new Issue on this?

Also with #7600 closed, it mentions a google docs are these issues being tracked and actively worked on?

@grishick
Copy link
Contributor

@subodh1810 are JDBC parameters even relevant for Debezium connection to MySQL?

@gsmith-schlesinger
Copy link

gsmith-schlesinger commented Aug 26, 2022

@grishick So based on @marcosmarxm comment there's a change in the debezium config that could work but that configuration is not exposed in the Airbyte UI for us to control. That's more likely the real fix, than it is JDBC parameters. The problem right now is I can't change it.

Here's the current error we get from the airbyte logs.
java.sql.SQLException: The server time zone value 'Coordinated Universal Time' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'connectionTimeZone' configuration property) to use a more specific time zone value if you want to utilize time zone support.

This is using MySQL with CDC and Incremental Append selected.

Here's what the logs show for the debezium configuration.

configuration: {
   connector.class = io.debezium.connector.mysql.MySqlConnector
   snapshot.locking.mode = none
   max.queue.size = 8192
   include.schema.changes = false
   binary.handling.mode = base64
   offset.storage.file.filename = /tmp/cdc-state-offset8822436826785830173/offset.dat
   decimal.handling.mode = string
   converters = boolean, datetime
   datetime.type = io.airbyte.integrations.debezium.internals.MySQLDateTimeConverter
   value.converter = org.apache.kafka.connect.json.JsonConverter
   key.converter = org.apache.kafka.connect.json.JsonConverter
   database.history.file.filename = /tmp/cdc-db-history17866782020454133562/dbhistory.dat
   database.user = airbyte@mydb
   database.dbname = mydb
   offset.storage = org.apache.kafka.connect.storage.FileOffsetBackingStore
   boolean.type = io.debezium.connector.mysql.converters.TinyIntOneToBooleanConverter
   database.server.name = mydb
   offset.flush.timeout.ms = 5000
   database.port = 3306
   offset.flush.interval.ms = 1000
   key.converter.schemas.enable = false
   database.ssl.mode = preferred
   internal.key.converter = org.apache.kafka.connect.json.JsonConverter
   database.hostname = x.x.x.x
   database.password = ********
   name = mydb
   value.converter.schemas.enable = false
   internal.value.converter = org.apache.kafka.connect.json.JsonConverter
   max.batch.size = 2048
   table.include.list = ... // my tables
   snapshot.mode = when_needed
   database.history = io.debezium.relational.history.FileDatabaseHistory
   database.include.list = mydb
}

per that stackoverflow link there's a debezium option for database.serverTimezone which isn't included in the current config. I did however find this on debeziums board someone was wanting this to be required but understandably rejected.
https://issues.redhat.com/browse/DBZ-888

You should specify that option when registering the connector, just like all the other options (DB user etc.). I'm going to close this one, as it seems not actionable on our side. Feel free to re-open / discuss, if you disagree. Thanks!

So, it just seems like either there's a change that needs to optionally include this config value when it's needed.

@grishick grishick changed the title MySQL: Debezium does not use the jdbc params for the jdbc connection string and fails on binlog based incremental updates Expose serverTimezone debezium option via MySQL Source spec for CDC Sep 8, 2022
@grishick grishick reopened this Sep 8, 2022
@subodh1810
Copy link
Contributor

@grishick this is same as https://github.com/airbytehq/alpha-beta-issues/issues/183

@grishick
Copy link
Contributor

Closing as duplicate of https://github.com/airbytehq/alpha-beta-issues/issues/183

@grishick grishick closed this as not planned Won't fix, can't repro, duplicate, stale Sep 13, 2022
@gsmith-schlesinger
Copy link

@grishick So since this is closed, and there's a duplicate ticket on a board not accessible to the public.

  • Is the issue being addressed in the other repo?
  • How should this public repository address this, if any?
  • Currently as it is today CDC doesn't work for MySQL in our organization(in a few cases, not all). Is the solution for us to fork the repo and run our own image, by modifying the debezium configuration?

@grishick
Copy link
Contributor

airbytehq/alpha-beta-issues#183

@gsmith-schlesinger yes, the duplicate ticket is https://github.com/airbytehq/alpha-beta-issues/issues/183 (see @subodh1810's comment above)

@grishick
Copy link
Contributor

My apologies, I didn't realize alpha-beta was a closed repo. I'll reorganize these tickets to keep the public one open

@grishick grishick added the team/db-dw-sources Backlog for Database and Data Warehouse Sources team label Sep 27, 2022
@subodh1810
Copy link
Contributor

@digital-thinking @gsmith-schlesinger @agiletich we need some help in order to reproduce this. I and @akashkulk have been trying to setup a mysql database with another timezone and sync it with Airbyte in order to reproduce this but could not reproduce this issue.

we followed the steps from here and here to setup the mysql database.

Can you share your mysql setup so that we can replicate the same setup in our mysql instance.

@gsmith-schlesinger
Copy link

gsmith-schlesinger commented Oct 7, 2022

Hey @subodh1810!

I'm not the DBA but with the access I have, I ran SHOW VARIABLES

Variable_name Value
time_zone SYSTEM
time_format %H:%i:%s   
system_time_zone Coordinated Universal Time
log_timestamps UTC
lc_time_names en_US
datetime_format %Y-%m-%d %H:%i:%s

So seeing as the error was inside Java specifically when dealing with Coordinated Universal Time that might be what is needed to reproduce this.
java.sql.SQLException: The server time zone value 'Coordinated Universal Time' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'connectionTimeZone' configuration property) to use a more specific time zone value if you want to utilize time zone support.

I hope that helps if there's any other values you need from this to help configure your MySQL. I'll also make note that this MySQL server is setup via Azure.

@akashkulk
Copy link
Contributor

akashkulk commented Oct 7, 2022

I was able to reproduce this error by setting the timezone to CEST (Stack Trace). The issue here is that Debezium is using the ZoneID library to figure out whether the given timezone is valid, and CEST is not in this list. You can see the full list here. You can verify this since spinning up a MySQL DB in a supported timezone (non-UTC) and verifying that data syncs properly.

In this case, there is a drift between what MySQL considers a valid timezone and what the ZoneId considers to be valid. ZoneId supports timezones that follow the following standards :

  • IANA TimeZone Database (TZDB)
  • IATA (airline industry body)
  • Microsoft

They also provide a mapping of legacy timezones to the ones that adhere to the new standard, but unfortunately 'CEST' is not in them.

Couple of options to address this:

  • Provide an input for timezone in CDC mode, and fail the check() if we know it is not recognized by ZoneId
  • [Not Recommended] : Manually maintain a mapping of timezones
  • Escalate to Debezium and see if this is something they can support on their end

@subodh1810
Copy link
Contributor

@akashkulk did you try to run the sync by setting the debezium parameter database.serverTimezone in Mysql CDC properties?

@akashkulk
Copy link
Contributor

@akashkulk did you try to run the sync by setting the debezium parameter database.serverTimezone in Mysql CDC properties?

Yes, this was by setting that parameter in MySQL properties

@subodh1810
Copy link
Contributor

update : So me and @akashkulk spend pairing on this issue and we have been able to reproduce this issue and identified a fix as well. @akashkulk is going to raise a PR for the fix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/connectors Connector related issues connectors/source/mysql connectors/sources-database team/db-dw-sources Backlog for Database and Data Warehouse Sources team
Projects
None yet