zhang-arvin opened a new pull request, #11866:
URL: https://github.com/apache/seatunnel/pull/11866

   ## Purpose
   
   Fix PostgreSQL JDBC connection failure caused by OpenGauss driver conflict.
   
   ## Problem
   
   When both `postgresql-xxx.jar` and `opengauss-jdbc-xxx.jar` are on the 
classpath, the OpenGauss JDBC driver shadows the PostgreSQL JDBC driver because 
both use the same `org.postgresql.Driver` class name. This causes PostgreSQL 
connections to fail with "Protocol error. Session setup failed".
   
   ## Solution
   
   Add `driver.acceptsURL(url)` check when selecting JDBC drivers in:
   1. `AbstractJdbcCatalog.getConnection()` - skip drivers that don\t accept 
the target URL
   2. `SimpleJdbcConnectionProvider.getOrEstablishConnection()` - fall back to 
`DriverManager.getDriver(url)` when the loaded driver doesn\t accept the URL
   
   This ensures the correct driver is selected based on the JDBC URL, 
preventing driver conflicts.
   
   Closes #10242


-- 
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