0

Postgres-XL没有按预期工作。

我已经配置了一个Postgres-XL集群,如下所示:

GTM 在 node3 上运行 GMT_Proxy 在 node2 和 node1 上运行 协调器和数据节点在 node2 和 node1 上运行。

当我尝试执行任何直接连接到数据库的操作时,我会收到以下错误,这是预期的。

postgres=# create table test(eno integer);
ERROR:  cannot execute CREATE TABLE in a read-only transaction

但是当我通过协调员登录时,它会显示以下错误:

postgres=# \l+
ERROR:  Could not begin transaction on data node.

在 中postresql.log,我可以看到以下错误。知道该怎么做吗?

2016-06-26 20:20:29.786 AEST,"postgres","postgres",3880,"192.168.87.130:45479",576fabb5.f28,1,"SET",2016-06-26 20:17:25 AEST,2/31,0,ERROR,22023,"node ""coord1_3878"" does not exist",,,,,,"SET global_session TO coord1_3878;SET parentPGXCPid TO 3878;",,,"pgxc"
2016-06-26 20:20:47.180 AEST,"postgres","postgres",3895,"192.168.87.131:45802",576fac7d.f37,1,"SELECT",2016-06-26 20:20:45 AEST,3/19,0,LOG,00000,"No nodes altered. Returning",,,,,,"SELECT pgxc_pool_reload();",,,"psql"
2016-06-26 20:21:12.147 AEST,"postgres","postgres",3897,"192.168.87.131:45807",576fac98.f39,1,"SET",2016-06-26 20:21:12 AEST,3/22,0,ERROR,22023,"node ""coord1_3741"" does not exist",,,,,,"SET global_session TO coord1_3741;SET parentPGXCPid TO 3741;",,,"pgxc"



PostresXL version - 9.5 r1.1
psql (PGXL 9.5r1.1, based on PG 9.5.3 (Postgres-XL 9.5r1.1))

蚂蚁的想法?

4

2 回答 2

1

好像你还没有真正配置好 pgxc_ctl 。只需输入

prepare config minimal

在 pgxc_ctl 命令行中,它将为您生成一个通用的 pgxc_ctl.conf 文件,您可以相应地修改该文件。

您可以按照官方 postgres XL 文档的建议从 pgxc_ctl 命令行添加节点John H

于 2016-10-06T05:24:50.650 回答
1

我设法解决了我的问题:

1)使用来自 git 存储库的源代码,XL9_5_STABLE 分支(https://git.postgresql.org/gitweb/?p=postgres-xl.git;a=summary)。他们在http://www.postgres-xl.org/download/提供的源代码包对我不起作用

2) 如上所述使用 pgxc_ctl。由于添加 gtm 时我使用的是 localhost 而不是 ip,我得到了无法从 GTM 获取事务 ID。

添加 gtm 主 gtm localhost 20001 $dataDirRoot/gtm

代替

添加 gtm 主 gtm 10.222.1.49 20001 $dataDirRoot/gtm

于 2016-07-18T14:44:14.630 回答