Commit Graph
2458 Commits
Author SHA1 Message Date
ptma c2a3f491cd fix(sql): fix SQL keyword detection failure caused by leading parentheses 2026-06-25 22:27:55 +08:00
zipgandstaff c63c9e451c fix: 优化侧边栏数据库吸顶效果
Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-25 22:17:40 +08:00
miracle 9572a9e52d fix: inject deterministic ORDER BY for dedup query pagination (Doris/MySQL)
Problem: When exporting DISTINCT/GROUP BY query results from distributed
databases like Doris 2.1, LIMIT/OFFSET pagination without ORDER BY causes
duplicate rows across pages because tablet scan order varies between
independent query executions.

Fix: Detect dedup queries (DISTINCT, GROUP BY, HAVING) that lack an
ORDER BY clause and automatically inject a positional ORDER BY (1, 2, ..., N)
before applying LIMIT/OFFSET. Positional references work correctly with
aliases, expressions, CASE WHEN, subqueries, and aggregate functions.

Changes:
- Add dedup_projection_count_without_order_by() using sqlparser to detect
  dedup queries and count projection columns
- Add ormat_positional_order_by() to generate ORDER BY 1, 2, ..., N
- Modify dd_standard_limit() to accept dedup_projection_count and inject
  ORDER BY; wrap in subquery when original query already has LIMIT
- Update dd_outer_standard_limit() to accept an order_sql parameter
- Add 20 unit tests covering Doris, MySQL, PostgreSQL, aliases, expressions,
  subqueries, GROUP BY, UNION, and existing ORDER BY scenarios

All 1203 tests pass (61 in query_result_sql, 11 in query_result_export).
2026-06-25 22:14:08 +08:00
二丫讲梵 16f546ada1 feat(AiAssistant): 增加输入框高度调整功能,AI 回答同时支持输入
- 新增输入框高度拖拽调整功能
- 保存用户偏好的输入框高度
- 优化输入框在窗口调整时的响应
2026-06-25 22:13:04 +08:00
t8y2 1670974fa4 feat: add knowledge base build script 2026-06-25 21:38:28 +08:00
t8y2 87938abb64 fix: suppress unused variable warnings in tray icon theme 2026-06-25 21:38:27 +08:00
t8y2 2f8672cdef fix(transfer): split postgres table ddl 2026-06-25 21:32:12 +08:00
t8y2 0cc0b84c95 fix(sqlserver): align schema tree and creation 2026-06-25 20:37:23 +08:00
二丫讲梵 380d497fd3 fix(nacos): 配置导出功能与配置格式完善
- 添加导出配置文件名生成逻辑
- 实现剪贴板内容验证功能
- 更新多语言支持的导出相关文本
- 增强配置格式处理逻辑
2026-06-25 19:22:55 +08:00
t8y2 0c0e90ab1a feat(export): add table read cursor sessions 2026-06-25 18:37:04 +08:00
t8y2 d5c806f484 fix(manifest): disable driver management for specific drivers(gauss\openguass) 2026-06-25 18:37:04 +08:00
zipgandstaff d0dce7b87b fix(gaussdb): 修复查询分页限制
* 修复驱动管理与首页重叠

* 修复 GaussDB 查询分页限制

---------

Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-25 18:28:31 +08:00
jischeng a595d4d4bd feat(mysql): support external catalogs (Paimon/Hive) via catalog= URL param
StarRocks/Doris expose external storage through a catalog. dbx had no
catalog concept, so connecting to e.g. `paimon_catalog.clip` failed: the
URL path's database was sent as the MySQL handshake schema and rejected
before any `SET catalog` could run, and table listing/preview ran against
the default catalog.

Add an opt-in `catalog=<name>` URL parameter for mysql-family connections:

- `mysql_connection_catalog`: reads the `catalog` param (percent-decoded).
- `mysql_setup_queries`: emits `SET catalog = <name>` when present. Pushed
  last so mysql_async's back-to-front setup execution (Vec::pop) runs it
  before `USE <database>`, which would otherwise fail (the database lives
  in the external catalog). The pool re-runs setup after each reset, so the
  catalog stays current.
- `mysql_async_url`: when a catalog is configured, strip the database path
  from the URL handed to mysql_async so the handshake does not send the
  external-catalog database as the schema. The original URL (with path) is
  still used for setup, so `USE <database>` is emitted correctly.
- Add `catalog` to `is_dbx_handled_mysql_url_param` so mysql_async ignores
  the unknown param.

This is opt-in: only connections that set `catalog=` are affected; all
existing mysql/StarRocks/Doris connections behave unchanged. Configure a
Paimon connection as `database=clip`, `url_params=catalog=paimon_catalog`.

