表同步时是否会阻塞ddl/dml/加载操作

出现节点表数据不一致时,集群的自动同步程序会自动进行表分片数据的同步,并针对该表设置recover lock锁,会阻塞针对该表的ddl操作,但不会阻塞针对该表的select、insert、udpate、delete及数据加载操作;
同时,节点数据同步采用增量追加同步的方式进行,即在同步期间,该表新增的数据在同步结束后,会继续追加同步新发生的数据变化。

集群节点基于NTP同步时,如果以node1作为同步服务器,一旦node1宕机,各节点时间不同步,会不会引起集群分裂?

集群是基于SCN同步,SCN与时间无关,是集群gcluster层的全局参数,每次数据库有变动SCN值会加1. 有节点宕机,其他节点的SCN仍然会根据数据库变动增加,宕机节点重新启用后会跟SCN最大的节点同步。
NTP同步只是为了日志记录和分析精确,各日志中都会有具体时间记录,如果各节点时间不统一,对于各节点日志分析会带来误导。

如何获取core文件堆栈脚本

利用脚本,获取堆栈信息,方法如下:

sh ./core_stack /opt/gnode/server/bin/gbased opt/gnode/userdata/gbase/core.xxx  > file

文件名请记录节点信息,对应的core文件pid,时间等信息,以方便对照,例如bt_node17_pid_20160531.txt。

core_stack.sh
#!/bin/sh
gdb –quiet -nx $1 $2 <<EOF 2>&1
set width 0
set height 0
set pagination no
thread apply all bt
EOF