Commit Graph
1758 Commits
Author SHA1 Message Date
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
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
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
t8y2 1098056152 fix(sqlserver): stream query result exports 2026-06-25 16:16:30 +08:00
t8y2 b2edf7cad6 fix(oracle): apply visible schema filter 2026-06-25 15:19:20 +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 b367861fe1 fix(sqlserver): cast completion null placeholders 2026-06-25 12:35:08 +08:00
t8y2 217fa65377 fix(release): bump version to 0.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
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 b5bbdfa5e9 fix(dameng): use fetch pagination for transfer 2026-06-25 01:09:48 +08:00
miracle 0effda91b3 feat(zookeeper): add agent client browsing and node management 2026-06-25 00:40:48 +08:00
t8y2 bf9ef4365b feat(vector): add weaviate support 2026-06-25 00:31:27 +08:00
t8y2 5522842b19 fix(ci): fix broken tests after external-sql and xlsx changes 2026-06-25 00:16:11 +08:00
t8y2 0e2d0b0413 feat(editor): keep semicolon-gap execution on previous statement 2026-06-24 22:28:21 +08:00
t8y2 35af7ac721 feat(sqlserver): save edited views with alter view 2026-06-24 21:39:02 +08:00
miracle 588ba3352d feat: stream query result CSV/XLSX exports
* docs: add query result streaming export design

* feat(core): stream query result exports

* feat: expose query result streaming export APIs

* feat(desktop): stream query result exports from grid

* fix: route query result export cancellation through its command

* fix: reduce query export batch size and cancel latency

* opt: del local test files
2026-06-24 21:18:11 +08:00
jischeng 849caf4b39 feat(ssh): probe none authentication before credentials
Some SSH proxies and jump-hosts authenticate with the "none" method,
requiring no password or key. dbx only tried publickey/password/agent,
so connecting through such a host failed with "SSH public key
authentication failed" — and the frontend forced users to enter a
credential just to pass validation.

- Backend: probe authenticate_none first in connect_and_authenticate;
  on rejection fall back to the configured credential method, matching
  standard openssh behavior.
- Frontend: drop the "password/key/agent required" check in
  validateTransportLayers so passwordless hops can be saved and tested.

Refs #1628
2026-06-24 21:05:57 +08:00
t8y2 b356aa8df5 fix(connection): recover idle connection pools 2026-06-24 20:12:24 +08:00
t8y2 a87e4be029 fix(transfer): format SQL Server bit booleans 2026-06-24 19:54:19 +08:00
t8y2 4f6b92316a feat(layout): persist query results pane splitter position 2026-06-24 19:28:14 +08:00
zipgandstaff 902419a3b9 fix(postgres): compatibility with older PostgreSQL versions for table DDL
* Fix: 修复 PostgreSQL CTE DML 分页改写

* fix: 兼容 PostgreSQL 旧版本索引 DDL 查询

---------

Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-24 19:12:28 +08:00
t8y2 23edbe391f feat(postgres): support schema comments 2026-06-24 18:35:43 +08:00
zipgandstaff 7b47edde3d fix(postgres): prevent CTE DML statements from being paginated
Co-authored-by: staff <staff@qimaos-MacBook-Pro.local>
2026-06-24 18:08:31 +08:00
t8y2 6689489cfb fix(sqlserver): paginate query results with offset fetch 2026-06-24 17:59:02 +08:00
t8y2 b56d680cbe fix(yashandb): keep trigger blocks together 2026-06-24 16:58:47 +08:00
t8y2 95137b70a6 fix(oracle): speed up metadata refresh 2026-06-24 16:15:25 +08:00
zipg 5846f85ce6 fix(sidebar): fix advanced view sidebar table search scope 2026-06-24 16:04:03 +08:00
t8y2 9621f277bf fix(clickhouse): fix sorted query sql 2026-06-24 15:26:21 +08:00
Vergil Lai de65189ed0 fix(postgres): correct MATERIALIZED VIEW DDL keyword 2026-06-24 14:53:46 +08:00
t8y2 886c11f8e6 fix(postgres): cast grid like filters 2026-06-24 14:04:01 +08:00
Abeautifulsnow ebfc50e4ff fix(agent-loop): preserve output on exhaustion, interruption, and cancellation 2026-06-24 13:27:23 +08:00
t8y2 4558984016 fix(clickhouse): support data grid editing 2026-06-24 13:17:27 +08:00
t8y2 31217d63a1 fix(mysql): restore non-session pool size 2026-06-24 11:30:26 +08:00
t8y2 222584280e fix(schema): support materialized view object source retrieval 2026-06-24 11:25:11 +08:00
t8y2 f51d622d3f fix(postgres): decode binary address types 2026-06-24 10:55:40 +08:00
t8y2 6e3e2b2e83 fix(completion): import duckdb completion helper in schema tests 2026-06-24 02:15:45 +08:00
t8y2 989dd09077 fix(completion): import db module in schema tests for clippy 2026-06-24 02:04:36 +08:00
不吃西葫芦 9a0a32e04c fix(connection): recover connection state after VPN failures (#641) 2026-06-24 01:44:46 +08:00
二丫讲梵 3ebfae05a2 feat(nacos): add Nacos management console (#1456) 2026-06-24 01:19:18 +08:00
t8y2 cebb39cb80 feat(completion): add scoped metadata assistant 2026-06-24 00:40:28 +08:00
hb 3f65297f25 fix(highgo): preserve nullable metadata for pg-compatible agents (#1585) 2026-06-24 00:35:47 +08:00
Guoyu Su 90fd77cb9e perf(redis): reduce large key search payload and render cost (#1672) 2026-06-23 22:57:03 +08:00
t8y2 49705a1a8f feat(sqlite): support custom database file suffixes 2026-06-23 20:15:06 +08:00
t8y2 7b03af97c8 fix(query): support clickhouse strict joins 2026-06-23 19:10:14 +08:00
t8y2 f96faa0664 fix(query): preserve unsafe query integers 2026-06-23 19:01:57 +08:00