Commit fee822e4 authored by unknown's avatar unknown

bug#7864 - fix ndb limit 4.5G data memory due to truncation error


ndb/src/kernel/blocks/dbtup/DbtupGen.cpp:
  remove 8k->32k conversion
ndb/src/kernel/vm/Configuration.cpp:
  compute size in 32k pages directly
parent e8e48614
...@@ -633,13 +633,10 @@ void Dbtup::execREAD_CONFIG_REQ(Signal* signal) ...@@ -633,13 +633,10 @@ void Dbtup::execREAD_CONFIG_REQ(Signal* signal)
ndbrequire(!ndb_mgm_get_int_parameter(p, CFG_TUP_OP_RECS, &cnoOfOprec)); ndbrequire(!ndb_mgm_get_int_parameter(p, CFG_TUP_OP_RECS, &cnoOfOprec));
// MemorySpaceTuples is specified in 8k pages, divide by 4 for 32k pages ndbrequire(!ndb_mgm_get_int_parameter(p, CFG_TUP_PAGE, &cnoOfPage));
Uint32 tmp;
ndbrequire(!ndb_mgm_get_int_parameter(p, CFG_TUP_PAGE, &tmp));
Uint64 pages = (tmp * 2048 + (ZWORDS_ON_PAGE - 1))/ (Uint64)ZWORDS_ON_PAGE;
cnoOfPage = (Uint32)pages;
Uint32 noOfTriggers= 0; Uint32 noOfTriggers= 0;
Uint32 tmp= 0;
ndbrequire(!ndb_mgm_get_int_parameter(p, CFG_TUP_PAGE_RANGE, &tmp)); ndbrequire(!ndb_mgm_get_int_parameter(p, CFG_TUP_PAGE_RANGE, &tmp));
initPageRangeSize(tmp); initPageRangeSize(tmp);
ndbrequire(!ndb_mgm_get_int_parameter(p, CFG_TUP_TABLE, &cnoOfTablerec)); ndbrequire(!ndb_mgm_get_int_parameter(p, CFG_TUP_TABLE, &cnoOfTablerec));
......
...@@ -521,7 +521,7 @@ Configuration::calcSizeAlt(ConfigValues * ownConfig){ ...@@ -521,7 +521,7 @@ Configuration::calcSizeAlt(ConfigValues * ownConfig){
ERROR_SET(fatal, ERR_INVALID_CONFIG, msg, buf); ERROR_SET(fatal, ERR_INVALID_CONFIG, msg, buf);
} }
noOfDataPages = (dataMem / 8192); noOfDataPages = (dataMem / 32768);
noOfIndexPages = (indexMem / 8192); noOfIndexPages = (indexMem / 8192);
for(unsigned j = 0; j<LogLevel::LOGLEVEL_CATEGORIES; j++){ for(unsigned j = 0; j<LogLevel::LOGLEVEL_CATEGORIES; j++){
......
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