poorbarcode opened a new pull request, #649:
URL: https://github.com/apache/pulsar-site/pull/649

   When MySQL enabled `caching_sha2_password_auto_generate_rsa_keys `, the 
debezium will get an error: `Public Key Retrieval is not allowed`
   
   ```
   2023-07-20T18:28:41,740+0800 [function-timer-thread-34-1] ERROR 
org.apache.pulsar.functions.runtime.RuntimeSpawner - 
public/default/debezium-mysql-source Function Container is dead with following 
exception. Restarting.
   io.debezium.DebeziumException: Unexpected error while connecting to MySQL 
and looking at BINLOG_FORMAT mode: 
        at 
io.debezium.connector.mysql.MySqlConnection.isBinlogFormatRow(MySqlConnection.java:385)
 ~[?:?]
        at 
io.debezium.connector.mysql.MySqlConnectorTask.validateBinlogConfiguration(MySqlConnectorTask.java:240)
 ~[?:?]
        at 
io.debezium.connector.mysql.MySqlConnectorTask.start(MySqlConnectorTask.java:85)
 ~[?:?]
        at 
io.debezium.connector.common.BaseSourceTask.start(BaseSourceTask.java:133) 
~[?:?]
        at 
org.apache.pulsar.io.kafka.connect.AbstractKafkaConnectSource.open(AbstractKafkaConnectSource.java:162)
 ~[?:?]
        at 
org.apache.pulsar.io.kafka.connect.KafkaConnectSource.open(KafkaConnectSource.java:63)
 ~[?:?]
        at 
org.apache.pulsar.io.debezium.DebeziumSource.open(DebeziumSource.java:114) 
~[?:?]
        at 
org.apache.pulsar.functions.instance.JavaInstanceRunnable.setupInput(JavaInstanceRunnable.java:858)
 ~[org.apache.pulsar-pulsar-functions-instance-3.0.0.jar:3.0.0]
        at 
org.apache.pulsar.functions.instance.JavaInstanceRunnable.setup(JavaInstanceRunnable.java:253)
 ~[org.apache.pulsar-pulsar-functions-instance-3.0.0.jar:3.0.0]
        at 
org.apache.pulsar.functions.instance.JavaInstanceRunnable.run(JavaInstanceRunnable.java:290)
 ~[org.apache.pulsar-pulsar-functions-instance-3.0.0.jar:3.0.0]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]
   Caused by: java.sql.SQLNonTransientConnectionException: Public Key Retrieval 
is not allowed
        at 
com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110) 
~[?:?]
        at 
com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
 ~[?:?]
        at 
com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:828) ~[?:?]
        at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:448) 
~[?:?]
        at 
com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241) ~[?:?]
        at 
com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198) 
~[?:?]
        at 
io.debezium.jdbc.JdbcConnection.lambda$patternBasedFactory$1(JdbcConnection.java:244)
 ~[?:?]
        at io.debezium.jdbc.JdbcConnection.connection(JdbcConnection.java:888) 
~[?:?]
        at io.debezium.jdbc.JdbcConnection.connection(JdbcConnection.java:883) 
~[?:?]
        at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:636) 
~[?:?]
        at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:510) 
~[?:?]
        at 
io.debezium.connector.mysql.MySqlConnection.isBinlogFormatRow(MySqlConnection.java:380)
 ~[?:?]
        ... 10 more
   Caused by: com.mysql.cj.exceptions.UnableToConnectException: Public Key 
Retrieval is not allowed
        at 
jdk.internal.reflect.GeneratedConstructorAccessor33.newInstance(Unknown Source) 
~[?:?]
        at 
jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
 ~[?:?]
        at 
java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:480) 
~[?:?]
        at 
com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)
 ~[?:?]
        at 
com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:85)
 ~[?:?]
        at 
com.mysql.cj.protocol.a.authentication.CachingSha2PasswordPlugin.nextAuthenticationStep(CachingSha2PasswordPlugin.java:130)
 ~[?:?]
        at 
com.mysql.cj.protocol.a.authentication.CachingSha2PasswordPlugin.nextAuthenticationStep(CachingSha2PasswordPlugin.java:49)
 ~[?:?]
        at 
com.mysql.cj.protocol.a.NativeAuthenticationProvider.proceedHandshakeWithPluggableAuthentication(NativeAuthenticationProvider.java:447)
 ~[?:?]
        at 
com.mysql.cj.protocol.a.NativeAuthenticationProvider.connect(NativeAuthenticationProvider.java:212)
 ~[?:?]
        at 
com.mysql.cj.protocol.a.NativeProtocol.connect(NativeProtocol.java:1433) ~[?:?]
        at com.mysql.cj.NativeSession.connect(NativeSession.java:133) ~[?:?]
        at 
com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:948) 
~[?:?]
        at 
com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:818) ~[?:?]
        at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:448) 
~[?:?]
        at 
com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241) ~[?:?]
        at 
com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198) 
~[?:?]
        at 
io.debezium.jdbc.JdbcConnection.lambda$patternBasedFactory$1(JdbcConnection.java:244)
 ~[?:?]
        at io.debezium.jdbc.JdbcConnection.connection(JdbcConnection.java:888) 
~[?:?]
        at io.debezium.jdbc.JdbcConnection.connection(JdbcConnection.java:883) 
~[?:?]
        at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:636) 
~[?:?]
        at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:510) 
~[?:?]
        at 
io.debezium.connector.mysql.MySqlConnection.isBinlogFormatRow(MySqlConnection.java:380)
 ~[?:?]
        ... 10 more
   ```
   
   Add a solution to solve the issue
   
   <!-- DO NOT REMOVE THIS SECTION. CHECK THE PROPER BOX ONLY. -->
   
   - [ ] `doc` <!-- Your PR contains doc changes. Please attach the local 
preview screenshots (run `./preview.sh` at root path) to your PR description, 
or else your PR might not get merged. -->
   - [ ] `doc-required` <!-- Your PR changes impact docs and you will update 
later -->
   - [ ] `doc-not-needed` <!-- Your PR changes do not impact docs -->
   - [ ] `doc-complete` <!-- Docs have been already added -->
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to