首批通过分布式安全可靠测评,为关键业务系统打造
如何找到可能导致租户内存耗尽的 SQL
更新时间:2025-05-07 11:26
当租户内存耗尽并导致业务出现 -4013 报错时,需要确定可能导致内存耗尽的可疑 SQL 语句。本文将介绍如何通过 OBServer 日志来确认这些 SQL 语句。
通过关键字 use too much memory(total_mem_used 过滤 OBServer 租户内存跑满前后 20 分钟左右的日志,确认是否存在占用大量内存的 SQL 语句,示例如下:
grep "use too much memory(total_mem_used" observer.log
[2022-08-01 16:49:39.368909] INFO [SQL] ob_sql.cpp:2112 [59064][2408][YB420A0A34F5-0005E24A21F69BF8] [lt=3] [dc=0] [SQL MEM USAGE] use too much memory(total_mem_used=219437351936, ObString(parse_result.input_sql_len_, parse_result.input_sql_)=xxxxx FROM AE25