PostGres xl ERROR: Snapshot too old - RecentGlobalXmin......

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PostGres xl ERROR: Snapshot too old - RecentGlobalXmin......相关的知识,希望对你有一定的参考价值。

某天postgres xl集群执行pgxc_ctl stop all命令关闭集群,并重启集群,连接某节点,发觉读取某张表出现了以下错误


postgres=# select count(*) from t4;

ERROR:  Snapshot too old - RecentGlobalXmin (260760) has already advanced past the snapshot xmin (210218)

postgres=# 


查看第一个节点的txid,如下

postgres=#  select txid_current();

 txid_current 

--------------

       210218

  

查看第二个节点txid,如下   

postgres=# select txid_current();

 txid_current 

--------------

       260762

(1 row)   



这个问题是因为节点之间txid不一致问题引起,


解决方法,执行以下命令关闭集群并重新启动,txid节点就会一致

pgxc_ctl "stop -m immediate all"


以上是关于PostGres xl ERROR: Snapshot too old - RecentGlobalXmin......的主要内容,如果未能解决你的问题,请参考以下文章

postgres-xl 集体搭建

Postgres-XL 负载均衡

Postgres-XL 还不支持 TRIGGER

Postgres-XL9.5r1.6 搭建

Postgres-XL 向后兼容 PostgreSQL?

Postgres-XL:JSON 函数