From: Frazer Clement Date: May 23 2011 4:22pm Subject: bzr push into mysql-5.1-telco-7.0 branch (frazer.clement:4403 to 4404) List-Archive: http://lists.mysql.com/commits/137888 Message-Id: <201105231623.p4NGN7x6014227@acsmt358.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit 4404 Frazer Clement 2011-05-23 Fix testRestartGci modified: storage/ndb/test/ndbapi/testRestartGci.cpp 4403 magnus.blaudd@stripped 2011-05-23 Bug#12581954 - ndbinfo need to reload its cache of ndbinfo tables during online upgrade - When upgrading the MySQL Servers in a cluster before the datanodes, the ndbinfo API does not flush it's cache of ndbinfo tables and columns. Only full disconnect of the cluster is currently detected. And of course restarting the MySQL Server - Make ndbinfo api detect when the "min db version" of cluster has changed. modified: storage/ndb/include/ndbapi/ndb_cluster_connection.hpp storage/ndb/src/ndbapi/NdbInfo.cpp storage/ndb/src/ndbapi/NdbInfo.hpp storage/ndb/src/ndbapi/TransporterFacade.hpp storage/ndb/src/ndbapi/ndb_cluster_connection.cpp storage/ndb/src/ndbapi/ndb_cluster_connection_impl.hpp === modified file 'storage/ndb/test/ndbapi/testRestartGci.cpp' --- a/storage/ndb/test/ndbapi/testRestartGci.cpp 2011-05-18 05:25:47 +0000 +++ b/storage/ndb/test/ndbapi/testRestartGci.cpp 2011-05-23 16:13:34 +0000 @@ -63,9 +63,9 @@ maybeExtraBits(Ndb* ndb, NdbDictionary:: return 0; } - bool useExtendedBits = ((rand() % 5) != 0); - Uint32 numGciBits= rand() % 32; /* 0 -> 31 */ - Uint32 numAuthorBits = rand() % 32; /* 0 -> 31 */ + bool useExtendedBits = ((ndb_rand() % 5) != 0); + Uint32 numGciBits= ndb_rand() % 32; /* 0 -> 31 */ + Uint32 numAuthorBits = ndb_rand() % 32; /* 0 -> 31 */ if (useExtendedBits && (numGciBits || numAuthorBits)) { @@ -136,7 +136,7 @@ int runInsertRememberGci(NDBT_Context* c Uint32 authorVal = 0; if (ctx->getTab()->getExtraRowAuthorBits() > 0) { - authorVal = (rand() & authorMask); + authorVal = (ndb_rand() & authorMask); /* Pain here due to need to use NdbRecord */ char rowBuff[NDB_MAX_TUPLE_SIZE]; const NdbDictionary::Table* tab = ctx->getTab(); @@ -378,7 +378,7 @@ int runVerifyInserts(NDBT_Context* ctx, ndbout << "ERR: Record "<= firstSaturatedValue; + bool expectRounding = (expectedRecordGci & 0xffffffff) >= firstSaturatedValue; Uint64 expectedRoundedGci = (expectedRecordGci | 0xffffffff); Uint64 readGci = rowGci->u_64_value(); Uint64 expectedRead = (expectRounding)?expectedRoundedGci : No bundle (reason: useless for push emails).