From d973fb78c144c539e69bea64b767bf90fe5bcd06 Mon Sep 17 00:00:00 2001 From: t8y2 <1156263951@qq.com> Date: Mon, 25 May 2026 14:12:55 +0800 Subject: [PATCH] fix: disable prefer_socket in mysql_async to fix StarRocks connection after upgrade Newer StarRocks versions reject the @@socket system variable that mysql_async queries during connection initialization when prefer_socket is enabled (default on non-Windows). Since we always use TCP connections, Unix socket detection is unnecessary. --- crates/dbx-core/src/db/mysql.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crates/dbx-core/src/db/mysql.rs b/crates/dbx-core/src/db/mysql.rs index 06e033cb3..307ebfcba 100644 --- a/crates/dbx-core/src/db/mysql.rs +++ b/crates/dbx-core/src/db/mysql.rs @@ -188,7 +188,8 @@ fn create_pool(url: &str) -> Result { let pool_opts = mysql_async::PoolOpts::new() .with_constraints(mysql_async::PoolConstraints::new(1, 5).unwrap()) .with_inactive_connection_ttl(Duration::from_secs(300)); - let builder = mysql_async::OptsBuilder::from_opts(opts).stmt_cache_size(0).pool_opts(Some(pool_opts)); + let builder = + mysql_async::OptsBuilder::from_opts(opts).stmt_cache_size(0).prefer_socket(false).pool_opts(Some(pool_opts)); Ok(MySqlPool::new(builder)) }