rarnu
|
51e62d4c60
|
SSH 隧道连接优化 (#517)
* 1. 增加 SSH 隧道保活
每 30 秒发一次 keepalive 包,防止 NAT/防火墙丢弃空闲连接。
2. SSH 隧道自动重连
整体逻辑为:
└─ 初始连接(失败则立即报错,防止 credential 错误时无限重试)
└─ 绑定 TcpListener(端口不变)
└─ 启动 tunnel_reconnect_loop
├─ forward_loop() ← 转发数据,检测到 session 断开后退出
├─ 睡眠 5 秒
├─ connect_and_authenticate() 重连
├─ 重连失败?→ 继续等 5 秒 → 重试
└─ 重连成功 → 回到 forward_loop()
* 修复rust代码风格
* 1:指数退避
延迟序列: 5s → 10s → 20s → 40s → 60s → 60s → ...(封顶 60s)
不再是固定 5 秒重试,避免临时故障时刷屏。
2:最大重试次数
连续失败 10 次后放弃,打一条 fatal 日志 max reconnect attempts exhausted, giving up,然后隧道任务退出。不再无限循环。
3:日志改进
失败日志现在带进度:SSH reconnect failed (host:port, attempt 3/10): error
成功重连日志也带 (attempt N) 方便排查。
|
2026-05-29 13:31:31 +08:00 |
|
rarnu
|
4f0a13f24f
|
add: 为AI设置增加了thinking的开关
|
2026-05-12 01:16:40 +08:00 |
|
rarnu
|
c18593d003
|
add: 修改布局方案中选中项的样式为浅蓝色(与AI内API选项的样式一致)
|
2026-05-11 23:33:27 +08:00 |
|
rarnu
|
e8ab15140a
|
add: 将AI大模型的设置移至设置页
|
2026-05-11 23:25:27 +08:00 |
|
rarnu
|
c6aa0cf84f
|
1. 修复 ORDER BY watch 重复数组
2. WHERE / ORDER BY 输入框 @blur 处理
|
2026-05-09 15:51:13 +08:00 |
|
rarnu
|
9261cb71a2
|
1. src/components/grid/DataGrid.vue
- 左侧搜索框:移除了 WHERE 支持(isWhereSearch 永远返回 false),现在是纯客户端文本过滤。保留了列名代码提示功能(Tab 补全、箭头导航)。
- WHERE 框:新增列名代码提示(独立的下拉建议面板),支持单双引号和小括号自动配对,Enter 直接应用过滤。
- ORDER BY 框:新增列名代码提示(同样的建议面板),Enter 直接应用排序。
- 刷新/回滚/提交:reload emit 现在传递 4 个参数 (sql, searchText, whereInput, orderBy),确保刷新后所有条件不丢失。
- 分页/排序:统一使用新的 currentWhereInput() 函数,替代已废弃的 activeWhereInput。
- 删除了 applyWhereSearch() 和 onSearchEnter()(左侧搜索不再需要执行 WHERE 查询)。
2. src/composables/useDataGridActions.ts
- onReloadData() 签名改为接受 4 个参数 (sql, searchText, whereInput, orderBy)。
- table-data 模式刷新时,用 buildTableSql(tab, { whereInput, orderBy }) 重建 SQL,保留 WHERE 和 ORDER BY 条件。
3. src/components/layout/ContentArea.vue
- reload emit 签名同步更新为 4 个参数。
- results 模式和 table-data 模式两个 DataGrid 的 @reload 处理器都转发全部 4 个参数。
4. src/App.vue
- ContentArea 的 @reload 处理器转发 4 个参数给 onReloadData()。
|
2026-05-09 15:04:06 +08:00 |
|
rarnu
|
8a249a2194
|
add: 在结果集中增加数据过滤的功能 (#163)
* add: 在结果集中增加数据过滤的功能
* 1. 提取 isResultsContext — 新增具名计算属性,替代魔法字符串 results,模板和逻辑中统一使用。
2. wherePredicate 在 results 场景下短路 — 加了 canUseWhereSearch.value ? ... : undefined 守卫,避免在结果集界面无意义地调用 normalizeWhereInput()。在 results 上下文下:
- wherePredicate → undefined
- isWhereSearch → false(因为 canUseWhereSearch 为 false)
- activeWhereInput → undefined
- 搜索框 placeholder 切换为纯 search(由 canUseWhereSearch 控制,已存在)
- 应用按钮隐藏(v-if=isWhereSearch,已存在)
逻辑链现在是一致的:canUseWhereSearch === false 时,所有 where 相关功能(解析、建议、按钮、回车提交)全部失效
|
2026-05-08 18:33:59 +08:00 |
|
rarnu
|
47ad960bbb
|
Fix: DataGrid数据集和工具栏的修复及加强 (#157)
* fix: 修复结果集内的数据过滤功能
* add: 将原先误删的WHERE查询加回
* add: 合并事务栏和搜索栏,并且在结果集中不启用搜索功能
* add: 修复在表数据和结果集模式下,DataGrid刷新时未保留查询条件的问题,将表数据和结果集的处理逻辑进行拆分
* add: 与主分支合并,解决冲突
* add: 恢复i18n
* add: 恢复useDataGridActions.ts
* add: 恢复ContentArea.vue
* add: 恢复DataGrid.vue
* fix: 修复括号自动配对的bug
* add: 将DDL按钮移到表数据编辑的第一行尾,并且不在DataGrid中显示
|
2026-05-08 16:04:21 +08:00 |
|
rarnu
|
53c5c28542
|
fix: 修复结果集内的数据过滤功能 (#145)
|
2026-05-07 22:05:27 +08:00 |
|
rarnu
|
cacaf4d7a2
|
1. Rust 事务连接池问题 - 用 pool.acquire() 获取专用连接,所有语句在同一物理连接上执行
2. BEGIN 失败静默回退 - 直接返回错误,不再静默降级
3. queryStore.ts - 清除了 25+ 条 console.log,合并了两个分支的重复逻辑
4. DataGrid.vue - shouldUseTransaction() 改为 computed 属性 useTransaction
|
2026-05-07 16:55:32 +08:00 |
|
rarnu
|
814fda7433
|
add: 增加对于查询得到的结果集直接进行数据编辑的功能。当查询是单表且包含主键(有联合主键时包含全部主键)时,可以在结果集内双击单元格修改数据,修改结果以事务形式提交或回滚。
|
2026-05-07 15:09:59 +08:00 |
|
rarnu
|
969f441753
|
add: 对SQL编辑器增加Ctrl(Mac下是Cmd)+左键点击的功能,点击表名可以查看建表DDL,点击列名可以查看列信息 (#122)
* add: 对SQL编辑器增加Ctrl(Mac下是Cmd)+左键点击的功能,点击表名可以查看建表DDL,点击列名可以查看列信息
* add: 修复联表情况下获取列信息的问题
* fix: 修复联表场景下的SQL语句提示
* remove: 移除不需要的调试打印
* add: 补充'列详情'多语言字段
* remove: 移除不必要的函数
* remove: 移除不必要的导入
* add: 目前会分析SQL语句内引用的表,并且只加载对应的表内的列信息,不再对全表做列信息拉取
|
2026-05-07 01:04:52 +08:00 |
|
rarnu
|
d16372c88d
|
fix: 按先前的建议重新修了一下,目前先判断类型是否UUID,而不是先走fallback
|
2026-05-05 23:38:40 +08:00 |
|
rarnu
|
8f78c2c882
|
fix: 修复Postgres的UUID类型字段被显示为NULL的问题
|
2026-05-05 22:49:37 +08:00 |
|
rarnu
|
1dbe49cafb
|
fix: AI大模型配置,选择的API不明显,添加蓝色的边框来更明确的指出
|
2026-05-02 21:26:46 +08:00 |
|
rarnu
|
c408a2bea0
|
fix: 重新加入@babel/runtime依赖,原因是不加则CodeMirror-Theme会报错
|
2026-05-02 17:29:14 +08:00 |
|
rarnu
|
4d2c34ecb1
|
add: 将loadTheme抽象到外部模块,使用DEFAULT_EDITOR_SETTINGS默认值,增加老的配置项迁移
|
2026-05-02 17:19:34 +08:00 |
|
rarnu
|
e5f3f3bad8
|
fix: 清理无用的依赖项
|
2026-05-02 17:19:34 +08:00 |
|
rarnu
|
7722a17642
|
add: 增加对CodeMirror的设置页
|
2026-05-02 17:19:29 +08:00 |
|
rarnu
|
733baef65a
|
fix: 删掉不存在的属性
|
2026-05-02 16:39:58 +08:00 |
|
rarnu
|
1209a5dad6
|
add: 增加设置的预览框
|
2026-05-02 15:34:36 +08:00 |
|
rarnu
|
4af43e35e1
|
add: 增加对CodeMirror的设置页
|
2026-05-02 14:58:55 +08:00 |
|