现象:
某报表查询SQL报错,大意是max_query_size超过最大限制
出现原因:
查询条件有个shop_id 字段,in了一大串,大概是八百多个16位的字符串,导致SQL过长超过限制
解决方案:
先到clickhouse的Git issue上找了一波解决方案:
issue
另外到clickhouse官网翻阅了max_query_size参数的含义和默认值:
添加链接描述
https://img-blog.csdnimg.cn/f7478a07e2264bc19a532ef8b25b2a30.png
56KiB 没算错的话就是256个千字节,也就是256*1024 byte,
想着改参数放大一倍处理(524288 byte)。
注意,max_query_size参数的单位是字节(Git issue答主说的,没验证过对不对)
修改方式:
1.通过改驱动参数URL,写成路径参数的形式,类似于:
http://localhost:8123/?max_query_size=100000000
(改了这个应该要重启服务,一般这些参数在配置中心的图形化页面上操作就行)
2.改配置文件(看官网吧)
<max_query_size>1000000</max_query_size>