Commit Graph
345 Commits
Author SHA1 Message Date
t8y2 23edbe391f feat(postgres): support schema comments 2026-06-24 18:35:43 +08:00
t8y2 4558984016 fix(clickhouse): support data grid editing 2026-06-24 13:17:27 +08:00
t8y2 f51d622d3f fix(postgres): decode binary address types 2026-06-24 10:55:40 +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
zipg 1c7ef0d235 feat(mysql): optimize table structure loading 2026-06-23 17:31:37 +08:00
t8y2 fc9f97b6b5 fix(redis): speed up large key scans 2026-06-23 15:14:24 +08:00
t8y2 280e94e3c1 fix(postgres): avoid backslash LIKE escape 2026-06-23 00:43:10 +08:00
t8y2 0b6e1579ca feat(agent): add execution context recovery 2026-06-22 22:15:16 +08:00
t8y2 e55dbe2acc fix(mysql): avoid key usage join for columns 2026-06-22 18:46:45 +08:00
t8y2 9de738e76c fix(mongo): normalize invalid direct connection URL 2026-06-22 18:43:40 +08:00
t8y2 f52064bd0e fix(agent): extend metadata RPC timeout 2026-06-22 18:17:11 +08:00
t8y2 6e6f7bda0b fix(mongo): preserve dates during document edits 2026-06-22 17:50:17 +08:00
t8y2 628fadf517 fix(sqlserver): preserve batch result sets 2026-06-22 17:07:10 +08:00
t8y2 791d55661e fix(agent): prevent zombie processes on agent cleanup
Root cause:
- AgentDriverClient::kill() is called during Drop to clean up child processes
- Old implementation called child.wait() and ignored errors with let _
- When wait() fails (e.g., process already killed by signal), child is not reaped and becomes zombie

Fix:
- Use try_wait() non-blocking polling, up to 100ms timeout
- Avoid long blocking in Drop during async cleanup
- Still perform final blocking wait() as fallback after timeout
- Log all wait errors for debugging

Impact:
- All JDBC agents (Oracle/DB2/DM8/XuguDB etc.)
- Prevents zombie process accumulation during long-running sessions
2026-06-22 14:59:05 +08:00
t8y2 4346192713 feat(mongodb): show collection metadata in sidebar 2026-06-22 12:42:31 +08:00
t8y2 9418e37c04 feat(settings): add show execution target picker option and related UI elements 2026-06-22 12:05:47 +08:00
hb 4e07f73157 fix(mysql): preserve temporary tables in client session pools
Disable COM_RESET_CONNECTION for single-connection session pools
(max_connections == 1) so that MySQL session state such as TEMPORARY
TABLEs is not cleared when a connection is returned to the pool.

Closes #1509
2026-06-22 00:37:41 +08:00
t8y2 0d4e35ee02 fix(core): increase PostgreSQL and MySQL connection pool size
- PostgreSQL: 4 -> 10 connections
- MySQL: 3 -> 10 connections

Fixes #1516
2026-06-21 21:01:15 +08:00
t8y2 6c571a57ab fix(mysql): cancel running SQL imports 2026-06-21 09:14:54 +08:00
Scars 4590057456 fix(postgres): cast relkind to text to prevent deserialization panic 2026-06-20 22:24:29 +08:00
林剑凛 41edb3da91 feat(mongo): add database and collection deletion 2026-06-20 22:22:04 +08:00
dalew f71406c1c2 feat(redis): add slowlog panel and integrate with backend APIs
* feat(redis): add slowlog panel and integrate with backend APIs

* fix(redis):Slowlog Panel Compatibility Issues
2026-06-20 21:47:14 +08:00
dbin0123 92d3f64eae feat: fix connection cascade failure, add auto-recovery for all drivers 2026-06-19 23:06:21 +08:00
t8y2 d59997c090 feat(objects): add table statistics columns 2026-06-19 14:35:32 +08:00
t8y2 4186c94dd4 fix(agent): clarify protocol capability contract 2026-06-19 14:18:19 +08:00
t8y2 dad548e41b fix(sqlserver): report affected rows for CUD batches 2026-06-19 12:59:16 +08:00
t8y2 e27d34a34a feat(vector): add qdrant and milvus support 2026-06-19 10:07:56 +08:00
t8y2 440e675a0e fix(postgres): retry queries with stale cached prepared statements 2026-06-19 01:04:14 +08:00
林剑凛 b120492737 fix(mongo): speed up large collection loading with estimated counts 2026-06-18 19:56:39 +08:00
8c097a3fd1 fix(redis): resolve large integer precision loss in JSON tree view
* fix(redis):format INFO output as plain text in cluster mode

* fix(client): remove default JRE download on first launch

