GBase 8a在扩容操作中,当所有表已经全部重分布到新的分布策略distribution以后,老的distribution就可以用refreshnodedatamap drop删除了。 但如果此时有些表存在event,且使用的老的策略,则会出现这个错误:Can not drop nodedatamap EventLog is using distribution。此时需要将原有的event处理完成才可以继续操作。
换个角度,如果是扩容,在操作前将集群状态全部恢复正常,没有event会更合适一些,可以减少运维的耗时。
报错样例
gbase> refreshnodedatamap drop 1;
ERROR 1707 (HY000): gcluster command error: Can not drop nodedatamap 1. FEventLog is using distribution.
原因
查看gcadmin,确实有event
[gbase@rh6-1 gcinstall_43R33]$ gcadmin
CLUSTER STATE: ACTIVE
CLUSTER MODE: NORMAL
=================================================================
| GBASE COORDINATOR CLUSTER INFORMATION |
=================================================================
| NodeName | IpAddress |gcware |gcluster |DataState |
-----------------------------------------------------------------
| coordinator1 | 10.0.2.201 | OPEN | OPEN | 1 |
-----------------------------------------------------------------
====================