Closed dikang123 closed 7 years ago
能发一下具体的sql么
SELECT col1, col2, col3, col4 FROM tab_xxx WHERE (status = 0 AND config_dispatch_mode IN (1,4)) LIMIT 0,500;
这是完整的sql么,我这边测试没有问题,有可能是sql中出现了 in () 字段导致出现误报,https://github.com/CreditEaseDBA/Themis/blob/master/rule_analysis/rule/text/toomany_in_list.py 可以参考这个具体的规则解析
是完整的sql,你可以看截图中的sql语句 ,不知道是我们的sql有问题 导致的误判
mongo里面 的参数 加 inlist_num ,代码里面 是 in_list_num 是不是这个问题导致的
inlist_num这个确实是个问题,已经修改,非常感谢 还麻烦修改rule里的字段后再运行一下规则,测试一下
@tuteng 修改完之后,规则判断正常了。
上图中,按照我的理解,TOOMANY_IN_LIST定义的应该是in子句中的item个数超过20个才判定为违法规则吧。但是给出的基于text规则的报告中,sql语句的in子句却只有两个item,明显没有违法该规则吧: 并且总分和扣分也对不上,总分显示为98.125分,扣分显示为6分(共违反3次)