ndbinfo信息数据库:在重新启动之后(有时不完整)可以使用回退数据填充
ndbinfo.processes
表,这可能导致该表中的行为空process_name
值。此类备用数据不再用于此目的。(错误# 27985339)释放内部缓冲区后立即重用它可能会导致计划外的数据节点关闭。(错误# 27622643)
参考:参见Bug #28698831。
一个
NDB
在线备份由模糊的数据、重做和撤销日志组成。要恢复到一致状态,必须确保日志包含从模糊数据部分捕获到一致快照点的所有更改。这是通过等待GCI边界在数据捕获完成之后传递,但在停止更改日志记录和在备份元数据中记录停止GCI之前实现的。在恢复时,将重新播放日志直到停止GCI,将系统恢复到一致停止GCI时的状态。当在负载下,有可能选择一个过早出现的GCI边界,并且没有跨越所有捕获的数据时,问题就出现了。这可能导致恢复备份时不一致;这些可以被注意到是被破坏的约束或损坏的
团
条目。现在选择停止GCI,以便它跨越模糊数据捕获过程的整个持续时间,以便备份日志总是包含给定的停止GCI中的所有数据。(错误# 27497461)
参考:参见Bug #27566346。
为
NDB
表,当作为DDL语句的一部分添加或删除外键时,引用的所有父表的外键元数据应该在连接到集群的所有SQL节点的处理程序中重新加载,但这只在mysqld语句在其上执行。因此,任何依赖于对应父表的外键元数据的后续查询都可能返回不一致的结果。(错误# 27439587)参考:参见:Bug #82989, Bug #24666177。
内部函数
BitmaskImpl: setRange ()
比指定的少一个位。(Bug #90648, Bug #27931995)不可能创造一个
NDB
表的使用PARTITION_BALANCE
设置为FOR_RA_BY_LDM_X_2
,FOR_RA_BY_LDM_X_3
,或FOR_RA_BY_LDM_X_4
。(Bug #89811, Bug #27602352)这个问题是:Bug #81759, Bug #23544301的回归。
当内部函数
ha_ndbcluster: copy_fk_for_offline_alter ()
检查表上的依赖对象,它应该从表中删除一个外键,它没有对外键执行任何过滤,使得它有可能尝试检索索引或触发,从而导致一个虚假的错误723 (没有这样的表)。在执行过程中
创建表……如果不存在
,内部open_table ()
函数调用ha_ndbcluster: get_default_num_partitions ()
隐式地当open_table ()
发现请求的表已经存在。在某些情况下,get_default_num_partitions ()
被称为没有关联thd_ndb
对象初始化,导致MySQL错误157的语句失败无法连接到存储引擎。现在get_default_num_partitions ()
总是检查这个是否存在thd_ndb
对象,并在必要时初始化它。