Commit 7804e6e1 authored by gni/root@dev3-127.(none)'s avatar gni/root@dev3-127.(none)

Merge dev3-127.(none):/mnt/mysql/home/ngb/mysql-5.1/mysql-5.1-new-ndb-bj

into  dev3-127.(none):/mnt/mysql/home/ngb/mysql-5.1/mysql-5.1-bug22547
parents 9c9bf8a0 ab9eac49
...@@ -3308,6 +3308,30 @@ checkDbConstraints(InitConfigFileParser::Context & ctx, const char *){ ...@@ -3308,6 +3308,30 @@ checkDbConstraints(InitConfigFileParser::Context & ctx, const char *){
ctx.m_userProperties.put("NoOfReplicas", replicas); ctx.m_userProperties.put("NoOfReplicas", replicas);
} }
/**
* In kernel, will calculate the MaxNoOfMeataTables use the following sum:
* Uint32 noOfMetaTables = noOfTables + noOfOrderedIndexes +
* noOfUniqueHashIndexes + 2
* 2 is the number of the SysTables.
* So must check that the sum does't exceed the max value of Uint32.
*/
Uint32 noOfTables = 0,
noOfOrderedIndexes = 0,
noOfUniqueHashIndexes = 0;
ctx.m_currentSection->get("MaxNoOfTables", &noOfTables);
ctx.m_currentSection->get("MaxNoOfOrderedIndexes", &noOfOrderedIndexes);
ctx.m_currentSection->get("MaxNoOfUniqueHashIndexes", &noOfUniqueHashIndexes);
Uint64 sum= (Uint64)noOfTables + noOfOrderedIndexes + noOfUniqueHashIndexes;
if (sum > ((Uint32)~0 - 2)) {
ctx.reportError("The sum of MaxNoOfTables, MaxNoOfOrderedIndexes and"
" MaxNoOfUniqueHashIndexes must not exceed %u - [%s]"
" starting at line: %d",
((Uint32)~0 - 2), ctx.fname, ctx.m_sectionLineno);
return false;
}
return true; return true;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment