在开启多个jdbc连接并行执行多个insert into select 任务时,报:doris.common.UserException: get database write lock timeout
应该是导入太频繁了 ,您可以降低一下导入频次试试 。也可以改下be的这个配置,默认是10s,txn_commit_rpc_timeout_ms,延长超时时间,每个be节点都要进行更改
你好大师:修改完配置出错的频率变少了,现在再增加这个配置的值试下。
另外,同样多个jdbc insert into场景,会出现如下错误:
SQLJobHandler.execute-46] java.sql.SQLSyntaxErrorException: Doris planner use long time 3000 remaining task num 7
可以麻烦大师帮忙看下吗? 多谢!!
请问是每个insert只插入一条数据吗?
最好的话还是建议批量导入。
是批量insert的
因为sr导入数据会有版本的概念,高频的小批量insert会导致insert into 后数据版本数过多,达到版本上限。会导致一系列问题。您上面use long time 的问题可以把 new_planner_optimize_timeout 这个session 变量 全局变大。
高频批量执行insert into select报错:get tableList write lock timeout。调整了以下参数,问题依旧,请问要怎么解决呢:
FE:
remote_fragment_exec_timeout_ms=120000
BE:
txn_commit_rpc_timeout_ms=120000
thrift_rpc_timeout_ms=120000
重新开个帖子,贴下完整的日志