fuweng11 commented on code in PR #9012:
URL: https://github.com/apache/inlong/pull/9012#discussion_r1352189735
##########
inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/resource/sink/mysql/MySQLJdbcUtils.java:
##########
@@ -52,26 +52,48 @@ public class MySQLJdbcUtils {
* @throws Exception on get connection error
*/
public static Connection getConnection(String url, String user, String
password) throws Exception {
- if (StringUtils.isBlank(url) || !url.startsWith(MYSQL_JDBC_PREFIX)) {
- throw new Exception("MySQL JDBC URL was invalid, it should start
with jdbc:mysql");
- }
+ ValidationUtils.extractHostAndValidatePortFromJdbcUrl(url,
MYSQL_JDBC_PREFIX);
+ Connection conn = establishDatabaseConnection(url, user, password);
+ validateConnection(conn, url);
+ return conn;
+ }
+ /**
+ * Establishes a database connection using the provided URL, username, and
password.
+ *
+ * @param url The JDBC URL
+ * @param user The username
+ * @param password The user's password
+ * @return A {@link Connection} object representing the database connection
+ * @throws Exception If an error occurs while obtaining the connection
+ */
+ private static Connection establishDatabaseConnection(String url, String
user, String password) throws Exception {
Connection conn;
try {
Class.forName(MYSQL_DRIVER_CLASS);
conn = DriverManager.getConnection(url, user, password);
} catch (Exception e) {
- String errorMsg = "get MySQL connection error, please check MySQL
JDBC url, username or password!";
+ String errorMsg = "Failed to get MySQL connection, please check
MySQL JDBC URL, username, or password!";
LOGGER.error(errorMsg, e);
- throw new Exception(errorMsg + " other error msg: " +
e.getMessage());
- }
- if (Objects.isNull(conn)) {
- throw new Exception("get MySQL connection failed, please contact
administrator.");
+ throw new Exception(errorMsg + " Other error message: " +
e.getMessage());
}
- LOGGER.info("get MySQL connection success for url={}", url);
Review Comment:
why delete it?
--
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]