Verified against a StarRocks + Paimon catalog via the dbx MCP bridge:
SHOW DATABASES, SHOW TABLES, DESCRIBE, and unqualified `SELECT * FROM <t>`
all resolve in the selected catalog.
2026-06-25 18:07:26 +08:00
二丫讲梵 bc4e71c628 feat(nacos): allow pinning namespaces 2026-06-25 17:39:46 +08:00
t8y2 42541d1146 fix(export): align row limits and progress 2026-06-25 17:01:32 +08:00
二丫讲梵 c2aeaaa8f7 feat(ai): 添加 Codex CLI 命令解析和环境变量处理功能
- 实现了对 Codex CLI 命令的解析,支持路径解析和环境变量设置
- 增加了对命令环境的处理,确保正确的执行路径
- 添加了相关的单元测试,确保功能的正确性
2026-06-25 16:47:43 +08:00
zipgandstaff d96448b5a5 fix(ui): 修复驱动管理与首页重叠
Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-25 16:46:45 +08:00
t8y2 1098056152 fix(sqlserver): stream query result exports 2026-06-25 16:16:30 +08:00
二丫讲梵 5a3c9f09dc feat(doc): 补齐当前支持的数据库列表
- 在 LandingFooter 组件中添加了指向 CNB 的链接
- 新增 CNB 图标 SVG 文件
- 新增数据库相关图标文件,包括 Milvus、Pulsar、Qdrant、Weaviate 和 Zookeeper
2026-06-25 15:34:36 +08:00
t8y2 b2edf7cad6 fix(oracle): apply visible schema filter 2026-06-25 15:19:20 +08:00
zipgandstaff 1ded7e8332 fix(ui): 保留驱动管理标签页状态
Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-25 14:52:37 +08:00
zipg 150daadb53 fix(grid): optimize data grid interactions 2026-06-25 13:51:14 +08:00
t8y2 84215a7e60 fix(schema): retry transient metadata pool miss 2026-06-25 13:30:32 +08:00
t8y2 2a30f5dc36 fix(schema): use database for mysql metadata 2026-06-25 13:21:34 +08:00
t8y2 3aff6d30ae fix(sidebar): indicate opened databases by icon state 2026-06-25 13:09:02 +08:00
echocdeandEchocde d81e56b2c1 fix(ui): macOS tray icon color invert with system theme (#1783)
* fix(UI): Fix macOS tray icon color not automatically inverting with system theme.

* Delete unused assets

---------

Co-authored-by: Echocde <udixt@outlook.com>
2026-06-25 12:51:02 +08:00
lexmin0412 1ce85b647e refactor(redis): use onClickOutside for TTL edit a11y (#1778) 2026-06-25 12:40:29 +08:00
YangYuS8 6b389dbdfa fix(app): import SQLite file path from Navicat NCX (#1773) 2026-06-25 12:38:11 +08:00
t8y2 b367861fe1 fix(sqlserver): cast completion null placeholders 2026-06-25 12:35:08 +08:00
github-actions[bot] 28d585ef03 chore(packages): release 0.4.14 [skip node-packages-release] packages-v0.4.14 2026-06-25 04:08:31 +00:00
t8y2 5142ca4a4b fix(release): fetch version tags only 2026-06-25 12:07:11 +08:00
t8y2 39c1255af5 fix(release): serialize release workflows 2026-06-25 12:06:11 +08:00
github-actions[bot] aa05199f6d chore: bump module versions [skip ci] 2026-06-25 03:55:04 +00:00
t8y2 5c7951ffd9 feat(release): add unified release script agents-v0.2.36 2026-06-25 11:52:16 +08:00
t8y2 365b9db79d docs(readme): complete database list and bump to 60+ 2026-06-25 11:20:57 +08:00
t8y2 217fa65377 fix(release): bump version to 0.5.38 v0.5.38 2026-06-25 10:59:48 +08:00
ptma 484d20922a fix(postgres): handle PostgreSQL views 2026-06-25 10:54:38 +08:00
lexmin0412 2999d9c56f fix(redis): add blur-to-exit for TTL inline edit (#1724)
* fix(redis): add blur-to-exit for TTL inline edit (#1724)

* fix(redis): ensure TTL input auto-focuses on edit
2026-06-25 10:37:28 +08:00
t8y2 6c2928c82d fix(nacos): initialize visible schemas in tests 2026-06-25 01:43:42 +08:00
大峰 40c93b9dad feat(connection): add visible schema filtering 2026-06-25 01:36:06 +08:00
t8y2 e57ef5220b fix(mcp): include zookeeper connection type 2026-06-25 01:20:08 +08:00
t8y2 b5bbdfa5e9 fix(dameng): use fetch pagination for transfer 2026-06-25 01:09:48 +08:00
Spencer.Chang 529454e6d1 feat(structure): add configurable preset fields for new tables 2026-06-25 01:05:36 +08:00
t8y2 cc2fa698d2 fix: resolve conflict markers in non-sql connection filter lists 2026-06-25 01:02:25 +08:00
t8y2 7ff4363dae fix(xugu): include comments and indexes in DDL 2026-06-25 00:51:17 +08:00
miracle 0effda91b3 feat(zookeeper): add agent client browsing and node management 2026-06-25 00:40:48 +08:00
t8y2 a0df43c391 fix(geometry): preserve polygon holes 2026-06-25 00:37:59 +08:00
miracle 5f7a6096a9 feat(zookeeper): add metadata properties to agent 2026-06-25 00:33:42 +08:00
t8y2 bf9ef4365b feat(vector): add weaviate support 2026-06-25 00:31:27 +08:00
zipg 09cdf07aab fix(sql-library): fix files in folders not opening on click 2026-06-25 00:29:51 +08:00