holodesk 表报错 rowset number over limit, max:5000, current:5000

  其他常见问题
内容纲要

概要描述

执行 holodesk 的查询或者写入时,报错 rowset number over limit, max:5000, current:5000 的解决方案。
还有一种报错,类似 delta number in rowset over limit。

这两种报错的解决方案是类似的,都是触发一下手动合并即可。
但是具体的问题原因是不同的。

SECTION_MAX_ROWSET_NUM:rowset number over limit
ROWSET_MAX_DELTA_NUM:delta number in rowset over limit

详细说明

一般是出现在 holodesk 分区表。详细报错一般是 rowset number over limit, max:5000, current:5000, section over limitation, partition_id:9。

是因为holodesk 表单次操作的 数据集文件块数量超过了限制。

SECTION_MAX_ROWSET_NUM:rowset number over limit
ROWSET_MAX_DELTA_NUM:delta number in rowset over limit

解决方案

只需要触发一下小文件的合并即可解决。

alter table stock_data_monthly_partition_holo_rowkey compact 'full';

检查小文件数量

可以在 DBAService 页面,存储–数据库–搜索表名

file

然后点击表名,可以看到 block 块数量,如果这里的数量超过了 5000 ,就会有这个报错,需要手动触发一下合并。

file

file

附录:

后续版本(argodb 6.2)会增加新的功能,动态调整个别表的 SECTION_MAX_ROWSET_NUM / ROWSET_MAX_DELTA_NUM ,e.g. :

修改命令:

curl -u shiva:shiva -XPUT 'kv1:4567/table_settings?pretty&database=default&table_name=default.emp_holo_3ef1030e-47d9-4546-9d8b-ca6974dd4163&engine_type=kHolo&setting_pattern=SECTION_MAX_ROWSET_NUM,50000&setting_pattern=ROWSET_MAX_DELTA_NUM,500&setting_pattern=FILE_NUMBER_WATERMARK,5000'

查看更改结果:

curl -u shiva:shiva -X GET "172.18.131.171:4567/table/description?database=default&table_name=default.emp_holo_3ef1030e-47d9-4546-9d8b-ca6974dd4163&pretty" | jq '.table_attributes'

file

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。