【 使用环境 】测试环境
【 OCP 】
【 使用版本 】4.3.6
【问题描述】白屏创建租户,任务执行报错
【复现路径】错误码
OBE10002
错误信息
操作OceanBase失败,错误信息: (conn=3221548724) No memory or reach tenant memory limit
错误原因
连接 sysbench 执行 call dbms_stats.gather_table_stats(‘oceanbase’, ‘__all_virtual_core_all_table’); 失败,错误信息: (conn=3221548724) No memory or reach tenant memory limit
解决方案
请联系技术支持
报错信息:
2025-09-10 15:06:43.595 INFO 1302642 — [manual-subtask-executor15,9410f5891d9176f2,db3beb121f755831] c.o.ocp.obsdk.connector.ConnectTemplate : [obsdk] slow query, durationMillis=10136, sql=call dbms_stats.gather_table_stats(‘oceanbase’, ‘__all_virtual_core_all_table’);
2025-09-10 15:06:43.634 ERROR 1302642 — [manual-subtask-executor15,9410f5891d9176f2,db3beb121f755831] c.o.o.c.t.e.c.w.subtask.SubtaskExecutor : No memory or reach tenant memory limit
java.sql.SQLException: No memory or reach tenant memory limit
at com.oceanbase.jdbc.internal.protocol.AbstractQueryProtocol.readErrorPacket(AbstractQueryProtocol.java:2366)
at com.oceanbase.jdbc.internal.protocol.AbstractQueryProtocol.readPacket(AbstractQueryProtocol.java:2229)
at com.oceanbase.jdbc.internal.protocol.AbstractQueryProtocol.getResult(AbstractQueryProtocol.java:2117)
at com.oceanbase.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:324)
at com.oceanbase.jdbc.OceanBaseStatement.executeInternal(OceanBaseStatement.java:489)
at com.oceanbase.jdbc.OceanBaseStatement.execute(OceanBaseStatement.java:676)
at com.oceanbase.jdbc.OceanBaseStatement.execute(OceanBaseStatement.java:643)
at com.alibaba.druid.pool.DruidPooledStatement.execute(DruidPooledStatement.java:644)
at org.springframework.jdbc.core.JdbcTemplate$1ExecuteStatementCallback.doInStatement(JdbcTemplate.java:425)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:383)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:434)
at com.oceanbase.ocp.obsdk.connector.ConnectTemplate.execute(ConnectTemplate.java:308)
at com.oceanbase.ocp.obsdk.connector.ObConnectTemplate.executeMysqlPl(ObConnectTemplate.java:107)
at com.oceanbase.ocp.obsdk.connector.ObConnectTemplate.executePl(ObConnectTemplate.java:98)
at com.oceanbase.ocp.obsdk.accessor.sql.AbstractSqlTuningAccessor.gatherTableStats(AbstractSqlTuningAccessor.java:180)
at com.oceanbase.ocp.obops.internal.tenant.task.GatherTableStatsTask.run(GatherTableStatsTask.java:62)
at com.oceanbase.ocp.core.task.engine.runner.JavaSubtaskRunner.execute(JavaSubtaskRunner.java:64)
at com.oceanbase.ocp.core.task.engine.runner.JavaSubtaskRunner.doRun(JavaSubtaskRunner.java:32)
at com.oceanbase.ocp.core.task.engine.runner.JavaSubtaskRunner.run(
JavaSubtaskRunner.java:26)
at com.oceanbase.ocp.core.task.engine.runner.RunnerFactory.doRun(RunnerFactory.java:76)
at com.oceanbase.ocp.core.task.engine.coordinator.worker.subtask.SubtaskExecutor.doRun(SubtaskExecutor.java:212)
at com.oceanbase.ocp.core.task.engine.coordinator.worker.subtask.SubtaskExecutor.redirectConsoleOutput(SubtaskExecutor.java:206)
at com.oceanbase.ocp.core.task.engine.coordinator.worker.subtask.SubtaskExecutor.lambda$submit$2(SubtaskExecutor.java:137)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:750)
Set state for subtask: 997, operation:EXECUTE, state: FAILED