首批通过分布式安全可靠测评,为关键业务系统打造
资源池错误,错误代码 1210
更新时间:2026-06-10 01:56
本文介绍为租户添加新的资源池失败报 1210 错误的处理方法。
适用版本
适用于 OceanBase 数据库所有版本。
问题现象
现有租户 test_tenant,资源池为 pool1,pool1 的资源单元为 unit1。用户执行以下语句创建资源单元 unit2,并创建资源池 pool2,指定 pool2 的资源单元为 unit2。
obclient> CREATE RESOURCE UNIT unit2 max_cpu 15, max_memory '20G', max_iops 128,max_disk_size '100G', max_session_num 64, MIN_CPU=10, MIN_MEMORY= '10G', MIN_IOPS=128;
Query OK, 0 rows affected (0.01 sec)
obclient> CREATE RESOURCE POOL pool2 unit='unit2', unit_num=1, zone_list=('zone1');
Query OK, 0 rows affected (0.01 sec)
在进行租户扩容或缩容时,当前租户将使用的资源池修改为 pool2 时,提示以下错误。
obclient> ALTER TENANT test_tenant resource_pool_list=('pool2');
ERROR 1210 (HY000): Incorrect arguments to resource pool list
日志信息如下。
WARN [RS] modify_and_cal_resource_pool_diff (ob_ddl_service.cpp:7085) [38804][YB426451999C-0005A145B267DA12] [lt=13] invalid argument(ret=-4002, new_pool_name_list=["pool2"], old_pool_name_list=["pool1"])
WARN modify_and_cal_resource_pool_diff (ob_ddl_service.cpp:7086) [38804][YB426451999C-0005A145B267DA12] [lt=22] Incorrect arguments to resource pool list, ret=-4002
可能原因
查看错误日志,Incorrect arguments to resource pool list, ret=-4002 与错误信息,这是由于 pool2 与 pool1 的 Unit Config 不同,导致系统不允许修改资源池。
说明
OceanBase 数据库进行缩容或扩容时,推荐您直接修改当前资源池的 Unit Config。在增加资源的过程必须保证 OBServer 有足够的剩余资源可以用于分配。
可以通过内部表 __all_virtual_server_stat 查询节点总资源和已经分配的资源,然后通过计算可知是否可以修改资源单元。
解决方式
修改 pool1 的 Unit 即可完成租户缩容或扩容,无需为租户重新指定资源池。例如:
obclient> ALTER RESOURCE UNIT unit1 max_cpu 15, max_memory '20G', max_iops 128,max_disk_size '100G', max_session_num 64, MIN_CPU=10, MIN_MEMORY='10G', MIN_IOPS=128;