Bug #21580 the default value for StringMemory erroneously reported by --print-full-config
Submitted: 11 Aug 2006 10:35 Modified: 18 Oct 2006 8:44
Reporter: Roland Bouman Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S3 (Non-critical)
Version:5.1.12-BK, 5.1.11 beta OS:Linux (Linux 2.6.15-26 / 386 )
Assigned to: justin he CPU Architecture:Any
Tags: --print-full-config, config.ini, MySQL Cluster, ndb_mgmd, StringMemory

[11 Aug 2006 10:35] Roland Bouman
Description:
The default value for the StringMemory option is reported to be 5 according to the manual (http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-ndbd-definition.html)

However, if the StringMemory option is not explictly specified in the cluster configuration file (config.ini) and the resulting configuration is requested using 

ndb_mgmd --config-file=/var/mysql-cluster/config.ini --print-full-config

then, the option is displayed as follows:

StringMemory=0

It was expected to read:

StringMemory=<default value>

where <default value> is 5 according to the aforementioned documentation page.

Explicilty specifying the value for Stringmemory works as expected.
If the StringMemory is explicitly specified in the [NDBD DEFAULT] section of config.ini, then the StringMemory option is depicted for each of the NDBD nodes implied by the configuration file.

How to repeat:
Use a minimal cluster configuration (config.ini), like the one shown in http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-config-example.html

Then, run 

ndb_mgmd --config-file=/var/mysql-cluster/config.ini --print-full-config | grep "StringMemory"

Suggested fix:
Hard to say:

a) the default could be 0 instead of 5 -> fix docs
b) --print-full-config might have a bug -> fix --print-full-config
c) there might be a bug in ndb_mgmd that undoes the default 5 to a 0
[11 Aug 2006 11:31] MySQL Verification Team
Updating Category to Cluster.
[26 Aug 2006 11:28] Valeriy Kravchuk
Thank you for a bug report. Verified just as described with latest 5.1.12-BK on Linux:

openxs@suse:~/dbs/5.1> libexec/ndb_mgmd --config-file=/tmp/config.ini --print-full-config | grep "StringMemory"
StringMemory=0
StringMemory=0
openxs@suse:~/dbs/5.1> cat /tmp/config.ini
[NDBD DEFAULT]
NoOfReplicas= 2
DataDir= /var/lib/mysql-cluster

[NDB_MGMD]
Hostname= ndb_mgmd.mysql.com
DataDir= /var/lib/mysql-cluster

[NDBD]
HostName= ndbd_2.mysql.com

[NDBD]
HostName= ndbd_3.mysql.com

[MYSQLD]
[MYSQLD]
HostName= mysqld_5.mysql.com