10bet网址
MySQL NDB集群7.4版本说明
下载这些版本说明
PDF(美国Ltr)- 0.9 mb
PDF (A4)- 0.9 mb


MySQL NDB集群7.4版本说明/版本系列更新日志:MySQL NDB集群7.4/ MySQL NDB集群7.4.9 (5.6.28- db-7.4.9)(2016-01-18,通用可用性)

MySQL NDB集群7.4.9 (5.6.28- db-7.4.9)(2016-01-18,通用可用性)

增加或更改的功能

  • 重要的变化:在此之前,NDB调度器总是以预定的方式针对吞吐量优化速度(这是硬编码的);该余额现在可以使用SchedulerResponsiveness数据节点配置参数。该参数接受0-10范围内的整数,默认值为5。相对于吞吐量,较高的值提供更好的响应时间。较低的值提供了较高的吞吐量,但增加了较长的响应时间。(Bug #78531, Bug #21889312)

  • 添加了tc_time_track_stats表到ndbinfo信息数据库。该表提供与执行的事务、关键操作和扫描操作相关的时间跟踪信息NDB.(Bug #78533, Bug #21889652)

错误修复

  • 重要的变化:MySQL NDB集群7.3.11和MySQL NDB集群7.4.8中的修复ndb_restore执行唯一键检查,即使在不恢复数据的模式下操作,如使用程序的——restore-epoch——打印数据的选择。

    行为的改变导致现有有效的备份例程失败;为了避免此问题影响此版本和以后的版本,已经恢复了以前的修复。这意味着在运行ndb_restore的那些版本中添加的需求——disable-indexes——rebuild-indexes在包含唯一索引的表上使用时,也会被提升。(错误# 22345748)

    参考文献:参见Bug #22329365。恢复补丁:Bug #57782, Bug #11764893。

  • 重要的变化:用户现在可以设置大多数允许的连接超时的数量和长度NDB带有——connect-retries而且——connect-retry-delay本版本中为程序引入的命令行选项。为ndb_mgm——connect-retries取代现有的——try-reconnect选择。(Bug #57576, Bug #11764714)

  • NDB盘数据:类的列上的唯一索引NDB表是通过一个相关的内部有序索引实现的,用于扫描。在删除索引时,先删除这个有序索引,然后删除惟一索引本身。这意味着,当删除由于(例如)违反约束而被拒绝时,语句将被拒绝,但关联的有序索引仍将被删除,因此使用此表扫描的任何后续操作都将失败。我们通过在删除有序索引之前先删除唯一索引来解决这个问题;当删除唯一索引失败时,将不再执行相关有序索引的删除。(Bug #78306, Bug #21777589)

  • NDB集群接口:二进制日志注入器没有正确工作TE_INCONSISTENT的事件类型处理Ndb: nextEvent ().(错误# 22135541)

    参考文献:参见Bug #20646496。

  • NDB集群接口:Ndb: pollEvents ()而且pollEvents2 ()接收事件较慢,依赖于其他客户机线程或块代表它们执行传输器轮询。此修正允许客户端线程在必须在这些方法中等待时执行自己的传输器轮询。

    传输轮询的引入还揭示了一个问题,即在ndbcluster_binlog处理程序,该处理程序已作为此修复的一部分添加。(Bug #79311, Bug #20957068, Bug #22224571)

  • NDB集群接口:的实现中对多个对象执行垃圾收集NdbEventOperation,根据客户端使用了哪些gci,包括被丢弃的gciNdb: dropEventOperation ().在这个实现中,假设全局检查点索引(GCI)总是单调增加的,尽管在初始重启期间,当GCI重置时,情况并非如此。这可能导致NDB API中的事件对象被过早地释放或根本不释放,在后一种情况下会导致资源泄漏。

    为了防止这种情况发生,NDB事件对象的实现现在在内部跟踪GCI和GCI的生成;每当节点进程重新启动时,生成就递增,现在使用这个值来提供一个单调递增的序列。(Bug #73781, Bug #21809959)

  • 在调试版本中,aWAIT_EVENT而轮询导致过多的日志记录到标准输出。(错误# 22203672)

  • 当执行模式操作时,例如创建表在有多个SQL节点的MySQL NDB集群中,执行操作的SQL节点可能在等待其他节点的确认时超时。当不同的SQL节点具有不同的设置时,可能会发生这种情况——ndb-log-updated-only——ndb-log-update-as-write,或其他mysqld影响二进制日志记录的选项NDB

    发生这种情况的原因是,为了在它们之间分布模式更改,所有SQL节点都订阅ndb_schema系统表,并且所有SQL节点都通过订阅来知道彼此的订阅TE_SUBSCRIBE而且TE_UNSUBSCRIBE事件。要订阅的事件的名称由表名构造,添加REPL美元REPLF美元作为前缀。REPLF美元在为表指定完整二进制日志记录时使用。前面所描述的问题的出现,是因为所提到的选项的不同值可能导致不同的SQL节点订阅不同的事件,这意味着所有SQL节点不一定相互知道,因此处理等待模式分发完成的代码没有按照设计的方式工作。

    为了解决这个问题,MySQL NDB集群现在处理ndb_schema表作为一个特殊情况,并强制在任何时候对该表进行完整的二进制日志记录,独立于任何设置mysqld二进制日志记录选项。(Bug #22174287, Bug #79188)

  • 试图创建一个NDB表的宽度大于所有表所支持的最大组合宽度当用定义列时,列(4096)会导致数据节点故障COLUMN_FORMAT动态.(错误# 21889267)

  • 创建一个表,其中包含最大支持的列数(512)COLUMN_FORMAT动态导致数据节点故障。(错误# 21863798)

  • 在某些情况下,集群故障(错误4009)报告为未知错误码.(错误# 21837074)

  • 的暂停GET_TABINFOREQ在执行创建索引返回错误4243 (索引未找到)而不是预期的4008错误(从NDB接收失败).

    对此错误的修复还修复了发送的许多其他信号的类似超时问题DBDICT内核块作为DDL操作的一部分,包括ALTER_TAB_REQCREATE_INDX_REQDROP_FK_REQDROP_INDX_REQINDEX_STAT_REQDROP_FILE_REQCREATE_FILEGROUP_REQDROP_FILEGROUP_REQCREATE_EVENTWAIT_GCP_REQDROP_TAB_REQ,LIST_TABLES_REQ,以及处理中使用的几个内部函数NDB模式操作。(错误# 21277472)

    参考文献:参见Bug #20617891, Bug #20368354, Bug #19821115。

  • 使用ndb_mgm停止- f为了强制一个节点关闭,即使它触发了集群的完全关闭,当关闭足够数量的节点时,可能会丢失数据,从而触发集群关闭,时间是这样的SUMA已经向已经处于关闭过程中的节点进行了交接。(错误# 17772138)

  • 内部NdbEventBuffer: set_total_buckets ()方法计算的剩余桶数不正确。这导致任何不完整的纪元被过早地完成SUB_START_CONF信号到达时出现故障。随后到达的属于此阶段的任何事件都被忽略,从而有效地丢失,这导致模式更改不能正确地分布在SQL节点之间。(Bug #79635, Bug #22363510)

  • 在SUSE Linux Enterprise Server 12上编译MySQL NDB集群失败。(Bug #79429, Bug #22292329)

  • 与非模式事件相比,模式事件被无序地追加到二进制日志中。这是因为二进制日志注入器没有正确处理模式事件和非模式事件来自不同时代的情况。

    此修复修改了对来自两个模式和非模式事件流的事件的处理,这样事件现在总是每次处理一个纪元,从最老的可用纪元的事件开始,而不考虑它们发生在哪个事件流中。(Bug #79077, Bug #22135584, Bug #20456664)

  • 当在NDB表格修改表…指数下降在实际删除索引之前对引用索引的内部数组进行更改,并且在删除未完成时不恢复这些更改。这样做的一个后果是,在尝试删除一个有外键依赖关系的索引后,预期的错误引用了错误的索引,随后尝试使用SQL修改该表的索引失败。(Bug #78980, Bug #22104597)

  • NDB由于设置了当前本地检查点的状态但不是活动的,在节点重启期间失败,尽管在这种条件下它可能有其他状态。(Bug #78780, Bug #21973758)

  • ndbmtd检查信号是否只有在一个完整周期后才发送run_job_buffers,这将对所有作业缓冲区输入执行。这是run_job_buffers本身,这避免了长时间执行而不发送到其他节点或向其他线程刷新信号。(Bug #78530, Bug #21889088)

  • 设置的值。spintimeThreadConfig参数计算不正确,导致自旋持续的时间超过实际指定的时间。(Bug #78525, Bug #21886476)

  • NDBFS在完成文件操作后,它用于唤醒主线程的方法在Linux/x86平台上有效,但在其他一些平台上不行,包括OS X,这可能会导致这些平台上不必要的减速。(Bug #78524, Bug #21886157)