MySQL 集群管理器 1.4 发行说明  /  MySQL Cluster Manager 1.4.7 的变化 (2018-12-14)

MySQL Cluster Manager 1.4.7 的变化 (2018-12-14)

添加或更改的功能

  • 代理:add package通过从执行过程中删除不必要的查询, 提高了命令的性能(缺陷号 28950231)

  • 代理:mcmd 的初始化脚本tmp启动新 的mcmd进程清理它在目录下创建的临时文件 (漏洞 #28924059)

  • 代理:list hosts除了Available和 该Unavailable主机代理的另外两种可能状态:

    • Recovery:代理正在恢复自身

    • Unresponsive: 代理拒绝连接尝试

    (漏洞 #28438155)

  • 代理: 选项--core-file,当在命令行上用于启动野生集群中的节点时,现在会导致import clusterupdate process命令发出警告(该选项可能会在下次重新启动进程时被删除),而不是导致命令失败。有关详细信息,请参阅 创建和配置目标集群。(缺陷号 28177366)

  • Agent:import cluster命令 update process现在支持一个新--remove-angel选项,该选项会杀死要导入或更新的数据节点的任何天使进程,并更新数据节点的 PID 文件。详见两条命令的说明。(漏洞#28116279)

  • 代理: 备份集群命令现在完成得更快,因为一些不必要的等待时间已从备份过程中消除。(缺陷号 27986443)

  • 代理:mcmd 的一个新选项, --initial允许陷入不一致状态的代理从其他代理恢复其配置。有关详细信息,请参阅说明 --initial。(缺陷号 20892397)

  • 代理:set、 和get命令 reset现在支持以下 仅命令行属性,这些属性只能在 MySQL Cluster Manager 外部时在命令行上配置:

  • 代理:改进了代理恢复 的内部机制 ,使其更加健壮且不易出错。

  • 客户端: 为了减小mcmd日志的大小,在集群重启期间不再将节点事件转储到日志中。(缺陷号 28843656)

  • 客户端:( ERROR 5200Restore cannot be performed ...) 的消息已扩展为包括恢复失败的原因。(缺陷号 25075284)

  • 客户端: 消息 ERROR 5017已扩展为包括操作对进程或集群无效的原因。(缺陷号 22777846)

修正错误

  • 代理: 已从该import cluster命令的日志中删除大量不必要的警告和错误消息。(缺陷号 28950370)

  • 代理: 在集群滚动重启期间(例如,在集群重新配置后发生),某些数据节点的节点组 ID 可能会暂时变成一些无效数字,这可能会导致mcmd抛出内部错误(Error 1003) . 通过此修复,节点组 ID 的此类瞬态更改将被mcmd忽略,并且不会引发任何错误。(漏洞#28949173)

  • 代理:如果节点处于 状态,则mysqld节点上 的update process命令因 。这是因为 mcmd没有重试停止节点,而这个修复让它在这种情况下这样做。(漏洞#28913525)stopping

  • 代理: 集群重新配置失败后,重新启动与其他代理失去联系的 mcmd代理可能会失败并出现校验和错误。那是因为在这个过程中,集群的原始配置被错误地从代理的存储库中删除了。通过此修复,保留了原始集群配置并且代理按预期重新启动。(漏洞 #28904775)

  • 代理: 当试图关闭一个mysqld节点时,如果 mcmd无法通过查询获得MySQL服务器的版本号,则关闭失败,因为 mcmd无法决定正确的关闭方法。通过此修复, mcmd回退到与 MySQL Cluster CGE 发行版中的mcmd版本捆绑在一起的 MySQL 服务器版本的关闭方法 (缺陷号 28830884)

  • 代理:当mysqld节点没有响应查询 时,用于重新配置或停止集群的命令挂起 有了这个修复,在这种情况下,对 mysqld节点的查询在一段时间后超时,之后重新配置或停止集群的命令被中止并返回错误。(漏洞#28813012)

  • 代理程序: mcmd在无法停止处于未知状态的数据节点时挂起。通过此修复,该 stop process命令会因情况错误而失败。(缺陷号 28780427)

  • 代理: 当任何集群日志文件非常长时, 尝试使用其他代理的数据恢复 mcmd代理失败,代理保持无限期恢复状态。通过此修复,代理仅扫描日志的最新部分而不是完整日志以获取错误信息,从而加快恢复过程并使其完成。(漏洞#28671584)

  • 代理: 在仅使用 IP 地址的环境中,如果站点是使用主机名定义的,则mcmd代理会在启动时挂起或在尝试反向 DNS 查找时重新启动。(漏洞#28437469)

  • 代理:collect logs如果集群有很多主机和大量日志数据需要收集, 该(漏洞#28282932)

  • 代理: 当其脚本发现 mcmd的先前 PID 正在被另一个进程使用时, mcmd无法启动 ,这意味着mcmd已经在运行。通过此修复,还会检查 PID 的进程名称,以便在 mcmd不再使用 PID 时再次启动mcmd。(缺陷号 28278727)init.d

  • 代理: 当在为从另一台主机收集数据而建立的 TCP 连接上未收到数据时collect logs命令失败并显示ERROR 1003 Internal error通过此修复,如果未收到任何数据,连接将正常关闭,从而允许其他主机连接到 TCP 端口并发送数据。(缺陷号 28278410)

  • 代理:restore cluster要恢复的集群包含名称中包含特殊字符的数据库时,命令失败。(缺陷号 28220549)

  • Agent:管理节点上的mcmd进程在运行过程中读取大集群日志时 发生内存泄漏此修复可确保mcmd定期截断日志读取缓冲区,因此缓冲区大小不会以不受控制的方式持续增长。(缺陷号 28076545)

  • 代理: 在 Windows 平台上,当要传输的日志文件的路径名恰好为 260 个字符时collect logs命令失败并显示ERROR 1003 Internal error这是因为,虽然 260 是允许的最大字符数,但内部测试忘记计算内部缓冲区中路径名的尾随零,因此未能捕获错误。通过此修复, mcmd会在这种情况下抛出 anERROR 106 Path max length exceeded for fileinstead。(漏洞 #28062069)

  • 代理: 如果mcmd在 Windows 平台上启动时选项--log-syslog为 true 但未指定 --log-file选项,则运行该 show settings命令将导致mcmd退出并出现错误 2013在查询期间丢失与 MySQL 服务器的连接)。(漏洞#27981362)

  • 代理: 由于某些原因(例如,虚拟机上的时间跳跃),当mcmd代理最终从ndb_mgmd 节点接收到不完整的事件记录时,代理意外退出。通过此修复, mcmd现在可以正确解析和处理不完整的记录。(漏洞#25746295)

  • 代理: 当代理从本地和远程主机接收到恢复配置时,代理恢复(例如,升级代理后)有时会失败,然后恢复过程受挫,现在有了新的恢复机制,恢复配置是只收到一次。(漏洞 #25517245)

  • Agent:create site创建站点的主机数量较多(超过45台),且主机的机器配置不统一时,命令超时超时 。(缺陷号 25075284)

  • 客户端: 在许多ndb_mgmd 命令或mysqld查询失败的情况下,抛出了错误的错误(Error 1006Error 7006)。通过此修复,将 Error 7030抛出适当的。(错误号 28829732)