Bug #28683 ndb_size.pl should support more than one database
Submitted: 25 May 2007 19:01 Modified: 15 Sep 2007 11:21
Reporter: Monty Taylor Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S3 (Non-critical)
Version:5.1 OS:Any
Assigned to: Monty Taylor CPU Architecture:Any

[25 May 2007 19:01] Monty Taylor
Description:
I'm at a client who needs to assess the suitability of cluster, but they have 26 different schemas, making the ndb_size.pl tool rather unwieldy. ndb_size.pl should support both the ability to run against more than one db and the ability to specify tables to skip. 

How to repeat:
Run ndb_size.pl. It requires a database as an argument. 

Suggested fix:
I've got a patch I'll commit in just a bit.
[25 May 2007 19:06] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/27358

ChangeSet@1.2504, 2007-05-25 12:05:48-07:00, mtaylor@qualinost.(none) +1 -0
  BUG#28683 - ndb_size.pl should support more than one database
  Added the ability to run ndb_size.pl on mulitple databases and also to exclude lists of databases and tables from analysis.
  ---
  Added schema name information to index table calculations as well.
  ---
  Made database an optional parameter, the exclusion of which causes all databases to be examined.
  If selecting from information_schema fails, attempt to fall back to show tables from
  ---
  Added support for setting an optional "real_table_name" for a table to deal with unique indexe size calcs.
  ---
  Fixed report title for the case where we are using operating on more than one database.
[25 May 2007 20:48] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/27372

ChangeSet@1.2504, 2007-05-25 13:45:46-07:00, mtaylor@qualinost.(none) +1 -0
  BUG#28683 - ndb_size.pl should support more than one database
  Added the ability to run ndb_size.pl on mulitple databases and also to exclude lists of databases and tables from analysis.
  ---
  Added schema name information to index table calculations as well.
  ---
  Made database an optional parameter, the exclusion of which causes all databases to be examined.
  If selecting from information_schema fails, attempt to fall back to show tables from
  ---
  Added support for setting an optional "real_table_name" for a table to deal with unique indexe size calcs.
  ---
  Fixed report title for the case where we are using operating on more than one database.
  ---
  Fixed some perl style concerns timothy had. 
  Cull the list of databases in perl rather than passing both an in and a not in list to MySQL
  Get this full list of databases from show databases if needed.
[30 May 2007 2:08] Stewart Smith
looks good to me. ok to push.
[15 Aug 2007 2:15] Stewart Smith
fixed up a few small things and pushed to 5.1-ndb
[15 Aug 2007 6:36] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/32536

ChangeSet@1.2579, 2007-08-15 12:12:31+10:00, stewart@flamingspork.com +1 -0
  [PATCH] BUG#28683 - ndb_size.pl should support more than one database
  
  Patch by: Monty Taylor <mtaylor@mysql.com>
  Fixes by: Stewart Smith
  
    Added the ability to run ndb_size.pl on mulitple databases and also to exclude lists of databases and tables from analysis.
    ---
    Added schema name information to index table calculations as well.
    ---
    Made database an optional parameter, the exclusion of which causes all databases to be examined.
    If selecting from information_schema fails, attempt to fall back to show tables from
    ---
    Added support for setting an optional "real_table_name" for a table to deal with unique indexe size calcs.
    ---
    Fixed report title for the case where we are using operating on more than one database.
    ---
    Fixed some perl style concerns timothy had.
    Cull the list of databases in perl rather than passing both an in and a not in list to MySQL
    Get this full list of databases from show databases if needed.
  
    storage/ndb/tools/ndb_size.pl@stripped, 2007-05-25 13:45:44-07:00, mtaylor@qualinost.(none) +102 -28
      Added the ability to run ndb_size.pl on mulitple databases and also to exclude lists of databases and tables from analysis.
      ---
      Added schema name information to index table calculations as well.
      ---
      Made database an optional parameter, the exclusion of which causes all databases to be examined.
      If selecting from information_schema fails, attempt to fall back to show tables from
      ---
      Added support for setting an optional "real_table_name" for a table to deal with unique indexe size calcs.
      ---
      Fixed report title for the case where we are using operating on more than one database.
      ---
      Fixed some perl style concerns timothy had. 
      Cull the list of databases in perl rather than passing both an in and a not in list to MySQL
      Get this full list of databases from show databases if needed.
  
  Index: ndb-work/storage/ndb/tools/ndb_size.pl
  ===================================================================
[7 Sep 2007 15:46] Jon Stephens
Documented in mysql-5.1.22-ndb-6.2.5 changelog and mysql-cluster-utilities-ndb-size section of 5.1 Cluster chapter.

Left status as PQ.

See also Bug #30903.
[14 Sep 2007 16:26] Bugs System
Pushed into 5.1.23-beta
[15 Sep 2007 11:21] Jon Stephens
Thank you for your bug report. This issue has been committed to our source repository of that product and will be incorporated into the next release.

If necessary, you can access the source repository and build the latest available version, including the bug fix. More information about accessing the source trees is available at

    http://dev.mysql.com/doc/en/installing-source.html

Also documented in 5.1.23 changelog; updated description in Cluster chapter of Manual.