Commit Graph

840 Commits

Author SHA1 Message Date
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
zipg 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
zipg 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
t8y2 21ec91a3d5 feat(schema-diff): add table filters 2026-06-23 18:20:15 +08:00
zipg 1c7ef0d235
feat(mysql): optimize table structure loading 2026-06-23 17:31:37 +08:00
t8y2 5c4c87a042 feat(grid): align query result editing 2026-06-23 17:07:30 +08:00
t8y2 fc9f97b6b5 fix(redis): speed up large key scans 2026-06-23 15:14:24 +08:00
t8y2 451b3f82cd feat(release): bump version to 0.5.37 2026-06-23 12:20:08 +08:00
t8y2 cc7b034341 fix(ai): omit Kimi test connection temperature 2026-06-23 12:05:50 +08:00
lexmin0412 c026647785
fix(ai): handle non-JSON error response in AI connection test
Replace res.json() with res.text() + fallback JSON parse so that
non-JSON error bodies (e.g. HTTP 502 with empty body) no longer
produce the unclear 'error decoding response body' message.

Also add 502/503/504 to classify_error for proper category prefixes.
2026-06-23 12:04:46 +08:00
t8y2 3a25487dea feat(agents): move agents into dbx repo 2026-06-23 11:38:16 +08:00
t8y2 2f2fc36b18 fix(data): align table preview ordering 2026-06-23 10:51:30 +08:00
skyler 752a695018
Merge pull request #1588 from luoianun/feat/prestosql-connector
feat: add PrestoSQL connector
2026-06-23 01:39:06 +08:00
luoianun 8cc7a35c1a feat: add PrestoSQL connector 2026-06-23 01:27:08 +08:00
t8y2 280e94e3c1 fix(postgres): avoid backslash LIKE escape 2026-06-23 00:43:10 +08:00
t8y2 7910a2f68e fix(connection): raise default connect timeout 2026-06-22 23:59:42 +08:00
t8y2 ac3d3a7948 feat(agent): track execution context activity 2026-06-22 23:17:11 +08:00
skyler ee29694776
Merge pull request #1586 from onceMisery/feat/opt-connections
fix: handle connection loss state for new queries
2026-06-22 22:32:02 +08:00
t8y2 0b6e1579ca feat(agent): add execution context recovery 2026-06-22 22:15:16 +08:00
fagao e2f68de455 fix: resolve MySQL connection state desync after disconnect/reconnect
- Use synchronous pool removal in desktop disconnect_db to prevent
  race condition when user quickly disconnects and reconnects
- Rename recordMetadataLoadError to recordConnectionLostError and
  export it for cross-store reuse
- Sync query execution errors back to connection state via
  recordConnectionLostError in queryStore catch blocks
- Add backend check_connection_health method (dbx-core) with Tauri
  command and web route for proactive pool verification
- Add frontend checkConnectionHealth API (tauri.ts/http.ts/api.ts)
- Enhance ensureConnected to verify backend pool health before
  assuming connection is valid, auto-reconnect if stale
2026-06-22 20:40:40 +08:00
t8y2 e55dbe2acc fix(mysql): avoid key usage join for columns 2026-06-22 18:46:45 +08:00