Bug #10804 Wrong replacement for "rows" in test output
Submitted: 23 May 2005 16:31 Modified: 22 Jun 2005 15:02
Reporter: Joerg Bruehe Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Optimizer Severity:S3 (Non-critical)
Version:5.0.6 OS:IBM AIX (AIX 5.2 (32 bit))
Assigned to: Sergey Petrunya CPU Architecture:Any

[23 May 2005 16:31] Joerg Bruehe
Description:
Build of 5.0.6, based on ChangeSet
  1.1889 05/05/21 23:23:39 kent@mysql.com +5 -0
  default_modify.c:
    Use MY_STAT to declare argument to my_fstat()
  des_key_file.cc:
    Use local seach path for "mysql_priv.h"
  mysys.dsp, libmysqld.dsp, libmysql.dsp:
    New file needed, "../mysys/default_modify.c"

The problem seems specific to AIX 5.2, it happens in both builds ("cluster" and "pro-gpl") tested, in both "default" and "--ps-protocol":

-------------------------------------------------------
*** r/index_merge.result        Sun May 22 02:05:14 2005
--- r/index_merge.reject        Sun May 22 23:42:36 2005
***************
*** 374,381 ****
  where (A.key1 = 1 and A.key2 = 1 and A.key3 = 1 and A.key4=1 and A.key5=1 and A.key6=1 and A.key# = 1 or A.key8=1)
  and (B.key1 = 1 and B.key2 = 1 and B.key3 = 1 and B.key4=1 and B.key5=1 and B.key6=1 and B.key# = 1 or B.key8=1);
  id    select_type     table   type    possible_keys   key     key_len ref     rows    Extra
! 1     SIMPLE  A       index_merge     i1,i2,i3,i4,i5,i6,i7?,i8        i2,i3,i4,i5,i6,i7?,i8   X       NULL    #       Using union(intersect(i2,i3,i4,i5,i6,i7?),i8); Using where
! 1     SIMPLE  B       index_merge     i1,i2,i3,i4,i5,i6,i7?,i8        i2,i3,i4,i5,i6,i7?,i8   X       NULL    #       Using union(intersect(i2,i3,i4,i5,i6,i7?),i8); Using where
  select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
  from t0 as A, t0 as B
  where (A.key1 = 1 and A.key2 = 1 and A.key3 = 1 and A.key4=1 and A.key5=1 and A.key6=1 and A.key7 = 1 or A.key8=1)
--- 374,381 ----
  where (A.key1 = 1 and A.key2 = 1 and A.key3 = 1 and A.key4=1 and A.key5=1 and A.key6=1 and A.key# = 1 or A.key8=1)
  and (B.key1 = 1 and B.key2 = 1 and B.key3 = 1 and B.key4=1 and B.key5=1 and B.key6=1 and B.key# = 1 or B.key8=1);
  id    select_type     table   type    possible_keys   key     key_len ref     rows    Extra
! 1     SIMPLE  A       index_merge     i1,i2,i3,i4,i5,i6,i7?,i8        i2,i3,i4,i5,i6,i7?,i8   X       NULL    8       Using union(intersect(i2,i3,i4,i5,i6,i7?),i8); Using where
! 1     SIMPLE  B       index_merge     i1,i2,i3,i4,i5,i6,i7?,i8        i2,i3,i4,i5,i6,i7?,i8   X       NULL    8       Using union(intersect(i2,i3,i4,i5,i6,i7?),i8); Using where
  select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
  from t0 as A, t0 as B
  where (A.key1 = 1 and A.key2 = 1 and A.key3 = 1 and A.key4=1 and A.key5=1 and A.key6=1 and A.key7 = 1 or A.key8=1)
-------------------------------------------------------

How to repeat:
Run the test suite.
[20 Jun 2005 7:05] 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/internals/26169
[22 Jun 2005 15:02] Sergey Petrunya
Fix pushed  into 5.0.8 tree (no docs update necessary)