Bug #46183 Cluster query performance regression on Solaris
Submitted: 14 Jul 2009 20:04 Modified: 15 Nov 2009 14:51
Reporter: Hartmut Holzgraefe Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S3 (Non-critical)
Version:mysql-5.1-telco-6.2.16, ...-6.3.16 OS:Solaris
Assigned to: Magnus Blåudd CPU Architecture:Any

[14 Jul 2009 20:04] Hartmut Holzgraefe
Description:
The change from CLOCK_REALTIME to CLOCK_MONOTONIC in the fix for bug #35607 seems to have a bad effect on performance on Solaris (on Sparc at least, haven't tested with Solaris/x86 yet).

When doing primary or secondary key lookups ndb-6.2.16 is about 10-15% slower than the previous ndb-6.2.15 in transaction throughput per second.

On Linux/x86 the CLOCK_* change doesn't seem to affect performance at all though ...

How to repeat:
Check primary (NdbOperation) or secondary (NdbIndexOperation) lookup performance for ndb-6.2.16 against ndb-6.2.15 ...
[15 Jul 2009 10:23] Magnus Blåudd
microbenchmark for clock_gettime with different clockid

Attachment: NdbTick.c (text/x-csrc), 1.51 KiB.

[15 Jul 2009 18:17] 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/78769
[3 Aug 2009 16:12] Bugs System
Pushed into 5.1.35-ndb-6.3.26 (revid:jonas@mysql.com-20090803130332-pesbastqnj76b1is) (version source revid:jonas@mysql.com-20090803130332-pesbastqnj76b1is) (merge vers: 5.1.35-ndb-6.3.26) (pib:11)
[3 Aug 2009 16:13] Bugs System
Pushed into 5.1.35-ndb-7.0.7 (revid:jonas@mysql.com-20090803153854-un8jv9y2md8k221t) (version source revid:jonas@mysql.com-20090803153854-un8jv9y2md8k221t) (merge vers: 5.1.35-ndb-7.0.7) (pib:11)
[12 Aug 2009 18:26] Jonas Oreland
this patch has been pushed to 6.2.19, 6.3.26 and 7.0.7
it changes the default clock for solaris to CLOCK_REALTIME (for ndbapi/ndb_mgmd)
[27 Aug 2009 18:18] Jon Stephens
Documented bugfix in the NDB-6.2.19, 6.3.26, and 7.0.7 changelogs as follows:

        On Solaris platforms, the MySQL Cluster management server and 
        NDB API applications now use CLOCK_REALTIME as the default 
        clock.
[22 Oct 2009 16:24] 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/87791

2898 Mikael Ronstrom	2009-10-22
      BUG#46183, added character set identifier on character constants in VALUES part for column list partitioned tables to ensure constants are handled properly according to character sets
      modified:
        mysql-test/r/partition_column.result
        mysql-test/t/partition_column.test
        sql/sql_partition.cc
[5 Nov 2009 6:51] Bugs System
Pushed into 6.0.14-alpha (revid:mikael@mysql.com-20091104090210-om5lq1v39ppduu0e) (version source revid:mikael@mysql.com-20091030163450-387z4yevx0lrj3fb) (merge vers: 6.0.14-alpha) (pib:13)
[5 Nov 2009 8:48] Magnus Blåudd
Setting back to closed after Mikael's commit with wrong BUG# in the comment apparently made it into 6.0
[12 Nov 2009 8:21] Bugs System
Pushed into 5.5.0-beta (revid:alik@sun.com-20091110093229-0bh5hix780cyeicl) (version source revid:mikael@mysql.com-20091028172236-0v5j962mh2opxpkj) (merge vers: 5.5.0-beta) (pib:13)
[15 Nov 2009 14:51] Jon Stephens
Commit with wrong BUG# caused status to be updated wrongly (see Magnus' comment above). Closed without further action.