Greenplum告警错误
检查master数据库年龄
gpadmin=# SELECT datname, datfrozenxid ,age(datfrozenxid) FROM pg_database ORDER BY 1 DESC ;
检查segment数据库年龄
gpadmin=# SELECT gp_segment_id,datname, age(datfrozenxid) FROM gp_dist_random('pg_database') ORDER BY 3 DESC;
WARNING: database "warehouse" must be vacuumed within 1498780009 transactions (seg59 slice1 192-168-102-83:40003 pid=42937)HINT: To avoid a database shutdown, execute a full-database VACUUM in "warehouse".---------------+-----------+-----------10 | warehouse | 6488532765 | warehouse | 6488372307 | template0 | 64881392647 | template0 | 64881230114 | template0 | 6487997177 | warehouse | 648789699。。。。。。。。。。。。。。。。。。。。。。。。。。。省略
gpadmin=# SHOW xid_stop_limit ;xid_stop_limit----------------1000000000(1 row)
gpadmin=# SHOW xid_warn_limit;xid_warn_limit----------------500000000(1 row)
以上两个参数都是默认值一旦年龄超过以下数值,那么就会报warning(2^31 - xid_warn_limit - xid_stop_limit)也就是年龄超过这个值gpadmin=# select 2^31-1000000000-500000000;?column?-----------647483648
处理步骤:1.关闭greenplum2.临时修改xid_stop_limit到10,000,0003.启动gp4.对有影响的库做vacuum freeze;5.关闭gp,修改参数xid_stop_limit到原来值,启动gpcat vacuum.sh#!/bin/bashsource /home/gpadmin/.bash_profile psql -h 127.0.0.1 -p 1921 -d warehouse -c "vacuum freeze"
nohup sh vacuum.sh > vacuum.log 2>&1 &
Greenplum:ARNING: database "xxxx" must be vacuumed within xxxx transactions,HINT: To avoid a databas
最新推荐文章于 2023-11-23 21:50:35 发布