Commit Graph
920 Commits
Author SHA1 Message Date
t8y2 05058bd777 feat(release): bump app version to 0.5.40 2026-06-28 02:24:39 +08:00
zipgandzipg cd55c3d3ac fix(sqlserver): fix unchanged FK false warning and identity column detection
* Fix: improve sidebar comment font rendering

* Fix: 修复 SQL Server 表结构保存时未修改外键误报

---------

Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-06-28 00:28:55 +08:00
zipgandzipg dbc9072d30 fix(data-grid): convert empty string to NULL for nullable non-text columns
Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-06-28 00:11:22 +08:00
zipgandzipg d65f656704 fix(codex): fix Codex CLI path resolution on Windows under nvm
Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-06-27 23:54:29 +08:00
zipgandzipg 731fd0e470 fix(mysql): 避免主键谓词使用 BINARY
Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-06-27 21:46:13 +08:00
Orwen Xiang 44884efa9b feat(h2): add split JDBC URL support 2026-06-27 20:03:16 +08:00
zipgandstaff 03c06fb6ef Fix: 修复 MySQL 尾行注释导致总数不显示
Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-27 17:26:17 +08:00
t8y2 754b988ca5 fix(data-grid): format Oracle timestamp literals 2026-06-27 16:29:00 +08:00
zipgandstaff a8fa8bed5b Fix: 修复 MongoDB 默认库影响认证库
Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-27 15:14:57 +08:00
hb 388d59fb4a fix(redis): handle empty scan batches and exact key lookup fallback (#1992) 2026-06-27 15:09:46 +08:00
zipgandstaff b85b14bfde Fix: 优化 SQL 库启动加载
Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-27 15:07:26 +08:00
t8y2 c289dda97d fix(mysql): skip delimiter commands in editor 2026-06-27 15:04:13 +08:00
miracle de39c1662d feat: ZK 节点树改为真正懒加载 (#1987)
* feat: lazy load zookeeper nodes

* fix: preserve zookeeper focused path hierarchy
2026-06-27 15:02:09 +08:00
t8y2 9ae4d4b59e fix(duckdb): allow opening non-existent database files 2026-06-27 15:01:06 +08:00
t8y2 73120883b6 fix(dameng): separate materialized view metadata 2026-06-27 14:29:44 +08:00
hb 7b08307896 fix: prevent implicit database creation on connection for SQLite (#1986) 2026-06-27 12:31:02 +08:00
二丫讲梵 4d435e2aab ✨feat(nacos): 增加应用名称支持,优化配置查询功能
- 新增应用名称字段到配置查询接口
- 更新前端界面以支持应用名称输入
- 调整后端逻辑以处理应用名称参数
2026-06-27 12:14:29 +08:00
二丫讲梵 c0bd9313d7 feat(nacos): 增强 NacosAdmin 接口支持命名空间列表和配置发布表单
- 添加 list_namespaces 方法,支持从 Nacos 获取命名空间列表
- 重构 publish_config 方法,使用 build_publish_forms 函数构建 V3 和 V1 的发布表单
- 增加 namespace_list_error 函数,改进命名空间列表错误处理
- 添加单元测试,验证表单构建和错误处理逻辑
2026-06-27 11:33:07 +08:00
t8y2 c15fb85561 fix(doris): load indexes from table DDL 2026-06-27 11:06:49 +08:00
t8y2 2a90567545 fix(mysql): support semicolon delimiter commands 2026-06-27 10:16:59 +08:00
huangyemin 4ad6723512 feat(ai): support custom Anthropic messages API 2026-06-27 10:02:13 +08:00
t8y2 c4db815393 fix(clickhouse): support scalar WITH result export 2026-06-27 01:59:50 +08:00
zipgandstaff c4fe7c8ee8 fix: 修复 PostgreSQL 空字符串默认值处理 (#1970)
Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-27 00:53:53 +08:00
t8y2 23b44cc2b9 fix(mcp): add direct Redis command execution 2026-06-26 22:27:31 +08:00
miracleandonceMisery d128604743 fix(connection): 修复数据库连接超时后无法可靠恢复的问题
* feat(core): implement PIP-0001 database connection timeout recovery

- Add DbOperationBudget struct for unified execution budget model
- Add deadpool create/recycle timeout for PostgreSQL pools
- Add checkout_postgres_client helper replacing 14 bare pool.get() calls
  with timeout + cancel token support
- Fix PostgreSQL TLS cancel: rebuild TLS connector from stored context,
  fallback to NoTls on failure
- Add timeout to MySQL kill_query and kill_query_with_opts (5s)
- Extend is_connection_error to match deadpool pool timeout messages
- Unify keepalive default to 30s (was 60s Rust / 0s frontend mismatch)
- Inject PostgreSQL TCP keepalive params (idle=30s, interval=10s, retries=3)
- Inject MySQL tcp_keepalive=30s in OptsBuilder
- Make MySQL inactive_connection_ttl configurable from idle_timeout_secs
- Add stage-based structured logging for pool.checkout/health.check/cancel
- Store PostgresCancelContext in AppState for TLS cancel reconstruction
- Clean up cancel contexts on pool removal/drain
- Add unit tests for DbOperationBudget and pool timeout error detection

* fix(core): align timeout recovery with PIP-0001

* fix(core): handle timeout recovery review issues

* fix(core): complete connection timeout recovery

* fix(core): fall back postgres cancel connector build

* refactor: revert comment translations to English in connection.rs and query.rs

- Revert DbOperationBudget doc comments to English (query.rs)
- Revert PostgresCancelContext and TLS cancel comments to English (connection.rs)
- Keep Chinese error-matching strings in is_connection_error unchanged

---------

Co-authored-by: onceMisery <onceMisery@users.noreply.github.com>
2026-06-26 21:41:56 +08:00
t8y2 796b0ce5b7 fix(dameng): restore exports with identity columns 2026-06-26 21:25:39 +08:00
t8y2 fe03f740b7 fix(postgres): handle legacy materialized view source 2026-06-26 19:39:08 +08:00
二丫讲梵 10aff74072 feat(export-tracker): 增强导出任务跟踪功能 (#1958)
- 添加了对数据库导出、SQL 文件导出和数据传输任务的支持
- 引入了新的状态和错误处理机制
- 实现了任务的重叠检查,防止同时进行相同目标表的数据传输
- 更新了 API 调用以支持新的任务类型
- 增加了相应的国际化文本
- 添加了单元测试以确保新功能的正确性
2026-06-26 18:50:25 +08:00
林剑凛 79c2cd8bdc fix: launch Codex npm shim through node on Windows (#1960) 2026-06-26 18:48:46 +08:00
zipgandstaff 90bed417e9 fix: 完善 SQL 表名和字段语义诊断 (#1961)
Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-26 18:47:10 +08:00
HaoNan Ye 11ed3a0d3b fix(postgres): include public schema in search_path for PostGIS functions (#1817) 2026-06-26 17:58:07 +08:00
Oleksandr Liakhevych def59969e5 fix(ai): fix Windows Codex CLI launch with npm-installed shims (#1953) 2026-06-26 17:45:45 +08:00
ptma fdd7d2095b feat(influxdb): support influxdb epoch parameter (#1946) 2026-06-26 17:33:58 +08:00
t8y2 2f06ca5fe3 fix(data-compare): batch sync execution 2026-06-26 17:10:26 +08:00
林剑凛 895f116b04 fix(ai): resolve Codex CLI on Windows (#1935) 2026-06-26 17:06:24 +08:00
zipgandstaff 2aba40ecb7 fix: 修复 SQL Server 查询结果分页重复第一页 (#1927)
Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-26 15:58:10 +08:00
t8y2 cdfe576024 fix(structure): load dynamic data type options 2026-06-26 15:22:33 +08:00
jischeng 21a07651db fix(starrocks): detect primary keys via information_schema.COLUMNS
* fix(starrocks): detect primary keys via information_schema.COLUMNS

The Doris family (StarRocks/Doris) loaded columns through `SHOW COLUMNS`
for performance (perf(doris) commit 69ecde8f). However StarRocks reports
the `Key` column as `YES`/`NO` instead of MySQL's `PRI`, so `is_primary_key`
was never set and the data grid always showed "无主键定位" (keyless edit
warning) for tables that actually have a primary key.

Switch to `get_columns`, which queries information_schema.COLUMNS first —
where `COLUMN_KEY = 'PRI'` correctly identifies primary keys (and only real
primary keys, not duplicate-key sort columns) — and still falls back to
`SHOW COLUMNS` when information_schema is unavailable.

Verified against a live StarRocks connection: information_schema.COLUMNS
reports `COLUMN_KEY = 'PRI'` for primary-key columns while `SHOW COLUMNS`
reports `Key = YES`. Paimon catalog tables are unaffected (both paths
report no primary key for them).

* fix(test): add redis_scan_page_size to ConnectionConfig test helpers

`d815a16b` (feat(redis): move scan page size to connections) added
`redis_scan_page_size` to `ConnectionConfig` but did not update several
struct-literal test helpers, so `cargo clippy --workspace --all-targets`
fails with `missing field redis_scan_page_size`. This is a pre-existing
breakage on `main` (CI has been red since that commit) and is unrelated to
this PR's actual change; included here only to unblock CI.

Helpers fixed here:
- src-tauri/src/commands/connection.rs (`mongodb_config`)
- crates/dbx-web/src/routes/connection.rs (`sqlite_config`)
2026-06-26 13:25:40 +08:00
Abeautifulsnow 5f2b24d700 fix(ai): enforce SQL task contracts structurally instead of keyword heuristics
* fix: enforce agent task contracts

* fix(ai): enforce SQL task contracts structurally
2026-06-26 13:18:49 +08:00
jischeng 82fd078c10 fix(mysql): health-check pooled connection before DDL query
* fix(mysql): health-check pooled connection before DDL query

`mysql_ddl` fetched a connection with a raw `pool.get_conn()` and issued
`SHOW CREATE TABLE` directly, unlike other read paths (`get_columns`,
`list_indexes`, ...) which go through `get_conn_with_health_check`. A
pooled connection that went stale while idle (server closed it after its
idle timeout, NAT/firewall dropped the TCP state, ...) would then fail on
the first DDL request after a period of inactivity, surfacing a low-level
connection error that a manual refresh would mask.

Route `mysql_ddl` through `get_conn_with_health_check` so stale
connections are pinged and replaced before the query runs, matching the
rest of the MySQL metadata path.

* fix(test): add redis_scan_page_size to ConnectionConfig test helpers

`d815a16b` (feat(redis): move scan page size to connections) added
`redis_scan_page_size` to `ConnectionConfig` but did not update several
struct-literal test helpers, so `cargo clippy --workspace --all-targets`
fails with `missing field redis_scan_page_size`. This is a pre-existing
breakage on `main` (CI has been red since that commit) and is unrelated to
this PR's actual change; included here only to unblock CI.

Helpers fixed here:
- src-tauri/src/commands/connection.rs (`mongodb_config`)
- crates/dbx-web/src/routes/connection.rs (`sqlite_config`)
2026-06-26 13:16:52 +08:00
LRcoding eb664dba4c fix(core): support fuzzy table search 2026-06-26 13:15:01 +08:00
t8y2 c3d47ece2c fix(sqlserver): support 2008 query pagination 2026-06-26 12:03:25 +08:00
t8y2 2b6a8919d2 fix(sqlserver): display binary cells as hex 2026-06-26 11:44:32 +08:00
dalew d815a16b86 feat(redis): move scan page size to connections 2026-06-26 11:13:34 +08:00
t8y2 486c7a69c6 chore(release): bump app version to 0.5.39 2026-06-26 02:47:33 +08:00
t8y2 54e0393ab3 fix(transfer): preserve PostgreSQL bytea migration 2026-06-26 02:05:49 +08:00
t8y2 dff94d60f5 fix(oceanbase): show oracle mode schemas in sidebar 2026-06-26 02:03:00 +08:00
lexmin0412 c2376494d3 feat(vector): add ChromaDB support 2026-06-26 01:41:36 +08:00
t8y2 485188322b feat(clickhouse): show table size and comments 2026-06-26 01:37:13 +08:00
二丫讲梵 a149d9baa4 fix(nacos): route admin API through SSH/proxy transport 2026-06-26 01:01:08 +08:00