Bug #60946 Small memory leak in lgman leads to GCP stop
Submitted: 21 Apr 2011 13:18 Modified: 26 Apr 2011 12:52
Reporter: Jonas Oreland Email Updates:
Status: Closed Impact on me:
Category:MySQL Cluster: Disk Data Severity:S3 (Non-critical)
Version:>= mysql-5.1-telco-7.0.9 OS:Any
Assigned to: Jonas Oreland CPU Architecture:Any

[21 Apr 2011 13:18] Jonas Oreland
There is a small memory leak in lgman, that leaks log-buffer-memory.
The leak is 8 bytes per 32k written.
If using 128M log-buffer memory, it will run out after writing 512G undo-log

The consequence of the leakage (i.e when log-buffer runs out) the data-node
will die with GCP Stop

This leak was introduced with bug#47966 into 7.0.9

How to repeat:

Suggested fix:
Don't leak
Add check that we don't leak
[21 Apr 2011 13:45] Jonas Oreland
pushed to 7.0.24 and 7.1.13
[26 Apr 2011 12:52] Jon Stephens
Documented bugfix in the NDB 7.0.24 and 7.1.13 changelogs as follows:

        A memory leak in LGMAN, that leaked 8 bytes of log buffer memory
        per 32k written, was introduced in MySQL Cluster NDB 7.0.9,
        effecting all MySQL Cluster NDB 7.1 releases as well as MySQL
        Cluster NDB 7.0.9 and later MySQL Cluster NDB 7.0 releases. (For
        example, when 128 MB log buffer memory was used, it was
        exhausted after writing 512 GB to the undo log.) This led to a
        GCP stop and data node failure.