我正在设置一个字符串变量说' bdr_node_name'在终端中使用set命令。
bdrdemo=# set bdr.node_name = 'node1';
SET
bdrdemo=# show bdr.node_name ;
bdr.node_name
---------------
node1
(1 row)
遵循的步骤:
1)In postgresql.conf
bdr.node_name = 'node2'
2)In bdr.c
DefineCustomStringVariable("bdr.node_name",
"higher priority node during conflicts",
NULL,
&bdr_node_name,
" ", PGC_USERSET,
0,
NULL, NULL, NULL);
3)In bdr.h
extern char *bdr_node_name;
4)In bdr_apply.c
char *bdr_node_name;
尝试在日志文件中打印bdr_node_name值时,它会显示postgresql.conf
中设置的默认值,即node2。
不使用set命令分配的值。但show命令显示正确的值。怎么可能?
我错过了什么吗?