sqle
sqle copied to clipboard
一个支持多种不同类型数据库,覆盖事前控制、事后监督、标准发布场景,帮助您建立质量规范的SQL全生命周期质量管理平台
## 存在问题 在当前的 main 分支(830352d)中,使用的 golangci-lint 版本为 v1.43.0。目前该版本下的检查未能发现部分类型断言panic的风险,比如 #1576。将该工具升级至 v1.53.2 后可以发现此类风险。 ## 版本选择 根据 https://github.com/golangci/golangci-lint 的 tag 规律发现,该工具的末尾小版本号最大一般也就是到2,因此可以考虑使用最新版本 v1.53.2。 ## 代码变更 - 业务代码调整。在更新了 golangci-lint 工具后,发现有多处代码需要优化,没有业务变更。关联 pr 为 #1578。 - 工具配置调整。在默认情况下发现较多问题时,在单次运行后...
**SQLe Version** UI Version: main e7369d7 Server Version: main-ee 2619c7411a 复现步骤: 1.搭建一个oracle容器并启动 2.sqle上添加oracle数据源 3.然后在sql工作台上打开oracle失败 
存在的问题: 目前 model.AuditPlanSQLV2.Info 类型为 JSON,即 json.RawMessage 。那么不同的扫描任务类型会在该字段上会有各自的字段定义。每个审核任务都需要新增独立的函数来处理 Info 字段的内容填充和转换。每个独立函数都需要自行进行`json.Unmarshal()`或`json.Marshal()`操作。 可选优化方案: 方案一:将 JSON 定义变更为固定结构体 struct,类似 model 中的 AuditResults 字段 方案二:直接新增一个字段来代替 Info 字段,原字段做废弃使用。 影响: 所有审核任务的采集 SQL 格式转换部分。 对于该字段存储来说,没有变化。
**SQLe Version** c06efc94583b0aa7bdd9e235d6c093040f88f78d **Describe the bug** **To Reproduce** https://github.com/actiontech/sqle/discussions/1486 在 sqle v2.2303.0 升级至 v2.2304.0 过程中,如果没有使用升级工具。会造成表 audit_plan_report_sqls_v2 列 audit_results 出现 null 情况。此时如果从页面访问审核结果,会触发 panic。 **Suggestion** 建议验证方式:直接对表 audit_plan_report_sqls_v2 列 audit_results 设置为 null。然后使用页面功能获取审核结果。观察 sqle...
**SQLe Version** 476ce9745090a7a54ce92558e02232f77eb13d0f **Describe the bug**  在取消`cancel`的地方,使用的方式是传值。但是在该`cancel`消费的地方可能有两处。因此其中有一处可能会产生阻塞,没有产生取消的效果。 **To Reproduce** TODO **Expected behavior** TODO **Suggestion** `cancel`定义的目的是作为在loop中作为`信号`来使用,并非作为`广播`来使用。因此在具体的扫描任务中代码实现中,不应该读取`cancel`
1 **** ` select from trans where channel_trans_no=#{orderNo} where trans_no=#{orderNo} limit 1 ` 另外请支持下 和 SELECT p.* FROM product_info p left join c ON p.channel_id = c.id and p.product_name =...
创建工单时允许上传excel,由用户选择新建表或者插入、替换数据到现有表,自动生成sql并走审批流程。 这个可以方便用户快速创建表,并导入数据。
当流程模板里设置“允许创建工单的最高审核等级”为“错误”时,SQLE审核sql存在error等级也是可以创建工单的,期望这种情况下让用户在创建工单时进行二次确认,提示信息“SQL审核触发error等级的规则,是否忽略告警,继续提交?” 
场景: 项目内审批流程中某一审核步骤指定用户为test1,但是在项目成员中把test1给删除了,那么该用户test1就跟本项目没有任何关系,但是审批流程中审核步骤有依旧有test1用户,所以后续项目创建的工单还是要走到test1用户进行审核处理,这种就不太符合项目这个最基础的概念设计了,所以建议考虑在删除项目成员的时候检测一下是否属于审批流程中某一审核步骤中的审核用户,如果是则提示该用户为审批流程中的用户去除后才可以正常删除。