Bug #43641 | ndb_mgm_get_configuration fails fetching config | ||
---|---|---|---|
Submitted: | 13 Mar 2009 19:47 | Modified: | 16 Apr 2009 18:58 |
Reporter: | Geert Vanderkelen | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Cluster: NDB API | Severity: | S2 (Serious) |
Version: | ndb-6.4.3 | OS: | Any |
Assigned to: | Magnus Blåudd | CPU Architecture: | Any |
[13 Mar 2009 19:47]
Geert Vanderkelen
[17 Mar 2009 8:06]
Magnus Blåudd
Starting from 6.4, the ndb_mgmd's will synchronize their configuration with each other to assure that which ever server you use to get the configuration, you should always get the same answer. 1. During the initial synchronization, it's not possible to fetch the configuration since it's not confirmed yet i.e the ndb_mgmd(s) have not agreed that they have the same configuration. Unfortunately the ndb_mgmd does not return any good error message and thus it's confusing why it fails. It should be fixed to return good error message. 2. When upgrading from a previous version by shutting down only one ndb_mgmd and starting the new version of ndb_mgmd in it's place, the old version won't know how to synchronize the configuration and thus it stays in this "initial" state forever. There are two ways to fix this: a) Add a --force flag so that the new version of ndb_mgmd will skip the synchronize configuration step and just start using it. b) Make the new ndb_mgmd connnect to the old ndb_mgmd's port and check which version it has. Normally we don't want one ndb_mgmd to depend on another one in this way, but it might make sense in this case.
[26 Mar 2009 9:02]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/70483 2958 Magnus Svensson 2009-03-26 Bug#43641 ndb_mgm_get_configuration fails fetching config - Detect upgrade from version that does not have ConfigManager. - Exclude ndb_mgmd nodes from previous version from config change protocol.
[26 Mar 2009 9:03]
Magnus Blåudd
Additional patch with test cases + improved error message when ndb_mgmd don't allow configuration to be fetched is on it's way.
[26 Mar 2009 9:12]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/70488 2959 Magnus Svensson 2009-03-26 Bug#43641 ndb_mgm_get_configuration fails fetching config - Return better error message when refusing to return the configuration - Add 'ndb_mgm_get_configuration2 'so that mgmapi users can tell which nodetype they are - this is for internal use by ndb_mgmd and ndbd - no need to change applications.
[1 Apr 2009 13:07]
Bugs System
Pushed into 5.1.32-ndb-7.0.5 (revid:magnus.blaudd@sun.com-20090401125626-2bmyb0m31uc1nbob) (version source revid:magnus.blaudd@sun.com-20090401125626-2bmyb0m31uc1nbob) (merge vers: 5.1.32-ndb-7.0.5) (pib:6)
[16 Apr 2009 18:58]
Jon Stephens
Documented bugfix in the NDB-7.0.5 changelog as follows: The following issues occurred when performing an online (rolling) upgrade of a cluster to a version of MySQL Cluster that supports configuration caching from a version that does not: 1. When using multiple management servers, after upgrading and restarting one ndb_mgmd, any remaining management servers using the previous version of ndb_mgmd could not synchronize their configuration data. 2. The MGM API ndb_mgm_get_configuration() function failed to obtain configuration data.