* fix(grid): keep row number colors stable

* feat(grid): add pinned query result history

* fix(grid): limit field count badge to data tabs

* fix(settings): persist sidebar page size

* fix(redis): resolve large integer precision loss in JSON tree view

---------

Co-authored-by: Scars <yss2813483011xxl@gmail.com>
Co-authored-by: t8y2 <1156263951@qq.com>
2026-06-18 17:56:22 +08:00
Scars a0475d80e3 fix(desktop): complete redis cluster transport routing 2026-06-18 14:57:53 +08:00
t8y2 17f186db26 fix(sqlserver): rebuild pool after driver panic 2026-06-18 13:43:03 +08:00
t8y2 9e75f62dbf feat(sqlserver): support linked server browsing 2026-06-18 13:17:44 +08:00
t8y2 ca427715af fix(sqlserver): read tinyint precision/scale/length columns as u8 from tiberius 2026-06-18 13:08:09 +08:00
ptma e7ee0c9ec1 fix(questdb): handle materialized views and unify table_type naming
* fix(questdb): handle materialized views

* fix(test): fix rust test problems
2026-06-18 11:40:57 +08:00
t8y2 ad0a9075b5 fix(core): include table when dropping IRIS index 2026-06-18 11:00:19 +08:00
t8y2 00541291e3 feat(ssh): support custom SSH agent socket path 2026-06-18 00:15:08 +08:00
t8y2 71db24813e fix(informix): add informix_server field to test helpers 2026-06-17 22:59:22 +08:00
t8y2 1aa48cf636 fix(informix): add informix_server field for direct INFORMIXSERVER input 2026-06-17 22:59:13 +08:00
至高吾尚 f89bf310b4 fix(mysql): fix garbled Chinese in sidebar table comment
Apply fix_potential_double_encoding() to table/object comment fields
returned by list_tables(), list_table_status_show(), and row_to_object(),
consistent with the existing fix for column comments (c21b5d0).

The sidebar tree displays TABLE_COMMENT directly from these functions,
so when MySQL returns Latin1-decoded bytes for UTF-8 content, the
comment shows as garbled text like 'OAéƒ¨é—¨åŒæ­¥è¡¨' instead of
'OA部门同步表'.
2026-06-17 21:16:30 +08:00
bigliangzao 7643148708 fix(mysql): prevent panic on Chinese characters in WHERE clause
Fix UTF-8 boundary issues in mysql_top_level_limit, parse_usize_token,
and mysql_keyword_at functions that caused crashes when SQL contains
Chinese characters in string literals.

The issue was introduced in commit 021e1682 which added byte-level
indexing without proper UTF-8 boundary checks. When parsing SQL with
Chinese text (e.g., \"WHERE name LIKE '%批量保存%'\"), the byte index
could point to the middle of a multi-byte UTF-8 character, causing
Rust to panic when slicing the string.

Changes:
- parse_usize_token: Use std::str::from_utf8 to validate slice before parsing
- mysql_keyword_at: Add is_char_boundary checks for safe string slicing
- mysql_top_level_limit: Skip non-UTF-8-boundary bytes after incrementing index

This ensures all byte-level indexing operations stay on valid UTF-8 boundaries,
preventing panics while maintaining the original functionality of detecting
LIMIT clauses for bounded result set collection.

Fixes crash reported by users when executing queries with Chinese conditions.
2026-06-17 19:00:05 +08:00
t8y2 9a66bc4fa2 style: remove extra blank line in redis_driver 2026-06-17 15:59:21 +08:00
dalew 4888e637c7 fix(redis): unify aggregated INFO output format in console
* fix(redis):format INFO output as plain text in cluster mode

* fix(redis): unify aggregated INFO output format in console
2026-06-17 14:54:51 +08:00
luoianun 021e1682c3 fix(mysql): avoid Aliyun ADB timeout for bounded text results 2026-06-17 14:53:13 +08:00
dalew 8486d27cb2 fix(redis): unify INFO category command output in cluster mode
* fix(redis):format INFO output as plain text in cluster mode

* fix(redis): unify INFO category command output in cluster mode

In Redis cluster mode, the INFO command (with category parameters) returns aggregated results from multiple primaries. This fix formats the output as human-readable plain text, consistent with standalone mode, to improve readability.

Closes #1326
2026-06-17 11:20:07 +08:00
t8y2 29e7267d31 fix(mongodb): set directConnection=true for single-host to bypass replica set discovery 2026-06-17 01:31:08 +08:00
t8y2 74d9bbd3e5 fix(sqlserver): replace OFFSET/FETCH with TOP/ROW_NUMBER for pre-2012 compatibility 2026-06-17 01:26:56 +08:00