ChangeSet@1.2585, 2007-12-14 21:38:58+01:00, kent@mysql.com +1 -0
  sp_head.cc:
    Corrected typo

  sql/sp_head.cc@1.258, 2007-12-14 21:03:30+01:00, kent@mysql.com +1 -1
    Corrected typo

ChangeSet@1.2584, 2007-12-14 18:23:11+01:00, kent@mysql.com +3 -0
  sp_head.cc:
    Made sp_head::operator delete() match prototype, added throw()
  mysql_test_run.c, mysqld_safe.c:
    Include "mysql_version.h" to get MYSQL_PORT defined

  netware/mysql_test_run.c@1.21, 2007-12-14 18:22:06+01:00, kent@mysql.com +1 -0
    Include "mysql_version.h" to get MYSQL_PORT defined

  netware/mysqld_safe.c@1.12, 2007-12-14 18:22:44+01:00, kent@mysql.com +1 -0
    Include "mysql_version.h" to get MYSQL_PORT defined

  sql/sp_head.cc@1.257, 2007-12-14 18:21:18+01:00, kent@mysql.com +1 -1
    Made sp_head::operator delete() match prototype, added throw()

ChangeSet@1.2583, 2007-12-13 23:46:29+04:00, gluh@mysql.com +1 -0
  additional fix
  TAG: clone-5.0.54-build

  sql/ha_blackhole.cc@1.29, 2007-12-13 23:46:28+04:00, gluh@mysql.com +1 -1
    additional fix

ChangeSet@1.2582, 2007-12-13 21:13:08+04:00, gluh@mysql.com +1 -0
  valgrind error fix

  sql/ha_blackhole.cc@1.28, 2007-12-13 21:13:06+04:00, gluh@mysql.com +9 -1
    valgrind error fix

ChangeSet@1.2581, 2007-12-13 15:47:23+04:00, gluh@mysql.com +3 -0
  after merge fix

  mysql-test/r/delayed.result@1.18, 2007-12-13 15:47:21+04:00, gluh@mysql.com +0 -16
    after merge fix

  mysql-test/r/func_misc.result@1.33, 2007-12-13 15:47:21+04:00, gluh@mysql.com +1 -1
    after merge fix

  mysql-test/t/func_misc.test@1.27, 2007-12-13 15:47:21+04:00, gluh@mysql.com +1 -2
    after merge fix

ChangeSet@1.2541.92.1, 2007-12-13 13:38:22+03:00, sergefp@mysql.com +4 -0
  BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
  - Make conditions like "date_col $CMP$ 'datetime-const'" range-sargable

  mysql-test/r/range.result@1.59, 2007-12-13 13:38:19+03:00, sergefp@mysql.com +18 -0
    BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
    - Testcase

  mysql-test/t/range.test@1.49, 2007-12-13 13:38:19+03:00, sergefp@mysql.com +20 -0
    BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
    - Testcase

  sql/field.cc@1.367, 2007-12-13 13:38:19+03:00, sergefp@mysql.com +3 -0
    BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
    - Added comments

  sql/opt_range.cc@1.253.1.7, 2007-12-13 13:38:20+03:00, sergefp@mysql.com +26 -1
    BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
    - Make conditions like "date_col $CMP$ 'datetime-const'" range-sargable

ChangeSet@1.2578, 2007-12-12 19:49:08+01:00, istruewing@stella.local +1 -0
  Dummy push to help pushbuild running again.
  Fixed case of comment.

  mysql-test/t/merge.test@1.52.1.1, 2007-12-12 19:49:07+01:00, istruewing@stella.local +1 -1
    Fixed case of comment.

ChangeSet@1.2575.1.1, 2007-12-11 17:38:49+01:00, df@pippilotta.erinye.com +1 -0
  No we're still at 5.0.54.

  configure.in@1.465, 2007-12-11 17:38:47+01:00, df@pippilotta.erinye.com +2 -2
    No we're still at 5.0.54.

ChangeSet@1.2541.1.58, 2007-12-09 11:53:07-08:00, igor@olga.mysql.com +1 -0
  Forced compilers to remove the warning appeared after the patch
  with a fix for bug 32694. 

  sql/item_cmpfunc.cc@1.266.1.5, 2007-12-09 11:53:05-08:00, igor@olga.mysql.com +1 -0
    Forced compilers to remove the warning appeared after the patch
    with a fix for bug 32694. 

ChangeSet@1.2541.91.1, 2007-12-08 23:05:00+02:00, timour@lapi.mysql.com +3 -0
  Fix for BUG#32694 "NOT NULL table field in a subquery produces invalid results"
    
  The problem was that when convert_constant_item is called for subqueries,
  this happens when we already started executing the top-level query, and
  the field argument of convert_constant_item pointed to a valid table row.
  In turn convert_constant_item used the field buffer to compute the value
  of its item argument. This copied the item's value into the field,
  and made equalities with outer references always true.
    
  The fix saves/restores the original field's value when it belongs to an
  outer table.

  mysql-test/r/type_datetime.result@1.51, 2007-12-08 23:04:56+02:00, timour@lapi.mysql.com +55 -0
    Test for BUG#32694.

  mysql-test/t/type_datetime.test@1.34.1.1, 2007-12-08 23:04:58+02:00, timour@lapi.mysql.com +37 -0
    Test for BUG#32694.

  sql/item_cmpfunc.cc@1.266.1.4, 2007-12-08 23:04:58+02:00, timour@lapi.mysql.com +41 -26
    - Changed convert_constant_item() so that it doesn't destroy the contents
      of its field argument when the field originates from table in an outer
      query.

ChangeSet@1.2541.1.56, 2007-12-07 23:36:58-08:00, igor@olga.mysql.com +3 -0
  Fixed bug #27545.
  Both arguments of the function NAME_CONST must be constant expressions.
  This constraint is checked in the Item_name_const::fix_fields method. 
  Yet if the argument of the function was not a constant expression no
  error message was reported. As a result the client hanged waiting for a
  response.
  Now the function Item_name_const::fix_fields reports an error message
  when any of the additional context conditions imposed on the function
  NAME_CONST is not satisfied. 

  mysql-test/r/func_misc.result@1.29.2.1, 2007-12-07 23:36:53-08:00, igor@olga.mysql.com +5 -0
    Added a test case for bug #26545.

  mysql-test/t/func_misc.test@1.23.2.1, 2007-12-07 23:36:53-08:00, igor@olga.mysql.com +13 -0
    Added a test case for bug #26545.

  sql/item.cc@1.293, 2007-12-07 23:36:53-08:00, igor@olga.mysql.com +7 -7
    Fixed bug #27545.
    Both arguments of the function NAME_CONST must be constant expressions.
    This constraint is checked in the Item_name_const::fix_fields method. 
    Yet if the argument of the function was not a constant expression no
    error message was reported. As a result the client hanged waiting for a
    response.
    Now the function Item_name_const::fix_fields reports an error message
    when any of the additional context conditions imposed on the function
    NAME_CONST is not satisfied. 

ChangeSet@1.2541.90.1, 2007-12-07 17:14:59-08:00, igor@olga.mysql.com +3 -0
  Fixed bug #32815.
  The index (key_part_1, key_part-2) was erroneously considered as compatible
  with the required ordering in the function test_test_if_order_by_key when 
  a query with an ORDER BY clause contained a condition of the form
    key_part_1=const OR key_part_1 IS NULL 
  and the order list contained only key_part_2. This happened because the value
  of the const_key_parts field in the KEYUSE structure was not formed correctly
  for the keys that could be used for ref_or_null access. 
  This was fixed in the code of the update_ref_and_keys function.
  The problem could not manifest itself for MyISAM databases because the
  implementation of the keys_to_use_for_scanning() handler function always
  returns an empty bitmap for the MyISAM engine.

  mysql-test/r/innodb_mysql.result@1.34.1.2, 2007-12-07 17:14:54-08:00, igor@olga.mysql.com +12 -0
    Added a test case for bug #32815.

  mysql-test/t/innodb_mysql.test@1.33.1.1, 2007-12-07 17:14:54-08:00, igor@olga.mysql.com +15 -0
    Added a test case for bug #32815.

  sql/sql_select.cc@1.549.1.10, 2007-12-07 17:14:54-08:00, igor@olga.mysql.com +1 -1
    Fixed bug #32815.
    The index (key_part_1, key_part-2) was erroneously considered as compatible
    with the required ordering in the function test_test_if_order_by_key when 
    a query with an ORDER BY clause contained a condition of the form
      key_part_1=const OR key_part_1 IS NULL 
    and the order list contained only key_part_2. This happened because the value
    of the const_key_parts field in the KEYUSE structure was not formed correctly
    for the keys that could be used for ref_or_null access. 
    This was fixed in the code of the update_ref_and_keys function.

ChangeSet@1.2572, 2007-12-07 14:43:31-07:00, tsmith@ramayana.hindu.god +1 -0
  Add a way to remove options which mysql-test-run.pl no longer uses.

  mysql-test/mysql-test-run.pl@1.254, 2007-12-07 14:43:29-07:00, tsmith@ramayana.hindu.god +25 -0
    Add a way to remove options which mysql-test-run.pl no longer uses.  Since
    mysql-test-run.pl passes unrecognized options through to mysqld directly,
    it is not possible to just remove an option.  Otherwise it would be given
    to mysqld, which probably will not recognize it and will fail to start.
    
    Instead, we now explicitly ignore the option, and print a warning to
    the user.

ChangeSet@1.2569, 2007-12-07 03:39:37-07:00, tsmith@ramayana.hindu.god +2 -0
  Make tests more robust (clean up better after grant.test)

  mysql-test/r/grant.result@1.70, 2007-12-07 03:39:36-07:00, tsmith@ramayana.hindu.god +2 -0
    Update test results to .test changes

  mysql-test/t/grant.test@1.59, 2007-12-07 03:39:36-07:00, tsmith@ramayana.hindu.god +2 -0
    Drop users when done with them, to avoid skewing results of later tests.
    
    For example, running some test which examines the cardinality of the
    mysql.user table would fail if run right after this test, due to the
    extra users. 

ChangeSet@1.2568, 2007-12-06 16:11:26-07:00, tsmith@ramayana.hindu.god +1 -0
  Fix compiler warning about wrong integer size (probably harmless)

  sql/sql_select.cc@1.553, 2007-12-06 16:11:24-07:00, tsmith@ramayana.hindu.god +1 -1
    Fix compiler warning (probably harmless, wrong integer size)

ChangeSet@1.1616.3122.2, 2007-12-06 15:05:24-07:00, tsmith@ramayana.hindu.god +1 -0
  ctype-simple.c: Backport quick fix to remove Windows compiler warnings

  strings/ctype-simple.c@1.57.1.13, 2007-12-06 15:05:23-07:00, tsmith@ramayana.hindu.god +2 -2
    Backport quick fix to remove Windows compiler warnings.

ChangeSet@1.2541.86.3, 2007-12-06 01:28:01+01:00, tnurnberg@mysql.com +11 -0
  Bug#31177: Server variables can't be set to their current values
  
  additional fixes for BDB and correct assignment of both signed
  and unsigned 64-bit data to unsigned system variables

  mysql-test/r/ps_2myisam.result@1.51.1.1, 2007-12-06 01:27:59+01:00, tnurnberg@mysql.com +8 -8
    account for UNSIGNED_FLAG

  mysql-test/r/ps_3innodb.result@1.54.1.1, 2007-12-06 01:27:59+01:00, tnurnberg@mysql.com +8 -8
    account for UNSIGNED_FLAG

  mysql-test/r/ps_4heap.result@1.50.1.1, 2007-12-06 01:27:59+01:00, tnurnberg@mysql.com +8 -8
    account for UNSIGNED_FLAG

  mysql-test/r/ps_5merge.result@1.51.1.1, 2007-12-06 01:27:59+01:00, tnurnberg@mysql.com +16 -16
    account for UNSIGNED_FLAG

  mysql-test/r/ps_6bdb.result@1.55.1.1, 2007-12-06 01:27:59+01:00, tnurnberg@mysql.com +8 -8
    account for UNSIGNED_FLAG

  mysql-test/r/ps_7ndb.result@1.54.1.1, 2007-12-06 01:27:59+01:00, tnurnberg@mysql.com +8 -8
    account for UNSIGNED_FLAG

  mysys/my_getopt.c@1.66, 2007-12-06 01:27:59+01:00, tnurnberg@mysql.com +0 -2
    We have correct signed/unsigned information now, so we no longer
    need to err on the side of caution.

  sql/item_func.cc@1.358.1.2, 2007-12-06 01:27:59+01:00, tnurnberg@mysql.com +2 -0
    Copy unsigned info over from entry so the item's data
    correctly describe it.

  sql/mysqld.cc@1.628.5.1, 2007-12-06 01:27:59+01:00, tnurnberg@mysql.com +1 -1
    BDB log buffer size: default can't be less than minimum

  sql/set_var.cc@1.195, 2007-12-06 01:27:59+01:00, tnurnberg@mysql.com +24 -8
    Handle signedness of in-values correctly when assigning to
    unsigned types, all the way up to 64-bit. Use handler from
    all three unsigned sysvar types.

  sql/set_var.h@1.83.1.2, 2007-12-06 01:27:59+01:00, tnurnberg@mysql.com +1 -0
    thd_ulonglong: Override default check with one for unsigned types

ChangeSet@1.2521.74.1, 2007-12-03 10:08:58+01:00, mhansson@linux-st28.site +3 -0
  Bug#30234: Unexpected behavior using DELETE with AS and USING
  
  Anti-patch. This patch undoes the previously pushed patch. It is 
  null-merged in versions 5.1 and above since there the original 
  patch is still desired.

  mysql-test/r/delete.result@1.31.1.1, 2007-12-03 10:08:56+01:00, mhansson@linux-st28.site +0 -37
    Bug#30234: Anti-patch 

  mysql-test/t/delete.test@1.29.1.1, 2007-12-03 10:08:56+01:00, mhansson@linux-st28.site +0 -44
    Bug#30234: Anti-patch 

  sql/sql_yacc.yy@1.534.2.3, 2007-12-03 10:08:56+01:00, mhansson@linux-st28.site +2 -17
    Bug#30234: Anti-patch 

ChangeSet@1.2541.86.2, 2007-12-03 10:01:56+01:00, tnurnberg@mysql.com +2 -0
  Bug#31177: Server variables can't be set to their current values
  
  additional fixes for 64-bit

  mysql-test/t/variables.test@1.70.1.2, 2007-12-03 10:01:55+01:00, tnurnberg@mysql.com +1 -1
    replace 32-bit and 64-bit values

  mysys/my_getopt.c@1.65, 2007-12-03 10:01:55+01:00, tnurnberg@mysql.com +3 -1
    'mod' no longer used.
    on 64-bit, limit to (signed) (LONG)LONG_MAX to prevent badness
    in classes using longlong.

ChangeSet@1.2522.9.4, 2007-12-02 13:49:12+03:00, kaa@polly.(none) +3 -0
  Windows-specific fixes in floating point tests.

  mysql-test/t/insert.test@1.26.1.3, 2007-12-02 13:49:09+03:00, kaa@polly.(none) +3 -0
    Windows implements a different rounding rules in printf("%g"), thus we still need to do replace_result

  mysql-test/t/variables.test@1.67.3.2, 2007-12-02 13:49:09+03:00, kaa@polly.(none) +2 -0
    We need to do replace_result because variables are printed by another procedure.

  sql/field.cc@1.360.3.4, 2007-12-02 13:49:09+03:00, kaa@polly.(none) +4 -1
    Fixed the code to limit the precision to DBL_DIG.

ChangeSet@1.2522.9.3, 2007-12-01 15:25:24+03:00, kaa@polly.(none) +4 -0
  Fixed the floating point number tests on Windows.

  mysql-test/r/insert.result@1.29.1.2, 2007-12-01 15:25:21+03:00, kaa@polly.(none) +12 -12
    Fixed the test cases.

  mysql-test/t/cast.test@1.37.1.2, 2007-12-01 15:25:21+03:00, kaa@polly.(none) +2 -0
    We need to do replace_result because warnings are printed by another procedure.

  mysql-test/t/insert.test@1.26.1.2, 2007-12-01 15:25:21+03:00, kaa@polly.(none) +3 -1
    Windows implements a different rounding rules in printf("%g"), thus we still need to do replace_result.

  sql/field.cc@1.360.3.3, 2007-12-01 15:25:21+03:00, kaa@polly.(none) +1 -1
    Limit the precision to avoid garbage past the significant digits.

ChangeSet@1.2522.9.2, 2007-12-01 12:46:25+03:00, kaa@polly.(none) +1 -0
  Fixed the build failure on Windows. It does not have trunc() defined in math.h, so we should not use it code.

  sql/field.cc@1.360.3.2, 2007-12-01 12:46:22+03:00, kaa@polly.(none) +2 -1
    Fixed the build failure on Windows. It does not have trunc() defined in math.h, so we should not use it code.

ChangeSet@1.2522.9.1, 2007-12-01 10:05:59+03:00, kaa@polly.(none) +6 -0
  Fix for bug #26788 "mysqld (debug) aborts when inserting specific
  numbers into char fields" and bug #12860 "Difference in zero padding of
  exponent between Unix and Windows"
  
  Rewrote the code that determines what 'precision' argument should be
  passed to sprintf() to fit the string representation of the input number
  into the field.
  We get finer control over conversion by pre-calculating the exponent, so
  we are able to determine which conversion format, 'e' or 'f', will be
  used by sprintf().
  We also remove the leading zero from the exponent on Windows to make it
  compatible with the sprintf() output on other platforms.

  mysql-test/r/insert.result@1.29.1.1, 2007-12-01 10:05:54+03:00, kaa@polly.(none) +120 -0
    Added test cases for bug #26788 and bug #31152.

  mysql-test/t/cast.test@1.37.1.1, 2007-12-01 10:05:54+03:00, kaa@polly.(none) +0 -2
    Removed --replace_result, since the result is now correct on Windows.

  mysql-test/t/insert.test@1.26.1.1, 2007-12-01 10:05:54+03:00, kaa@polly.(none) +81 -0
    Added test cases for bug #26788 and bug #31152.

  mysql-test/t/type_float.test@1.30.1.4, 2007-12-01 10:05:54+03:00, kaa@polly.(none) +0 -5
    Removed --replace_result, since the result is now correct on Windows.

  mysql-test/t/variables.test@1.67.3.1, 2007-12-01 10:05:54+03:00, kaa@polly.(none) +0 -2
    Removed --replace_result, since the result is now correct on Windows.

  sql/field.cc@1.360.3.1, 2007-12-01 10:05:54+03:00, kaa@polly.(none) +60 -14
    Rewrote the code that determines what 'precision' argument should be
    passed to sprintf() to fit the string representation of the input number
    into the field.
    We get finer control over conversion by pre-calculating the exponent, so
    we are able to determine which conversion format, 'e' or 'f', will be
    used by sprintf().

ChangeSet@1.1616.3114.6, 2007-11-30 18:06:28+01:00, mleich@four.local.lan +3 -0
  Fix for
     Bug#31030 rpl000015.test fails if $MYSQL_TCP_PORT != 3306
  Note:
    This bug does not occur in MySQL 5.0 and up, because
    ChangeSet 1.2328.2.1 2006/11/27 for MySQL 5.0 prevents this.
    The 5.0 fix uses the environment variable DEFAULT_MASTER_PORT
    which is set by mysql-test-run.pl.
    mysql-test-run.pl in 4.1 does not set this variable.
    There are two alternatives:
    1) Backport the 5.0 fix for this test including modifications
       to mysql-test-run.pl and mysql-test-run-shell.
       This is a not acceptable impact on an old MySQL version.
    2) Fix the problem different than in 5.0 like in the current
       ChangeSet + do not apply these changes when upmerging to 5.0

  mysql-test/t/disabled.def@1.1.6.1, 2007-11-30 18:06:27+01:00, mleich@four.local.lan +0 -1
    Enable rpl000015

  mysql-test/r/rpl000015.result@1.30.1.3, 2007-11-30 18:06:27+01:00, mleich@four.local.lan +1 -1
    Updated result

  mysql-test/t/rpl000015.test@1.25.1.7, 2007-11-30 18:06:27+01:00, mleich@four.local.lan +1 -1
    Unify the MASTER_PORT number

ChangeSet@1.2541.88.1, 2007-11-30 17:08:00+04:00, holyfoot@mysql.com +4 -0
  Bug #32374 crash with filesort when selecting from federated table and view.
  
  filesort() uses file->estimate_rows_upper_bound() call to allocate
  internal buffers. If this function returns a value smaller than
  a number of row that will be returned later in find_all_keys(),
  that can cause server crash.
  Fixed by implementing ha_federated::estimate_rows_upper_bound() to
  return maximum possible number of rows.
  Present estimation for FEDERATED always returns 0 if the linked to the VIEW.

  mysql-test/r/federated.result@1.47, 2007-11-30 17:07:58+04:00, holyfoot@mysql.com +111 -0
    Bug #32374 crash with filesort when selecting from federated table and view.
    
    test result

  mysql-test/t/federated.test@1.41, 2007-11-30 17:07:58+04:00, holyfoot@mysql.com +31 -0
    Bug #32374 crash with filesort when selecting from federated table and view.
    
    test case

  sql/ha_federated.cc@1.86, 2007-11-30 17:07:58+04:00, holyfoot@mysql.com +18 -0
    Bug #32374 crash with filesort when selecting from federated table and view.
    
    ha_federated::estimate_rows_upper_bound() implemented

  sql/ha_federated.h@1.36, 2007-11-30 17:07:58+04:00, holyfoot@mysql.com +1 -0
    Bug #32374 crash with filesort when selecting from federated table and view.
    
    ha_federated::estimate_rows_upper_bound() interface

ChangeSet@1.2541.86.1, 2007-11-30 06:32:04+01:00, tnurnberg@mysql.com +21 -0
  Bug#31177: Server variables can't be set to their current values
  
  Default values of variables were not subject to upper/lower bounds
  and step, while setting variables was. Bounds and step are also
  applied to defaults now; defaults are corrected quietly, values
  given by the user are corrected, and a correction-warning is thrown
  as needed. Lastly, very large values could wrap around, starting
  from 0 again. They are bounded at the maximum value for the
  respective data-type now if no lower maximum is specified in the
  variable's definition.

  client/mysql.cc@1.241.2.1, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +7 -6
    correct maxima in options array

  client/mysqltest.c@1.309.1.1, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +1 -1
    adjust minimum for "sleep" option so default value is no longer
    out of bounds.

  include/m_string.h@1.43, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +1 -0
    ullstr() - the unsigned brother of llstr()

  include/my_getopt.h@1.20, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +2 -1
    Flag if we bounded the value (that is, correct anything aside from
    making value a multiple of block-size)

  mysql-test/r/delayed.result@1.14.2.1, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +16 -0
    We throw a warning now when we adjust out of range parameters.

  mysql-test/r/index_merge.result@1.24, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +2 -0
    We throw a warning now when we adjust out of range parameters.

  mysql-test/r/innodb.result@1.170.1.1, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +4 -0
    We throw a warning now when we adjust out of range parameters.

  mysql-test/r/innodb_mysql.result@1.34.1.1, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +2 -0
    We throw a warning now when we adjust out of range parameters.

  mysql-test/r/key_cache.result@1.23, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +2 -0
    We throw a warning now when we adjust out of range parameters.

  mysql-test/r/packet.result@1.8, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +8 -0
    We throw a warning now when we adjust out of range parameters.

  mysql-test/r/ps.result@1.94.1.1, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +2 -0
    We throw a warning now when we adjust out of range parameters.

  mysql-test/r/subselect.result@1.195.3.1, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +4 -0
    We throw a warning now when we adjust out of range parameters.

  mysql-test/r/type_bit.result@1.24.1.1, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +2 -0
    We throw a warning now when we adjust out of range parameters.

  mysql-test/r/type_bit_innodb.result@1.7, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +2 -0
    We throw a warning now when we adjust out of range parameters.

  mysql-test/r/variables.result@1.96, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +28 -2
    correct results: bounds and step apply to variables' default values, too

  mysql-test/t/variables.test@1.70.1.1, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +1 -1
    correct results: bounds and step apply to variables' default values, too

  mysys/my_getopt.c@1.64, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +127 -48
    - apply bounds/step to default values of variables (based on work by serg)
    - print complaints about incorrect values for variables (truncation etc.,
      by requestion of consulting)
    - if no lower maximum is specified in variable definition, bound unsigned
      values at their maximum to prevent wrap-around
    - some calls to error_reporter had a \n, some didn't. remove \n from calls,
      let reporter-function handle it, so the default reporter behaves like that
      in mysqld

  sql/mysql_priv.h@1.464.1.1, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +1 -1
    correct RANGE_ALLOC_BLOCK_SIZE (cleared with monty)

  sql/mysqld.cc@1.628.3.1, 2007-11-30 06:32:02+01:00, tnurnberg@mysql.com +41 -39
    correct maxima to correct data-type.
    correct minima where higher than default.
    correct range-alloc-block-size.
    correct inno variables so GET_* corresponds to actual variable's type.

  sql/set_var.cc@1.194, 2007-11-30 06:32:03+01:00, tnurnberg@mysql.com +48 -22
    When the new value for a variable is out of bounds, we'll send the
    client a warning (but not if the value was simply not a multiple of
    'blocksize').  sys_var_thd_ulong had this, sys_var_long_ptr_global
    didn't; broken out and streamlined to avoid duplication of code.

  strings/llstr.c@1.9, 2007-11-30 06:32:03+01:00, tnurnberg@mysql.com +6 -0
    ullstr() - the unsigned brother of llstr()

ChangeSet@1.1616.3090.17, 2007-11-30 01:36:05+01:00, kent@mysql.com +1 -0
  my_global.h:
    Added 64 bit Mac OS X hard coded settings, for universal binaries

  include/my_global.h@1.47.1.70, 2007-11-30 01:35:56+01:00, kent@mysql.com +25 -30
    Added 64 bit Mac OS X hard coded settings, for universal binaries

ChangeSet@1.1616.3090.16, 2007-11-30 01:22:15+01:00, kent@mysql.com +1 -0
  Excluded verbose and bad change to Mac OS X universal binaries handling

  include/my_global.h@1.47.1.69, 2007-11-30 01:22:15+01:00, kent@mysql.com +0 -0
    Excluded verbose and bad change to Mac OS X universal binaries handling

ChangeSet@1.2541.68.3, 2007-11-29 16:40:46+00:00, jonathan@chorlton.adsl.perkin.org.uk +1 -0
  Shell portability fix.

  scripts/mysql_install_db.sh@1.101, 2007-11-29 16:39:11+00:00, jonathan@chorlton.adsl.perkin.org.uk +3 -3
    Use "test !" instead of "! test", as the
    latter does not work on certain shells.

ChangeSet@1.1616.3120.1, 2007-11-29 14:52:36+04:00, holyfoot@mysql.com +1 -0
  Bug #29085 A small double precision number becomes zero.
  
  Denormalized DOUBLE-s can't be properly handled by old MIPS processors.
  So we need to enable specific mode for them so IRIX will do use
  software round to handle such numbers. 

  sql/mysqld.cc@1.356.117.4, 2007-11-29 14:52:36+04:00, holyfoot@mysql.com +17 -3
    Bug #29085 A small double precision number becomes zero.
    
    reset_floating_point_exeption() renamed as set_proper_floating_point_mode()
    #ifdef __sgi code added to enable denormalized DOUBLE-s on IRIX

ChangeSet@1.2541.66.4, 2007-11-29 10:37:07+04:00, holyfoot@mysql.com +3 -0
  Bug #32624 Error with multi queries in MySQL embedded server 5.1.22.
  
  server status wasn't properly sent to the client after the error
  by the embedded server. Wasn't noticed before as one usually stopped
  retrieving results after he gets an error.

  libmysqld/lib_sql.cc@1.130, 2007-11-29 10:37:05+04:00, holyfoot@mysql.com +2 -0
    Bug #32624 Error with multi queries in MySQL embedded server 5.1.22.
    
    server status transferred to the client after errors

  sql/protocol.cc@1.124, 2007-11-29 10:37:06+04:00, holyfoot@mysql.com +3 -2
    Bug #32624 Error with multi queries in MySQL embedded server 5.1.22.
    
    set server status before net_send_error_packet() call as this
    function sends it to the client in the embedded server

  tests/mysql_client_test.c@1.240.1.2, 2007-11-29 10:37:06+04:00, holyfoot@mysql.com +14 -0
    Bug #32624 Error with multi queries in MySQL embedded server 5.1.22.
    
    testcase added

ChangeSet@1.2541.83.1, 2007-11-28 10:18:01-02:00, davi@mysql.com +3 -0
  Bug#31479 Bad lock interaction if CREATE TABLE LIKE is killed
  
  Kill of a CREATE TABLE source_table LIKE statement waiting for a
  name-lock on the source table causes a bad lock interaction.
  
  The mysql_create_like_table() has a bug that if the connection is
  killed while waiting for the name-lock on the source table, it will
  jump to the wrong error path and try to unlock the source table and
  LOCK_open, but both weren't locked.
  
  The solution is to simple return when the name lock request is killed,
  it's safe to do so because no lock was acquired and no cleanup is needed.
  
  Original bug report also contains description of other problems
  related to this scenario but they either already fixed in 5.1 or
  will be addressed separately (see bug report for details).

  mysql-test/r/lock_multi.result@1.22, 2007-11-28 10:18:00-02:00, davi@mysql.com +11 -0
    Add test case result for Bug#31479

  mysql-test/t/lock_multi.test@1.23, 2007-11-28 10:18:00-02:00, davi@mysql.com +32 -0
    Add test case for Bug#31479

  sql/sql_table.cc@1.357.1.1, 2007-11-28 10:18:00-02:00, davi@mysql.com +1 -1
    Rerturn TRUE when the lock gets killed.

ChangeSet@1.2541.29.37, 2007-11-28 09:48:06+01:00, istruewing@stella.local +1 -0
  Bug#29149 Test "kill" fails on Windows
  Disabled test case.

  mysql-test/t/disabled.def@1.55, 2007-11-28 09:48:04+01:00, istruewing@stella.local +1 -0
    Bug#29149 Test "kill" fails on Windows
    Disabled test case.

ChangeSet@1.2541.82.1, 2007-11-28 10:55:13+04:00, ramil@mysql.com +9 -0
  Fix for bug #32726: crash with cast in order by clause and cp932 charset
    - fix for #31070 (missed during merging) applied for cp932 charset.
    - tests/results adjusted.

  mysql-test/include/ctype_common.inc@1.4, 2007-11-28 10:55:11+04:00, ramil@mysql.com +2 -0
    Fix for bug #32726: crash with cast in order by clause and cp932 charset
      - tests/results adjusted.

  mysql-test/r/ctype_big5.result@1.16, 2007-11-28 10:55:11+04:00, ramil@mysql.com +4 -0
    Fix for bug #32726: crash with cast in order by clause and cp932 charset
      - tests/results adjusted.

  mysql-test/r/ctype_cp932.result@1.12, 2007-11-28 10:55:11+04:00, ramil@mysql.com +74 -0
    Fix for bug #32726: crash with cast in order by clause and cp932 charset
      - tests/results adjusted.

  mysql-test/r/ctype_euckr.result@1.2.1.3, 2007-11-28 10:55:11+04:00, ramil@mysql.com +4 -0
    Fix for bug #32726: crash with cast in order by clause and cp932 charset
      - tests/results adjusted.

  mysql-test/r/ctype_gb2312.result@1.5, 2007-11-28 10:55:11+04:00, ramil@mysql.com +4 -0
    Fix for bug #32726: crash with cast in order by clause and cp932 charset
      - tests/results adjusted.

  mysql-test/r/ctype_gbk.result@1.7, 2007-11-28 10:55:11+04:00, ramil@mysql.com +4 -0
    Fix for bug #32726: crash with cast in order by clause and cp932 charset
      - tests/results adjusted.

  mysql-test/r/ctype_uca.result@1.21.1.1, 2007-11-28 10:55:11+04:00, ramil@mysql.com +4 -0
    Fix for bug #32726: crash with cast in order by clause and cp932 charset
      - tests/results adjusted.

  mysql-test/t/ctype_cp932.test@1.14, 2007-11-28 10:55:11+04:00, ramil@mysql.com +4 -0
    Fix for bug #32726: crash with cast in order by clause and cp932 charset
      - tests/results adjusted.

  strings/ctype-cp932.c@1.18, 2007-11-28 10:55:12+04:00, ramil@mysql.com +2 -2
    Fix for bug #32726: crash with cast in order by clause and cp932 charset
      - fix for #31070 (missed during merging) applied for cp932.
     

ChangeSet@1.2541.81.2, 2007-11-27 21:30:00+04:00, ramil@mysql.com +2 -0
  after-merge fixup: archive test/result adjusted.

  mysql-test/r/archive.result@1.21, 2007-11-27 21:29:58+04:00, ramil@mysql.com +1 -1
    after-merge fixup: archive test/result adjusted.

  mysql-test/t/archive.test@1.22, 2007-11-27 21:29:58+04:00, ramil@mysql.com +1 -1
    after-merge fixup: archive test/result adjusted.

ChangeSet@1.1616.3117.4, 2007-11-27 18:24:24+01:00, tnurnberg@mysql.com +1 -0
  Bug#32707: misdimensioned buffer in protocol layer
  
  Miscalculation in protocol-layer: size buffer correctly so
  even really long error messages cannot overflow our buffer.

  sql/protocol.cc@1.56.1.51, 2007-11-27 18:24:24+01:00, tnurnberg@mysql.com +4 -1
    size buffer correctly so really long error messages cannot overflow it.

ChangeSet@1.2541.29.34, 2007-11-27 17:28:55+01:00, istruewing@stella.local +1 -0
  Bug#8693 Test 'rpl_log_pos' fails sometimes
  Disabled the test case.

  mysql-test/t/disabled.def@1.54, 2007-11-27 17:28:54+01:00, istruewing@stella.local +1 -0
    Bug#8693 Test 'rpl_log_pos' fails sometimes
    Disabled the test case.

ChangeSet@1.2541.66.3, 2007-11-27 17:16:52+02:00, gkodinov@magare.gmz +6 -0
  Bug #30355: Incorrect ordering of UDF results
  
  There's currently no way of knowing the determinicity of an UDF.
  And the optimizer and the sequence() UDFs were making wrong
  assumptions about what the is_const member means.
  Plus there was no implementation of update_system_tables()
  causing the optimizer to overwrite the information returned by
  the <udf>_init function.
  
  Fixed by equating the assumptions about the semantics of 
  is_const and providing a implementation of update_used_tables().
  Added a TODO item for the UDF API change needed to make a better 
  implementation.

  include/mysql_com.h@1.114.1.1, 2007-11-27 17:16:51+02:00, gkodinov@magare.gmz +4 -0
    Bug #30355: comment added

  mysql-test/r/udf.result@1.16, 2007-11-27 17:16:51+02:00, gkodinov@magare.gmz +27 -0
    Bug #30355: test case

  mysql-test/t/udf.test@1.16, 2007-11-27 17:16:51+02:00, gkodinov@magare.gmz +21 -0
    Bug #30355: test case

  sql/item_func.cc@1.361.1.1, 2007-11-27 17:16:51+02:00, gkodinov@magare.gmz +6 -0
    Bug #30355: keep const_item_cache and used_tables_cache in sync

  sql/item_func.h@1.177.1.1, 2007-11-27 17:16:51+02:00, gkodinov@magare.gmz +50 -0
    Bug #30355: 
     - a better implementation of update_used_tables()
     - keep const_item_cache and used_tables_cache in sync

  sql/udf_example.c@1.38, 2007-11-27 17:16:51+02:00, gkodinov@magare.gmz +4 -6
    Bug #30355: Wrong value for const_item fixed.

ChangeSet@1.2541.79.1, 2007-11-27 19:14:48+04:00, gshchepa@gleb.loc +1 -0
  Fixed bug #32403: query causes a crash due to stack and
                    memory corruptions.
  
  The right pointer field of the SEL_ARG structure was not
  initialized in the constructor and sometimes that led to
  server crashes.
  
  There is no testcase because the bug occurs only when
  uninitialized memory has particular values, which can't be
  re-created in the test suite.

  sql/opt_range.cc@1.253.2.1, 2007-11-27 19:14:11+04:00, gshchepa@gleb.loc +4 -1
    Fixed bug #32403.
    
    The eq_tree function requires that SEL_ARG::left and
    SEL_ARG::right are equal to null pointer if SEL_ARG
    type is MAYBE_KEY, but SEL_ARG::right was not initialized
    and contained garbage.

ChangeSet@1.2541.77.1, 2007-11-27 09:36:43+04:00, ramil@mysql.com +4 -0
  Fix for bug #32559: connection hangs on query with name_const
  
  Problem: passing a non-constant name to the NAME_CONST function results in a crash.
  
  Fix: check the NAME_CONST name argument; return fake item type if we got
  non-constant argument(s).

  mysql-test/r/func_misc.result@1.30, 2007-11-27 09:36:40+04:00, ramil@mysql.com +7 -0
    Fix for bug #32559: connection hangs on query with name_const
      - test result.

  mysql-test/t/func_misc.test@1.24, 2007-11-27 09:36:40+04:00, ramil@mysql.com +11 -1
    Fix for bug #32559: connection hangs on query with name_const
      - test case.

  sql/item.cc@1.291.1.1, 2007-11-27 09:36:40+04:00, ramil@mysql.com +11 -1
    Fix for bug #32559: connection hangs on query with name_const
      - Item_name_const::type() now returns NULL_ITEM if non-constant arguments 
        were used to create the item to avoid wrong type casting.

  sql/item.h@1.246.1.1, 2007-11-27 09:36:40+04:00, ramil@mysql.com +3 -1
    Fix for bug #32559: connection hangs on query with name_const
      - NAME_CONST name argument checked for invariability.

ChangeSet@1.2541.67.2, 2007-11-26 21:28:01+01:00, hhunger@hh-nb.hhunger +5 -0
  patch for bug#32496 (2nd) with ansi conformant and Mysql test case.

  BitKeeper/etc/ignore@1.255, 2007-11-26 21:27:59+01:00, hhunger@hh-nb.hhunger +2 -0
    Added scripts/make_win_src_distribution_old server-tools/instance-manager/net_serv.cc to the ignore list

  mysql-test/suite/funcs_1/r/innodb_views.result@1.4, 2007-11-26 21:27:58+01:00, hhunger@hh-nb.hhunger +11 -4
    patch for bug#32496 (2nd) with ansi conformant and Mysql test case.

  mysql-test/suite/funcs_1/r/memory_views.result@1.4, 2007-11-26 21:27:59+01:00, hhunger@hh-nb.hhunger +11 -4
    patch for bug#32496 (2nd) with ansi conformant and Mysql test case.

  mysql-test/suite/funcs_1/r/myisam_views.result@1.4, 2007-11-26 21:27:59+01:00, hhunger@hh-nb.hhunger +1158 -1150
    patch for bug#32496 (2nd) with ansi conformant and Mysql test case.

  mysql-test/suite/funcs_1/views/views_master.inc@1.3, 2007-11-26 21:27:59+01:00, hhunger@hh-nb.hhunger +9 -0
    patch for bug#32496 (2nd) with ansi conformant and Mysql test case.

ChangeSet@1.2541.29.32, 2007-11-26 19:16:23+01:00, istruewing@stella.local +2 -0
  Bug#20830 - INSERT DELAYED does not honour SET INSERT_ID
  Bug#20627 - INSERT DELAYED does not honour auto_increment_* variables
  Fixed wrong variable assignment.

  mysql-test/r/delayed.result@1.14.1.1, 2007-11-26 19:16:21+01:00, istruewing@stella.local +8 -8
    Bug#20830 - INSERT DELAYED does not honour SET INSERT_ID
    Bug#20627 - INSERT DELAYED does not honour auto_increment_* variables
    Fixed wrong variable assignment.

  mysql-test/t/delayed.test@1.18.1.1, 2007-11-26 19:16:21+01:00, istruewing@stella.local +8 -8
    Bug#20830 - INSERT DELAYED does not honour SET INSERT_ID
    Bug#20627 - INSERT DELAYED does not honour auto_increment_* variables
    Fixed wrong variable assignment.

ChangeSet@1.2541.76.1, 2007-11-26 14:09:37-02:00, davi@mysql.com +5 -0
  Bug#29592 SQL Injection issue
  
  Remove the mysql_odbc_escape_string() function. The function
  has multi-byte character escaping issues, doesn't honor the
  NO_BACKSLASH_ESCAPES mode and is not used anymore by the
  Connector/ODBC as of 3.51.17.

  include/mysql.h@1.172, 2007-11-26 14:09:35-02:00, davi@mysql.com +0 -10
    Remove mysql_odbc_escape_string() prototype.

  include/mysql_h.ic@1.9, 2007-11-26 14:09:35-02:00, davi@mysql.com +233 -235
    Update abi check file, mostly line changes and mysql_odbc_escape_string
    removal.

  libmysql/libmysql.c@1.249, 2007-11-26 14:09:35-02:00, davi@mysql.com +0 -72
    Remove mysql_odbc_escape_string() body.

  libmysql/libmysql.def@1.46, 2007-11-26 14:09:35-02:00, davi@mysql.com +0 -1
    Remove mysql_odbc_escape_string()

  libmysqld/libmysqld.def@1.18, 2007-11-26 14:09:35-02:00, davi@mysql.com +0 -1
    Remove mysql_odbc_escape_string()

ChangeSet@1.2521.63.4, 2007-11-26 18:58:54+03:00, kaa@polly.(none) +6 -0
  Fix for bug #28837: MyISAM storage engine error (134) doing delete with
  self-join
  
  When doing DELETE with self-join on a MyISAM or MERGE table, it could
  happen that a record being retrieved in join_read_next_same() has
  already been deleted by previous iterations. That caused the engine's
  index_next_same() method to fail with HA_ERR_RECORD_DELETED error and
  the whole DELETE query to be aborted with an error.
  
  Fixed by suppressing the HA_ERR_RECORD_DELETED error in
  hy_myisam::index_next_same() and ha_myisammrg::index_next_same(). Since
  HA_ERR_RECORD_DELETED can only be returned by MyISAM, there is no point
  in filtering this error in the SQL layer.

  mysql-test/r/merge.result@1.62.1.1, 2007-11-26 18:58:50+03:00, kaa@polly.(none) +37 -0
    Added a test case for bug #28837.

  mysql-test/r/myisam.result@1.100.1.1, 2007-11-26 18:58:50+03:00, kaa@polly.(none) +22 -0
    Added a test case for bug #28837.

  mysql-test/t/merge.test@1.51.1.1, 2007-11-26 18:58:50+03:00, kaa@polly.(none) +22 -0
    Added a test case for bug #28837.

  mysql-test/t/myisam.test@1.81.1.1, 2007-11-26 18:58:50+03:00, kaa@polly.(none) +17 -0
    Added a test case for bug #28837.

  sql/ha_myisam.cc@1.182.2.1, 2007-11-26 18:58:51+03:00, kaa@polly.(none) +6 -2
    Skip HA_ERR_RECORD_DELETED silently when calling mi_rnext_same().

  sql/ha_myisammrg.cc@1.92, 2007-11-26 18:58:51+03:00, kaa@polly.(none) +6 -2
    Skip HA_ERR_RECORD_DELETED silently when calling mi_rnext_same().

ChangeSet@1.2541.75.1, 2007-11-26 18:36:05+03:00, kaa@polly.(none) +3 -0
  5.0 version of the fix for bug #9481: mysql_insert_id() returns 0 after
  insert ... select.
  
  The 5.0 manual page for mysql_insert_id() does not mention anything
  about INSERT ... SELECT, though its current behavior is incosistent
  with what the manual says about the plain INSERT.
  
  Fixed by changing the AUTO_INCREMENT and mysql_insert_id() handling
  logic in INSERT ... SELECT to be consistent with the INSERT behavior,
  the manual, and the changes in 5.1 introduced by WL3146:
  
  
  - mysql_insert_id() now returns the first automatically generated
  AUTO_INCREMENT value that was successfully inserted by INSERT ... SELECT
  
  -  if an INSERT ... SELECT statement is executed, and no automatically
  generated value is successfully inserted, mysql_insert_id() now returns
  the ID of the last inserted row.

  sql/sql_class.h@1.348.2.1, 2007-11-26 18:36:00+03:00, kaa@polly.(none) +2 -1
    Replaced last_insert_id with autoinc_value_of_last_inserted_row to be
    consistent with 5.1 code.

  sql/sql_insert.cc@1.249.5.1, 2007-11-26 18:36:00+03:00, kaa@polly.(none) +40 -8
    Revised the AUTO_INCREMENT and mysql_insert_id() handling logic in
    INSERT ... SELECT to be consistent with INSERT behavior, the manual, and
    changes in 5.1 introduced by WL3146:
    
    - mysql_insert_id() now returns the first automatically generated
    AUTO_INCREMENT value that was successfully inserted;
    
    -  if an INSERT ... SELECT statement is executed, and no automatically
    generated value is successfully inserted, mysql_insert_id() now returns
    the ID of the last inserted row.

  tests/mysql_client_test.c@1.240.2.1, 2007-11-26 18:36:00+03:00, kaa@polly.(none) +182 -0
    Backported the test cases related to INSERT ... SELECT and
    mysql_insert_id() from WL3146 patch to 5.0.

ChangeSet@1.2521.73.2, 2007-11-26 15:44:05+01:00, thek@adventure.(none) +1 -0
  Bug #32436 KILL QUERY completely deadlocks mysqld
  
  Sending several "KILL QUERY" statements to target a connection running
  "SELECT SLEEP" could freeze the server.
  
  The locking order in Item_func_sleep was wrong and this could lead to a
  dead lock.
  
  This patch solves the issue by resolving the locking order properly.

  sql/item_func.cc@1.355.5.1, 2007-11-26 15:44:04+01:00, thek@adventure.(none) +1 -2
    - Moved LOCK_user_locks critical region so that it doesn't share space with
      mysys_var->mutex region; this can lead to deadlock.

ChangeSet@1.2541.29.31, 2007-11-26 14:49:41+01:00, istruewing@stella.local +1 -0
  Bug#32357 - ndb_backup_print test fails sometimes in pushbuild
  Disabled test case

  mysql-test/t/disabled.def@1.53, 2007-11-26 14:49:40+01:00, istruewing@stella.local +1 -0
    Bug#32357 - ndb_backup_print test fails sometimes in pushbuild
    Disabled test case

ChangeSet@1.2541.29.30, 2007-11-26 14:48:49+01:00, istruewing@stella.local +1 -0
  BUG#31277 - myisamchk --unpack corrupts a table
  Another try to fix a compiler warning on win64.

  myisam/mi_packrec.c@1.45, 2007-11-26 14:48:48+01:00, istruewing@stella.local +1 -1
    BUG#31277 - myisamchk --unpack corrupts a table
    Another try to fix a compiler warning on win64.

ChangeSet@1.1616.3119.1, 2007-11-26 16:25:18+04:00, holyfoot@mysql.com +1 -0
  Bug #31900 Wrong confusing comment in mysql_com.h header file.
  
  comment fixed as we truly need const_item to be 1 to mark
  constant function

  include/mysql_com.h@1.67.7.1, 2007-11-26 16:25:18+04:00, holyfoot@mysql.com +5 -5
    Bug #31900 Wrong confusing comment in mysql_com.h header file.
    
    comment fixed

ChangeSet@1.2541.73.1, 2007-11-26 13:36:24+02:00, gkodinov@magare.gmz +3 -0
  Bug #32036: EXISTS within a WHERE clause with a UNION 
    crashes MySQL 5.122
  There was a difference in how UNIONs are handled
  on top level and when in sub-query.
  Because the rules for sub-queries were syntactically
  allowing cases that are not currently supported by
  the server we had crashes (this bug) or wrong results
  (bug 32051).
  Fixed by making the syntax rules for UNIONs match the 
  ones at top level.
  
  These rules however do not support nesting UNIONs, e.g.
  (SELECT a FROM t1 UNION ALL SELECT b FROM t2) 
   UNION
  (SELECT c FROM t3 UNION ALL SELECT d FROM t4)
  Supports for statements with nested UNIONs will be
  added in a future version.

  mysql-test/r/subselect.result@1.196.1.1, 2007-11-26 13:36:22+02:00, gkodinov@magare.gmz +27 -8
    Bug #32036: test case

  mysql-test/t/subselect.test@1.157.6.1, 2007-11-26 13:36:22+02:00, gkodinov@magare.gmz +30 -1
    Bug #32036: test case

  sql/sql_yacc.yy@1.539.2.1, 2007-11-26 13:36:22+02:00, gkodinov@magare.gmz +14 -27
    Bug #32036: Make the syntax rules for UNIONs in subqueries the same
    as for top level UNIONs.

ChangeSet@1.2541.70.2, 2007-11-26 13:29:26+04:00, ramil@mysql.com +3 -0
  Fix for bug #32676: insert delayed crash with wrong column and function specified
  
  Problem: using wrong local lock type value in the mysql_insert() results in a crash. 
  
  Fix: use a proper value.

  mysql-test/r/delayed.result@1.15, 2007-11-26 13:29:25+04:00, ramil@mysql.com +5 -0
    Fix for bug #32676: insert delayed crash with wrong column and function specified
      - test result.

  mysql-test/t/delayed.test@1.19, 2007-11-26 13:29:25+04:00, ramil@mysql.com +9 -0
    Fix for bug #32676: insert delayed crash with wrong column and function specified
      - test case.

  sql/sql_insert.cc@1.249.4.1, 2007-11-26 13:29:25+04:00, ramil@mysql.com +2 -2
    Fix for bug #32676: insert delayed crash with wrong column and function specified
      - the local lock_type var assigment displaced just after the line 
        where the table_list->lock_type is filnally defined in the mysql_insert() 
        to avoid using its old value.

ChangeSet@1.2541.72.2, 2007-11-24 14:57:09+04:00, holyfoot@mysql.com +2 -0
  merging fix

  mysql-test/r/gis.result@1.48.1.2, 2007-11-24 14:57:08+04:00, holyfoot@mysql.com +1 -1
    result fixed

  mysql-test/t/gis.test@1.40.1.2, 2007-11-24 14:57:08+04:00, holyfoot@mysql.com +1 -1
    test fixed

ChangeSet@1.2541.70.1, 2007-11-23 16:30:06+04:00, ramil@mysql.com +3 -0
  Fix for bug #32560: crash with interval function and count(*)
  
  Problem: INTERVAL function implementation doesn't handle NULL range values.
  
  Fix: skip NULL ranges looking for a proper one.

  mysql-test/r/func_set.result@1.16, 2007-11-23 16:30:04+04:00, ramil@mysql.com +30 -0
    Fix for bug #32560: crash with interval function and count(*)
      - test result.

  mysql-test/t/func_set.test@1.15, 2007-11-23 16:30:04+04:00, ramil@mysql.com +18 -1
    Fix for bug #32560: crash with interval function and count(*)
      - test case.

  sql/item_cmpfunc.cc@1.266.3.1, 2007-11-23 16:30:04+04:00, ramil@mysql.com +25 -12
    Fix for bug #32560: crash with interval function and count(*)
      - skip NULL ranges calculating INTERVAL(...).

ChangeSet@1.2541.69.4, 2007-11-23 13:03:38+01:00, istruewing@stella.local +1 -0
  Bug#32654: rpl_view.test fails randomly
  Disabled test case

  mysql-test/t/disabled.def@1.52, 2007-11-23 13:03:37+01:00, istruewing@stella.local +1 -0
    Bug#32654: rpl_view.test fails randomly
    Disabled test case

ChangeSet@1.2541.69.3, 2007-11-23 12:54:05+01:00, istruewing@stella.local +1 -0
  Bug#32653 - rpl_log.test fails randomly
  Disabled test case

  mysql-test/t/disabled.def@1.51, 2007-11-23 12:54:04+01:00, istruewing@stella.local +1 -0
    Bug#32653 - rpl_log.test fails randomly
    Disabled test case

ChangeSet@1.2541.69.2, 2007-11-23 12:52:29+01:00, istruewing@stella.local +1 -0
  BUG#31277 - myisamchk --unpack corrupts a table
  Fixed a compiler warning on win64. Backport from 5.1.

  myisam/mi_packrec.c@1.44, 2007-11-23 12:52:28+01:00, istruewing@stella.local +1 -1
    BUG#31277 - myisamchk --unpack corrupts a table
    Fixed a compiler warning on win64. Backport from 5.1.

ChangeSet@1.2541.69.1, 2007-11-23 12:06:55+01:00, istruewing@stella.local +1 -0
  Bug#32651 - grant_cache.test fails
  Disabled test case

  mysql-test/t/disabled.def@1.50, 2007-11-23 12:06:53+01:00, istruewing@stella.local +1 -0
    Bug#32651 - grant_cache.test fails
    Disabled test case

ChangeSet@1.2541.1.39, 2007-11-23 00:16:17+03:00, evgen@moonbone.local +3 -0
  opt_range.cc:
    Fix for the bug#31048 for 64bit platforms.
  subselect.test, subselect.result:
    Corrected text case for the bug#31048.

  mysql-test/r/subselect.result@1.198.1.2, 2007-11-23 00:13:32+03:00, evgen@moonbone.local +6 -9
    Corrected text case for the bug#31048.

  mysql-test/t/subselect.test@1.157.5.2, 2007-11-23 00:12:16+03:00, evgen@moonbone.local +4 -6
    Corrected text case for the bug#31048.

  sql/opt_range.cc@1.253.1.5, 2007-11-23 00:14:47+03:00, evgen@moonbone.local +1 -1
    Fix for the bug#31048 for 64bit platforms.

ChangeSet@1.2541.67.1, 2007-11-22 17:48:40+01:00, kent@mysql.com +2 -0
  Makefile.am, configure.in:
    Include "manual.chm" in source TAR if it exists

  Docs/Makefile.am@1.70, 2007-11-22 17:48:11+01:00, kent@mysql.com +1 -1
    Include "manual.chm" in source TAR if it exists

  configure.in@1.462.1.1, 2007-11-22 17:46:40+01:00, kent@mysql.com +5 -0
    Include "manual.chm" in source TAR if it exists

ChangeSet@1.2521.70.3, 2007-11-22 17:13:12+03:00, kaa@polly.(none) +1 -0
  Fixed build failures on Windows introduced by the patch for bug #32221.
  We do not have any executables in libmysql/release/ anymore.

  scripts/make_win_bin_dist@1.21, 2007-11-22 17:13:04+03:00, kaa@polly.(none) +0 -1
    Fixed build failures on Windows introduced by the patch for bug #32221.
    We do not have any executables in libmysql/release/ anymore.

ChangeSet@1.2541.21.12, 2007-11-22 10:18:19-02:00, davi@endora.local +3 -0
  Bug#32528 Global read lock with a low priority write lock causes a server crash
  
  FLUSH TABLES WITH READ LOCK fails to properly detect write locked
  tables when running under low priority updates.
  
  The problem is that when trying to aspire a global read lock, the
  reload_acl_and_cache() function fails to properly check if the thread
  has a low priority write lock, which later my cause a server crash or
  deadlock.
  
  The solution is to simple check if the thread has any type of the
  possible exclusive write locks.

  mysql-test/r/flush.result@1.17, 2007-11-22 10:18:18-02:00, davi@endora.local +17 -0
    Add test case result for Bug#32528

  mysql-test/t/flush.test@1.23, 2007-11-22 10:18:18-02:00, davi@endora.local +31 -0
    Add test case for Bug#32528

  sql/sql_parse.cc@1.637.1.3, 2007-11-22 10:18:18-02:00, davi@endora.local +1 -1
    Although it should not matter under LOCK TABLES, use TL_WRITE_ALLOW_WRITE
    to emphasize that it should fail in case of any write lock.

ChangeSet@1.2541.1.37, 2007-11-21 22:56:42+04:00, gshchepa@gleb.loc +3 -0
  Fixed bug #32556: assert in "using index for group-by" :
                    is_last_prefix <= 0, file .\opt_range.cc.
  
  SELECT ... GROUP BY bit field failed with an assertion if the
  bit length of that field was not divisible by 8.
  

  mysql-test/r/type_bit.result@1.25, 2007-11-21 22:39:16+04:00, gshchepa@gleb.loc +10 -0
    Added test case for bug #32556.

  mysql-test/t/type_bit.test@1.23, 2007-11-21 22:39:04+04:00, gshchepa@gleb.loc +15 -0
    Added test case for bug #32556.

  sql/key.cc@1.43, 2007-11-21 22:38:52+04:00, gshchepa@gleb.loc +0 -13
    Fixed bug #32556.
    Copying of "uneven" bits of a bit field was duplicated in the
    key_copy() and in the Field_bit::get_key_image().
    So, instead of copying of the rest of a bit field, 
    Field_bit::get_key_image() copied "uneven" bits to key image again,
    and the lowest field byte was not copied to key at all.
    
    Duplicated code has been removed from the key_copy function.

ChangeSet@1.2541.63.2, 2007-11-21 19:41:13+01:00, df@pippilotta.erinye.com +1 -0
  add wrong warning to suppression file

  support-files/compiler_warnings.supp@1.11, 2007-11-21 19:41:11+01:00, df@pippilotta.erinye.com +1 -0
    we want that.

ChangeSet@1.2541.63.1, 2007-11-21 18:11:08+01:00, df@pippilotta.erinye.com +1 -0
  ignore readline warnings

  support-files/compiler_warnings.supp@1.10, 2007-11-21 18:11:04+01:00, df@pippilotta.erinye.com +5 -0
    readline is not maintained by us

ChangeSet@1.2541.62.1, 2007-11-21 20:53:44+04:00, ramil@mysql.com +3 -0
  Fix for bug #32558: group by null-returning expression with rollup causes crash
  
  Problem: setting Item_func_rollup_const::null_value property to argument's null_value
  before (without) the argument evaluation may result in a crash due to wrong null_value.
  
  Fix: use is_null() to set Item_func_rollup_const::null_value instead as it evaluates
  the argument if necessary and returns a proper value.

  mysql-test/r/olap.result@1.41, 2007-11-21 20:53:42+04:00, ramil@mysql.com +8 -0
    Fix for bug #32558: group by null-returning expression with rollup causes crash
      - test result.

  mysql-test/t/olap.test@1.30, 2007-11-21 20:53:42+04:00, ramil@mysql.com +9 -0
    Fix for bug #32558: group by null-returning expression with rollup causes crash
      - test case.

  sql/item_func.h@1.178, 2007-11-21 20:53:42+04:00, ramil@mysql.com +1 -1
    Fix for bug #32558: group by null-returning expression with rollup causes crash
      - use args[0]->is_null() to obtain Item_func_rollup_const::null_value 
        instead of args[0]->null_value as it's not set in advance in case of 
        constant functions.

ChangeSet@1.2541.29.22, 2007-11-21 13:50:17+01:00, mleich@five.local.lan +6 -0
  This changeset fixes
     Bug#31567 "datadict" tests (all engines) fail:
               Reference protocol is non-standard build
     Bug#30418 "datadict" tests (all engines) fail:
               Dependency on the host name for ordering   
  Modifications:
     1. The standard builds (build team) do not contain
        the collation 'utf8_general_cs'.
        The common developer builds (compuile-....-max)
        contain this collation.
        Solution fitting to both build variants:
           Exclude the collation 'utf8_general_cs' from
           result sets.
     2. Use mysqltest builtin sorting of result set for
        the statement where the hostname affects the
        row order.

  mysql-test/suite/funcs_1/datadict/datadict_master.inc@1.6, 2007-11-21 13:50:16+01:00, mleich@five.local.lan +7 -5
    Exclude collation 'utf8_general_cs' from result set.

  mysql-test/suite/funcs_1/datadict/datadict_show_schema.inc@1.3, 2007-11-21 13:50:16+01:00, mleich@five.local.lan +2 -1
    Use mysqltest builtin sorting of result set.

  mysql-test/suite/funcs_1/datadict/datadict_tables.inc@1.2, 2007-11-21 13:50:16+01:00, mleich@five.local.lan +2 -2
    Exclude collation 'utf8_general_cs' from result set.

  mysql-test/suite/funcs_1/r/innodb__datadict.result@1.6, 2007-11-21 13:50:16+01:00, mleich@five.local.lan +18 -16
    Updated  results

  mysql-test/suite/funcs_1/r/memory__datadict.result@1.6, 2007-11-21 13:50:16+01:00, mleich@five.local.lan +18 -16
    Updated  results

  mysql-test/suite/funcs_1/r/myisam__datadict.result@1.6, 2007-11-21 13:50:16+01:00, mleich@five.local.lan +18 -16
    Updated  results

ChangeSet@1.2541.60.1, 2007-11-21 11:40:05+02:00, gkodinov@magare.gmz +5 -0
  Bug #30788: Inconsistent retrieval of char/varchar
  
  Index lookup does not always guarantee that we can
  simply remove the relevant conditions from the WHERE
  clause. Reasons can be e.g. conversion errors, 
  partial indexes etc. 
  The optimizer was removing these parts of the WHERE 
  condition without any further checking.
  This leads to "false positives" when using indexes.
  Fixed by checking the index reference conditions
  (using WHERE) when using indexes with sub-queries.

  mysql-test/r/subselect.result@1.195.2.1, 2007-11-21 11:40:04+02:00, gkodinov@magare.gmz +39 -8
    Bug #30788: 
     - using where
     - test case

  mysql-test/r/subselect3.result@1.12, 2007-11-21 11:40:04+02:00, gkodinov@magare.gmz +1 -1
    Bug #30788: using where

  mysql-test/t/subselect.test@1.157.4.1, 2007-11-21 11:40:04+02:00, gkodinov@magare.gmz +25 -0
    Bug #30788: test case

  sql/item.h@1.244.1.1, 2007-11-21 11:40:04+02:00, gkodinov@magare.gmz +21 -1
    Bug #30788: 
     - Declare eq() method of Item_cache descendants : this is used in
     test_if_ref()
     - preserve the field that is being cached for type comparisions

  sql/sql_select.cc@1.549.6.1, 2007-11-21 11:40:04+02:00, gkodinov@magare.gmz +15 -11
    Bug #30788: Don't remove the WHERE when using index lookup 
    with subqueries.

ChangeSet@1.2541.43.3, 2007-11-21 11:11:22+04:00, ramil@mysql.com +3 -0
  Fix for bug #30495: optimize table t1,t2,t3 extended errors
  
  Problem: we have CHECK TABLE options allowed (by accident?) for
  ANALYZE/OPTIMIZE TABLE.
  
  Fix: disable them.
  
  Note: it might require additional fixes in 5.1/6.0

  mysql-test/r/analyze.result@1.8, 2007-11-21 11:11:20+04:00, ramil@mysql.com +8 -0
    Fix for bug #30495: optimize table t1,t2,t3 extended errors
      - test result.

  mysql-test/t/analyze.test@1.11, 2007-11-21 11:11:20+04:00, ramil@mysql.com +13 -1
    Fix for bug #30495: optimize table t1,t2,t3 extended errors
      - test case.

  sql/sql_yacc.yy@1.540, 2007-11-21 11:11:20+04:00, ramil@mysql.com +2 -2
    Fix for bug #30495: optimize table t1,t2,t3 extended errors
      - opt_mi_check_type (CHECK TABLE options) removed from analyze: and optimize: 

ChangeSet@1.2541.57.1, 2007-11-21 02:48:01+03:00, evgen@moonbone.local +1 -0
  sql_select.cc:
    Additional stack check for the bug#31048.

  sql/sql_select.cc@1.549.5.1, 2007-11-21 02:47:31+03:00, evgen@moonbone.local +5 -0
    Additional stack check for the bug#31048.

ChangeSet@1.2541.56.1, 2007-11-20 19:18:21+02:00, gkodinov@magare.gmz +11 -0
  Bug #32400: Complex SELECT query returns correct result 
   only on some occasions
  
  Referencing an element from the SELECT list in a WHERE 
  clause is not permitted. The namespace of the WHERE
  clause is the table columns only. This was not enforced
  correctly when resolving outer references in sub-queries.
  
  Fixed by not allowing references to aliases in a 
  sub-query in WHERE.

  mysql-test/include/ps_query.inc@1.18, 2007-11-20 19:18:19+02:00, gkodinov@magare.gmz +2 -2
    Bug #32400: fixed old test queries

  mysql-test/r/ps_2myisam.result@1.53, 2007-11-20 19:18:19+02:00, gkodinov@magare.gmz +6 -6
    Bug #32400: fixed old test queries

  mysql-test/r/ps_3innodb.result@1.56, 2007-11-20 19:18:20+02:00, gkodinov@magare.gmz +6 -6
    Bug #32400: fixed old test queries

  mysql-test/r/ps_4heap.result@1.52, 2007-11-20 19:18:20+02:00, gkodinov@magare.gmz +6 -6
    Bug #32400: fixed old test queries

  mysql-test/r/ps_5merge.result@1.53, 2007-11-20 19:18:20+02:00, gkodinov@magare.gmz +12 -12
    Bug #32400: fixed old test queries

  mysql-test/r/ps_6bdb.result@1.57, 2007-11-20 19:18:20+02:00, gkodinov@magare.gmz +6 -6
    Bug #32400: fixed old test queries

  mysql-test/r/ps_7ndb.result@1.56, 2007-11-20 19:18:20+02:00, gkodinov@magare.gmz +6 -6
    Bug #32400: fixed old test queries

  mysql-test/r/subselect.result@1.199, 2007-11-20 19:18:20+02:00, gkodinov@magare.gmz +38 -9
    Bug #32400: test case

  mysql-test/t/subselect.test@1.157.1.5, 2007-11-20 19:18:20+02:00, gkodinov@magare.gmz +44 -6
    Bug #32400: test case

  sql/item.cc@1.292, 2007-11-20 19:18:20+02:00, gkodinov@magare.gmz +1 -1
    Bug #32400: don't allow references to aliases in WHERE

  tests/mysql_client_test.c@1.241, 2007-11-20 19:18:20+02:00, gkodinov@magare.gmz +1 -1
    Bug #32400: fixed old test queries

ChangeSet@1.2541.55.1, 2007-11-20 20:15:20+04:00, gshchepa@gleb.loc +3 -0
  Fixed bug #32533.
  8bit escape characters, termination and enclosed characters
  were silently ignored by SELECT INTO query, but LOAD DATA INFILE
  algorithm is 8bit-clean, so data was corrupted during 
  encoding.

  mysql-test/r/outfile_loaddata.result@1.2, 2007-11-20 20:14:52+04:00, gshchepa@gleb.loc +18 -0
    Added test case for bug #32533.

  mysql-test/t/outfile_loaddata.test@1.2, 2007-11-20 20:14:51+04:00, gshchepa@gleb.loc +24 -0
    Added test case for bug #32533.

  sql/sql_class.cc@1.281, 2007-11-20 20:14:49+04:00, gshchepa@gleb.loc +10 -7
    Fixed bug #32533.
    SELECT INTO OUTFILE encoding was not 8bit clear, it
    has been fixed for a symmetry with the LOAD DATA INFILE
    decoding algorithm.

ChangeSet@1.2541.54.1, 2007-11-20 16:07:24+02:00, gkodinov@magare.gmz +3 -0
  Bug #32268: Indexed queries give bogus MIN and MAX results
  
  Loose index scan does the grouping so the temp table does 
  not need to do it, even when sorting.
  Fixed by checking if the grouping is already done before
  doing sorting and grouping in a temp table and do only 
  sorting.

  mysql-test/r/group_min_max.result@1.30, 2007-11-20 16:07:23+02:00, gkodinov@magare.gmz +46 -0
    Bug #32268: test case

  mysql-test/t/group_min_max.test@1.29, 2007-11-20 16:07:23+02:00, gkodinov@magare.gmz +24 -0
    Bug #32268: test case

  sql/sql_select.cc@1.549.1.8, 2007-11-20 16:07:23+02:00, gkodinov@magare.gmz +2 -1
    Bug #32268: don't group in the temp table if already done

ChangeSet@1.2541.53.1, 2007-11-20 17:04:24+04:00, holyfoot@mysql.com +2 -0
  test case added for the bug #31155

  mysql-test/r/gis.result@1.51, 2007-11-20 17:04:22+04:00, holyfoot@mysql.com +6 -0
    test result complete

  mysql-test/t/gis.test@1.42, 2007-11-20 17:04:22+04:00, holyfoot@mysql.com +9 -0
    test case added for the bug

ChangeSet@1.2561, 2007-11-20 10:25:07+01:00, guilhem@gbichot4.local +1 -0
  BUG#27850 "mysqldump --single-transaction does not work if TRUNCATE/DROP/RENAME/ALTER":
  this has already been closed by a note in the manual, now we
  complete this by a note in "mysqldump --help"

  client/mysqldump.c@1.273.1.1, 2007-11-20 10:25:04+01:00, guilhem@gbichot4.local +6 -2
    mention, in "mysqldump --help", of limitations reported as BUG#27850
    "mysqldump --single-transaction does not work if TRUNCATE/DROP/RENAME/ALTER"
    The new text is inspired from what the "mysqldump" section of the
    manual now says about --single-transaction:
    http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html

ChangeSet@1.2541.50.1, 2007-11-19 21:05:17+00:00, evgen@moonbone.local +2 -0
  Bug#30384: Having SQL_BUFFER_RESULT option in the CREATE .. KEY(..) .. SELECT
  led to creating corrupted index.
  
  Corrected fix. The new method called prepare2 is added to the select_create
  class. As all preparations are done by the select_create::prepare function
  it doesn't do anything. Slightly changed algorithm of calling the 
  start_bulk_insert function. Now it's called from the select_insert::prepare2
  function when the SQL_BUFFER_RESULT flags is set.
  The is_bulk_insert_mode flag is removed as it is not needed anymore.

  sql/sql_class.h@1.346.2.1, 2007-11-19 21:05:04+00:00, evgen@moonbone.local +2 -2
    Bug#30384: Having SQL_BUFFER_RESULT option in the CREATE .. KEY(..) .. SELECT
    led to creating corrupted index.
    Corrected fix. The new method called prepare2 is added to the select_create
    class. As all preparetions are done by the select_create::prepare function
    it doesn't do anything.
    The is_bulk_insert_mode flag is removed as it is not needed anymore.

  sql/sql_insert.cc@1.249.1.5, 2007-11-19 21:05:07+00:00, evgen@moonbone.local +5 -13
    Bug#30384: Having SQL_BUFFER_RESULT option in the CREATE .. KEY(..) .. SELECT
    led to creating corrupted index. Slightly changed algorithm of calling the
    start_bulk_insert function. Now it's called from the select_insert::prepare2
    function when the SQL_BUFFER_RESULT flags is set.
    Corrected fix. The is_bulk_insert_mode flag is removed as it is not needed
    anymore.

ChangeSet@1.2541.49.1, 2007-11-19 20:00:25+00:00, evgen@moonbone.local +4 -0
  Bug#31048: Many nested subqueries may cause server crash.
  
  This bug is actually two. The first one manifests itself on an EXPLAIN
  SELECT query with nested subqueries that employs the filesort algorithm.
  The whole SELECT under explain is marked as UNCACHEABLE_EXPLAIN to preserve
  some temporary structures for explain. As a side-effect of this values of
  nested subqueries weren't cached and subqueries were re-evaluated many
  times. Each time buffer for filesort was allocated but wasn't freed because
  freeing occurs at the end of topmost SELECT. Thus all available memory was
  eaten up step by step and OOM event occur.
  The second bug manifests itself on SELECT queries with conditions where
  a subquery result is compared with a key field and the subquery itself also
  has such condition. When a long chain of such nested subqueries is present
  the stack overrun occur. This happens because at some point the range optimizer
  temporary puts the PARAM structure on the stack. Its size if about 8K and
  the stack is exhausted very fast.
  
  Now the subselect_single_select_engine::exec function allows subquery result
  caching when the UNCACHEABLE_EXPLAIN flag is set.
  Now the SQL_SELECT::test_quick_select function calls the check_stack_overrun
  function for stack checking purposes to prevent server crash.

  mysql-test/r/subselect.result@1.195.1.1, 2007-11-19 19:55:51+00:00, evgen@moonbone.local +104 -0
    Added a test case for the bug#31048: Many nested subqueries may cause server crash.

  mysql-test/t/subselect.test@1.157.3.1, 2007-11-19 19:55:43+00:00, evgen@moonbone.local +95 -0
    Added a test case for the bug#31048: Many nested subqueries may cause server crash.

  sql/item_subselect.cc@1.160.1.1, 2007-11-19 19:59:30+00:00, evgen@moonbone.local +3 -1
    Bug31048: Many nested subqueries may cause server crash.
    Now the subselect_single_select_engine::exec function allows subquery result
    caching when the UNCACHEABLE_EXPLAIN flag is set.

  sql/opt_range.cc@1.253.1.4, 2007-11-19 19:59:00+00:00, evgen@moonbone.local +6 -0
    Bug#31048: Many nested subqueries may cause server crash.
    Now the SQL_SELECT::test_quick_select function calls the check_stack_overrun
    function for stack checking purposes to preven server crash.

ChangeSet@1.2541.1.29, 2007-11-19 21:34:21+04:00, gshchepa@gleb.loc +3 -0
  Fixed bug #32282: TEXT silently truncates when value is exactly 65536
  bytes length.
  
  The server has been modified to report warnings on truncation to
  65536 bytes as usual.
  

  mysql-test/r/type_blob.result@1.56, 2007-11-19 21:34:12+04:00, gshchepa@gleb.loc +14 -0
    Added test case for bug #32282.

  mysql-test/t/type_blob.test@1.35, 2007-11-19 21:34:12+04:00, gshchepa@gleb.loc +11 -0
    Added test case for bug #32282.

  sql/sql_string.cc@1.100, 2007-11-19 21:34:10+04:00, gshchepa@gleb.loc +4 -1
    Fixed bug #32282.
    The well_formed_copy_nchars function returned an incorrect value
    of copied bytes of the truncated input string: extra length of
    the first truncated character added to the *from_end_pos pointer.
    That has been fixed.

ChangeSet@1.2521.73.1, 2007-11-19 17:59:44+01:00, thek@adventure.(none) +7 -0
  Bug #31153 calling stored procedure crashes server if available memory is low
  
  When the server was out of memory it crashed because of invalid memory access.
  
  This patch adds detection for failed memory allocations and make the server
  output a proper error message.

  sql/mysqld.cc@1.622.6.1, 2007-11-19 17:59:43+01:00, thek@adventure.(none) +12 -2
    Don't try to push_warning from within push_warning. It will cause a recursion
    until the stack is consumed.
    
    If my_net_init fails (for example: because of OOM) the temporary vio object 
    might have been attached to the thd object already. This will cause a double
    free on the vio object when the thd object is deleted later on and the server
    will crash.

  sql/sp_head.cc@1.253.2.1, 2007-11-19 17:59:43+01:00, thek@adventure.(none) +30 -8
    Added check for out-of-memory on a 'new' operation.
    Refactored reset_lex method to return a error state code instead of void.
    Initialize the mem-root with init_sql_alloc to get a basic error handler for
    memory allocation problems. This alone won't prevent the server from crashing,
    NULL pointers have to be accounted for as well.

  sql/sp_head.h@1.99.1.1, 2007-11-19 17:59:43+01:00, thek@adventure.(none) +3 -3
    Use the throw() clause in operator new, to indicate to the compiler that
    memory allocation can fail and return NULL, so that the compiler should
    generate code to check for NULL before invoking C++ constructors, to be
    crash safe.

  sql/sql_base.cc@1.392.2.1, 2007-11-19 17:59:43+01:00, thek@adventure.(none) +1 -2
    Use init_sql_alloc to get basic out-of-memory error handling.

  sql/sql_lex.h@1.254, 2007-11-19 17:59:43+01:00, thek@adventure.(none) +3 -2
    Use the throw() clause in operator new, to indicate to the compiler that
    memory allocation can fail and return NULL, so that the compiler should
    generate code to check for NULL before invoking C++ constructors, to be
    crash safe.

  sql/sql_prepare.cc@1.208, 2007-11-19 17:59:43+01:00, thek@adventure.(none) +1 -1
    Use init_sql_alloc to get basic out-of-memory error handling.

  sql/sql_yacc.yy@1.534.3.1, 2007-11-19 17:59:43+01:00, thek@adventure.(none) +118 -31
    Check for memory allocation failures where it matters.

ChangeSet@1.2521.70.2, 2007-11-19 18:59:25+03:00, kaa@polly.(none) +13 -0
  Fix for bug #32221: bug25714, mytest, mysql_client_test complaints and
  crashes.
  
  MySQL distributions contain a number of programs that are used only by
  the MySQL test suite internally, i.e. they are not indended to be
  invoked directly by a user. As a result, such programs are not
  documented, do not have any built-in help or proper error reporting,
  which may confuse users.
  
  This patch fixes the problem with the following changes:
  - mytest, libmysqltest and all references to them were removed from the
  distribution since they are not used anymore
  - bug25714 now displays an error message when run with incorrect
  arguments or with the --help option
  - mysql_client_test now does not call abort() in case of errors,
  instead it does a clean exit() with a proper error status.

  BitKeeper/deleted/.del-myTest-package.dsp@1.2, 2007-11-19 17:40:05+03:00, kaa@polly.(none) +0 -0
    Delete: VC++Files/libmysqltest/myTest-package.dsp

  BitKeeper/deleted/.del-myTest-package_ia64.dsp@1.2, 2007-11-19 17:40:06+03:00, kaa@polly.(none) +0 -0
    Delete: VC++Files/libmysqltest/myTest-package_ia64.dsp

  BitKeeper/deleted/.del-myTest.dsp~4a8c480769193952@1.9, 2007-11-19 17:40:06+03:00, kaa@polly.(none) +0 -0
    Delete: VC++Files/libmysqltest/myTest.dsp

  BitKeeper/deleted/.del-myTest.vcproj@1.3, 2007-11-19 17:40:06+03:00, kaa@polly.(none) +0 -0
    Delete: VC++Files/libmysqltest/myTest.vcproj

  BitKeeper/deleted/.del-myTest_ia64.dsp@1.3, 2007-11-19 17:40:06+03:00, kaa@polly.(none) +0 -0
    Delete: VC++Files/libmysqltest/myTest_ia64.dsp

  BitKeeper/deleted/.del-mytest.c@1.4, 2007-11-19 17:37:30+03:00, kaa@polly.(none) +0 -0
    Delete: libmysql/mytest.c

  BitKeeper/deleted/.del-mytest.c~9a99338689e5de8@1.5, 2007-11-19 17:40:06+03:00, kaa@polly.(none) +0 -0
    Delete: VC++Files/libmysqltest/mytest.c

  BitKeeper/deleted/.del-mytest.dsw~2324698861155335@1.5, 2007-11-19 17:40:06+03:00, kaa@polly.(none) +0 -0
    Delete: VC++Files/libmysqltest/mytest.dsw

  VC++Files/copy_mysql_files.bat@1.5, 2007-11-19 18:59:20+03:00, kaa@polly.(none) +0 -5
    Removed references to libmysqltest.

  libmysql/CMakeLists.txt@1.6.2.1, 2007-11-19 18:59:20+03:00, kaa@polly.(none) +0 -3
    Removed rules for myTest.

  libmysql/Makefile.am@1.53, 2007-11-19 18:59:20+03:00, kaa@polly.(none) +1 -1
    Removed mytest.c from EXTRA_DIST.

  tests/bug25714.c@1.3, 2007-11-19 18:59:20+03:00, kaa@polly.(none) +5 -1
    Display a meaningful error message when run incorrectly or with the --help option.

  tests/mysql_client_test.c@1.237.1.2, 2007-11-19 18:59:20+03:00, kaa@polly.(none) +1 -1
    In case of error, don't cause abnormal program termination, do a clean exit() with an error status.

ChangeSet@1.2521.66.5, 2007-11-19 15:27:44+03:00, kaa@polly.(none) +1 -0
  Changed the help text for --comments to make it clear which option
  disables the option explicitely.
  Changed the option location in code so that --help will show it in
  lexical option order.
  
  This is for bug #26215: mysql command line client should not strip
  comments from SQL statements

  client/mysql.cc@1.240.2.3, 2007-11-19 15:27:40+03:00, kaa@polly.(none) +4 -4
    Changed the help text for --comments to make it clear which option
    disables the option explicitely.
    Changed the option location in code so that --help will show it in
    lexical option order.

ChangeSet@1.1616.3118.1, 2007-11-19 11:03:03+04:00, holyfoot@mysql.com +3 -0
  Bug #30284 spatial key corruption.
  
  SPATIAL key is fine actually, but the chk_key() function
  mistakenly returns error. It tries to compare checksums
  of btree and SPATIAL keys while the checksum for the SPATIAL isn't
  calculated (always 0). Same thing with FULLTEXT keys is handled
  using full_text_keys counter, so fixed by counting both
  SPATIAL and FULLTEXT keys in that counter.

  myisam/mi_check.c@1.105.10.1, 2007-11-19 11:03:01+04:00, holyfoot@mysql.com +1 -1
    Bug #30284 spatial key corruption
    
    full_text_keys counts both FULL_TEXT and SPATIAL keys

  mysql-test/r/gis.result@1.15.3.1, 2007-11-19 11:03:01+04:00, holyfoot@mysql.com +8 -0
    Bug #30284 spatial key corruption
    
    test result

  mysql-test/t/gis.test@1.17.2.1, 2007-11-19 11:03:01+04:00, holyfoot@mysql.com +11 -0
    Bug #30284 spatial key corruption.
    
    test case

ChangeSet@1.2541.46.1, 2007-11-18 00:02:55+04:00, gshchepa@gleb.loc +3 -0
  Fixed bug #32335.
  Comparison of a BIGINT NOT NULL column with a constant arithmetic
  expression that evaluates to NULL caused error 1048: "Column '...'
  cannot be null".
  
  Made convert_constant_item() check if the constant expression is NULL
  before attempting to store it in a field. Attempts to store NULL in a
  NOT NULL field caused query errors.

  mysql-test/r/select.result@1.161, 2007-11-18 00:01:31+04:00, gshchepa@gleb.loc +6 -0
    Added test case for bug #32335.

  mysql-test/t/select.test@1.137, 2007-11-18 00:01:30+04:00, gshchepa@gleb.loc +11 -0
    Added test case for bug #32335.

  sql/item_cmpfunc.cc@1.266.1.3, 2007-11-18 00:01:29+04:00, gshchepa@gleb.loc +2 -1
    Fixed bug #32335.
    1. Made convert_constant_item() check if the constant expression is NULL
       before attempting to store it in a field. Attempts to store NULL in
       a NOT NULL field caused query errors.
    
    2. Also minor bug has been fixed: the thd->count_cuted_fields value
       was not restored in case of successful conversion.

ChangeSet@1.2526.5.1, 2007-11-17 19:05:31+01:00, tnurnberg@mysql.com +3 -0
  Bug#24907: unpredictable (display) precission, if input precission increases
  
  Server failed in assert() when we tried to create a DECIMAL() temp field
  with a scale of more than the allowed 30. Now we limit the scale to the
  allowed maximum. A truncation warning is thrown as necessary.

  mysql-test/r/type_newdecimal.result@1.51, 2007-11-17 19:05:29+01:00, tnurnberg@mysql.com +20 -0
    Show that out of range DECIMAL temp fields will no longer
    stop the server with an assert. 

  mysql-test/t/type_newdecimal.test@1.49, 2007-11-17 19:05:29+01:00, tnurnberg@mysql.com +20 -1
    Show that out of range DECIMAL temp fields will no longer
    stop the server with an assert. 

  sql/sql_select.cc@1.548.2.1, 2007-11-17 19:05:29+01:00, tnurnberg@mysql.com +36 -2
    When creating DECIMAL() temp field, ascertain we stay within allowed
    limits. If not, truncate and warn.

ChangeSet@1.2541.45.2, 2007-11-17 17:11:05+04:00, holyfoot@mysql.com +1 -0
  merging

  mysql-test/r/gis.result@1.50, 2007-11-17 17:11:04+04:00, holyfoot@mysql.com +2 -64
    merging

ChangeSet@1.2521.72.1, 2007-11-16 17:43:15+01:00, tnurnberg@mysql.com +3 -0
  Bug #32180: DATE_ADD treats datetime numeric argument as DATE instead of DATETIME
  
  This is a regression from 2007-05-18 when code to zero out the returned struct was
  added to number_to_datetime(); zero for time_type corresponds to MYSQL_TIMESTAMP_DATE.
  We now explicitly set the type we return (MYSQL_TIMESTAMP_DATETIME).

  mysql-test/r/func_time.result@1.85, 2007-11-16 17:43:13+01:00, tnurnberg@mysql.com +12 -0
    show that DATE_ADD() behaves the same for YYYYMMDDhhmmss given
    as string and as integer.

  mysql-test/t/func_time.test@1.72, 2007-11-16 17:43:14+01:00, tnurnberg@mysql.com +10 -0
    show that DATE_ADD() behaves the same for YYYYMMDDhhmmss given
    as string and as integer.

  sql-common/my_time.c@1.37.1.1, 2007-11-16 17:43:14+01:00, tnurnberg@mysql.com +8 -1
    explictly set return type in number_to_datetime()

ChangeSet@1.2521.63.3, 2007-11-16 13:58:09+03:00, kaa@polly.(none) +3 -0
  Fix for bug #32241: memory corruption due to large index map in 'Range
  checked for each record'
  
  The problem was in incorrectly calculated length of the buffer used to
  store a hexadecimal representation of an index map in
  select_describe(). This could result in buffer overrun and stack
  corruption under some circumstances.
  
  Fixed by correcting the calculation.

  mysql-test/r/explain.result@1.21, 2007-11-16 13:58:06+03:00, kaa@polly.(none) +20 -0
    Added a test case for bug #32241.

  mysql-test/t/explain.test@1.13, 2007-11-16 13:58:06+03:00, kaa@polly.(none) +28 -0
    Added a test case for bug #32241.

  sql/sql_select.cc@1.545.6.2, 2007-11-16 13:58:06+03:00, kaa@polly.(none) +2 -1
    Corrected the buffer length calculation. Count one hex digit as 4 bits,
    not 8.

ChangeSet@1.2541.42.1, 2007-11-16 14:46:36+04:00, gluh@mysql.com +3 -0
  Bug#30294 blackhole engine causes 100% with 2 alter table statements running
  Implement neccessary shared lock structure for table locks.
  This is the backport of bug26241 fix.

  sql/ha_blackhole.cc@1.27, 2007-11-16 14:46:35+04:00, gluh@mysql.com +112 -10
    Implement neccessary shared lock structure for table locks.

  sql/ha_blackhole.h@1.9, 2007-11-16 14:46:35+04:00, gluh@mysql.com +16 -2
    Declare shared structure for table locks

  sql/handler.cc@1.240, 2007-11-16 14:46:35+04:00, gluh@mysql.com +4 -0
    added BLACKHOLE_DB case

ChangeSet@1.2521.71.1, 2007-11-16 10:43:59+01:00, msvensson@pilot.mysql.com +1 -0
  Bug#32429 ssl_cipher setting in my.cnf not read by libmysqlclient

  sql-common/client.c@1.117.1.1, 2007-11-16 10:43:58+01:00, msvensson@pilot.mysql.com +5 -0
    Store ssl_cipher setting read from my.cnf into "option->ssl_cipher"

ChangeSet@1.2541.41.1, 2007-11-14 12:02:20+01:00, istruewing@stella.local +3 -0
  Bug#4692 - DISABLE/ENABLE KEYS waste a space
  
  Post-pushbuild fix
  
  Added a purecov comment and a test for coverage of parallel
  enable keys.

  myisam/mi_check.c@1.153.1.1, 2007-11-14 12:02:18+01:00, istruewing@stella.local +1 -1
    Bug#4692 - DISABLE/ENABLE KEYS waste a space
    Added purecov comment.

  mysql-test/r/myisam.result@1.102, 2007-11-14 12:02:18+01:00, istruewing@stella.local +8 -0
    Bug#4692 - DISABLE/ENABLE KEYS waste a space
    Added test result.

  mysql-test/t/myisam.test@1.83, 2007-11-14 12:02:18+01:00, istruewing@stella.local +6 -0
    Bug#4692 - DISABLE/ENABLE KEYS waste a space
    Added test for coverage of parallel enable keys.

ChangeSet@1.2541.15.7, 2007-11-13 09:43:29+01:00, mats@kindahl-laptop.dnsalias.net +1 -0
  Elimination of warning for unused function code_name() in non-debug mode.

  sql/log_event.cc@1.243, 2007-11-13 09:43:25+01:00, mats@kindahl-laptop.dnsalias.net +2 -0
    Elimination of warning for unused function code_name() in non-debug mode.

ChangeSet@1.2541.15.6, 2007-11-13 09:01:42+01:00, mats@kindahl-laptop.dnsalias.net +1 -0
  Fixes to eliminate warnings.

  sql/log_event.cc@1.242, 2007-11-13 09:01:39+01:00, mats@kindahl-laptop.dnsalias.net +6 -4
    Fixes to eliminate warnings.

ChangeSet@1.1616.3115.1, 2007-11-13 10:51:47+04:00, holyfoot@mysql.com +5 -0
  Bug #31158  Spatial, Union, LONGBLOB vs BLOB bug (crops data)
  
  max_length parameter for BLOB-returning functions must be big enough
  for any possible content. Otherwise the field created for a table
  will be too small.

  mysql-test/r/gis.result@1.15.1.12, 2007-11-13 10:51:47+04:00, holyfoot@mysql.com +25 -1
    Bug #31158  Spatial, Union, LONGBLOB vs BLOB bug (crops data)
    
    test result

  mysql-test/t/gis.test@1.17.1.8, 2007-11-13 10:51:47+04:00, holyfoot@mysql.com +31 -0
    Bug #31158  Spatial, Union, LONGBLOB vs BLOB bug (crops data)
    
    test case

  sql/field.cc@1.197.1.41, 2007-11-13 10:51:47+04:00, holyfoot@mysql.com +1 -1
    Bug #31158  Spatial, Union, LONGBLOB vs BLOB bug (crops data)
    
    max_field_size used instead of numeric value

  sql/field.h@1.120.1.19, 2007-11-13 10:51:47+04:00, holyfoot@mysql.com +1 -0
    Bug #31158  Spatial, Union, LONGBLOB vs BLOB bug (crops data)
    
    max_field_size constant defined

  sql/item_geofunc.cc@1.18.1.8, 2007-11-13 10:51:47+04:00, holyfoot@mysql.com +1 -1
    Bug #31158  Spatial, Union, LONGBLOB vs BLOB bug (crops data)
    
    max_length parameter fixed

ChangeSet@1.2541.15.5, 2007-11-12 22:02:12+01:00, mats@kindahl-laptop.dnsalias.net +1 -0
  BUG#31793 (log event corruption causes crash):
  
  Corrections to get_str_len_and_pointer().

  sql/log_event.cc@1.241, 2007-11-12 22:02:05+01:00, mats@kindahl-laptop.dnsalias.net +37 -10
    Adding missing return at end of get_str_len_and_pointer()
    and correcting computation of missing bytes.

ChangeSet@1.2559, 2007-11-10 21:39:30+04:00, ramil@mysql.com +2 -0
  compiler warnings fixed.

  sql/ha_myisam.cc@1.182.1.1, 2007-11-10 21:39:29+04:00, ramil@mysql.com +1 -1
    compiler warning fixed.

  sql/unireg.cc@1.87, 2007-11-10 21:39:29+04:00, ramil@mysql.com +1 -1
    compiler warning fixed.

ChangeSet@1.2551.2.3, 2007-11-10 18:27:57+04:00, ramil@mysql.com +3 -0
  manual merge.

  mysql-test/r/ps.result@1.96, 2007-11-10 18:27:56+04:00, ramil@mysql.com +5 -0
    manual merge.

  mysql-test/t/ps.test@1.96, 2007-11-10 18:27:56+04:00, ramil@mysql.com +10 -0
    manual merge.

  sql/item_timefunc.cc@1.147.2.2, 2007-11-10 18:27:56+04:00, ramil@mysql.com +26 -22
    manual merge.

ChangeSet@1.1616.3112.1, 2007-11-10 16:54:25+04:00, holyfoot@mysql.com +1 -0
  Bug #32063 "create table like" works case-significant only in "embedded" server (libmysqld)
  
  in mysql_creata_like_table() we 'downcase' the complete path to the
  .frm file. It works fine in standalone case as there usually
  we only have './' as a path to the datahome, but doesn't work in
  the embedded server where we add the real path there, so if a
  directory has uppercase letters in it's name, it won't be found.
  
  Fixed by 'downcasing' only database/table pair.

  sql/sql_table.cc@1.157.63.1, 2007-11-10 16:54:24+04:00, holyfoot@mysql.com +4 -4
    Bug #32063 "create table like" works case-significant only in "embedded" server (libmysqld)
    
    do not lowercase the database directory

ChangeSet@1.2541.15.3, 2007-11-09 13:43:09+01:00, mats@capulet.net +4 -0
  BUG#31793 (log event corruption causes crash):
  
  When running mysqlbinlog on a 64-bit machine with a corrupt relay log,
  it causes mysqlbinlog to crash. In this case, the crash is caused
  because a request for 18446744073709534806U bytes is issued, which
  apparantly can be served on a 64-bit machine (speculatively, I assume)
  but this causes the memcpy() issued later to copy the data to segfault.
  
  The request for the number of bytes is caused by a computation
  of data_len - server_vars_len where server_vars_len is corrupt in such
  a sense that it is > data_len. This causes a wrap-around, with the
  the data_len given above.
  
  This patch adds a check that if server_vars_len is greater than
  data_len before the substraction, and aborts reading the event in
  that case marking the event as invalid. It also adds checks to see
  that reading the server variables does not go outside the bounds
  of the available space, giving a limited amount of integrity check.

  mysql-test/r/mysqlbinlog.result@1.37, 2007-11-09 13:43:07+01:00, mats@capulet.net +1 -0
    Result change.

  mysql-test/std_data/corrupt-relay-bin.000624@1.1, 2007-11-09 13:43:07+01:00, mats@capulet.net +2033 -0
    BitKeeper file /home/mats/devel/b31793-mysql-5.0-rpl/mysql-test/std_data/corrupt-relay-bin.000624

  mysql-test/std_data/corrupt-relay-bin.000624@1.0, 2007-11-09 13:43:07+01:00, mats@capulet.net +0 -0

  mysql-test/t/mysqlbinlog.test@1.51, 2007-11-09 13:43:07+01:00, mats@capulet.net +4 -0
    Adding test that it fails gracefully for a corrupt relay log.

  sql/log_event.cc@1.238.1.1, 2007-11-09 13:43:07+01:00, mats@capulet.net +84 -11
    Adding check that status var length does not cause wrap-around
    when performing subtraction. Extending get_str_len_and_pointer() to
    check that the string can actually be read without reading outside
    bounds. Adding checks when reading server variables from the Query-
    log_event so that the variable can really be read. Abort reading
    and mark the event as invalid otherwise.

ChangeSet@1.1616.3090.10, 2007-11-09 16:05:01+04:00, svoj@mysql.com +3 -0
  BUG#29083 - test suite times out on OS X 64bit - also in older releases
  
  The "mysql client in mysqld"(which is used by
  replication and federated) should use alarms instead of setting
  socket timeout value if the rest of the server uses alarm. By
  always calling 'my_net_set_write_timeout'
  or 'net_set_read_timeout' when changing the timeout value(s), the
  selection whether to use alarms or timeouts will be handled by
  ifdef's in those two functions.
  
  This is minimal backport of patch for BUG#26664, which was pushed
  to 5.0 and up.
  
  Affects 4.1 only.

  include/mysql_com.h@1.67.1.43, 2007-11-09 16:05:01+04:00, svoj@mysql.com +5 -0
    Move the net_set_*_timeout function declarations to mysql_com.h

  sql-common/client.c@1.46.9.2, 2007-11-09 16:05:01+04:00, svoj@mysql.com +2 -4
     Use my_net_read_timeout or my_net_write_timeout when setting the timeouts

  sql/mysql_priv.h@1.186.91.64, 2007-11-09 16:05:01+04:00, svoj@mysql.com +0 -3
    Move the net_set_*_timeout function declarations to mysql_com.h

ChangeSet@1.2541.1.21, 2007-11-07 18:02:12+02:00, gkodinov@magare.gmz +3 -0
  Bug #31928: Search fails on '1000-00-00' date after sql_mode change
  
  When constructing a key image stricter date checking (from sql_mode)
  should not be enabled, because it will reject invalid dates that the
  server would otherwise accept for searching when there's no index.
   
  Fixed by disabling strict date checking when constructing a key image.

  mysql-test/r/type_date.result@1.20.1.1, 2007-11-07 18:02:12+02:00, gkodinov@magare.gmz +38 -1
    Bug #31928: test case

  mysql-test/t/type_date.test@1.18.1.1, 2007-11-07 18:02:12+02:00, gkodinov@magare.gmz +20 -0
    Bug #31928: test case

  sql/sql_select.h@1.124, 2007-11-07 18:02:12+02:00, gkodinov@magare.gmz +7 -4
    Bug #31928: Disable strict date checking when consructing
    a key image

ChangeSet@1.1616.3110.1, 2007-11-07 12:55:28+04:00, svoj@mysql.com +7 -0
  BUG#31277 - myisamchk --unpack corrupts a table
  
  With certain data sets (when compressed record length gets bigger than
  uncompressed) myisamchk --unpack may corrupt data file.
  
  Fixed that record length was wrongly restored from compressed table.

  myisam/mi_check.c@1.105.1.59, 2007-11-07 12:55:27+04:00, svoj@mysql.com +21 -18
    With compressed tables compressed record length may be bigger than
    pack_reclength, thus we may allocate insufficient memory for record
    buffer.
    
    Let single function allocate record buffer, performing needed record
    length calculations.
    
    Still, it is not doable with parallel repair, as it allocates needed
    record buffers at once. For parellel repair added better record length
    calculation.

  myisam/mi_open.c@1.80.2.13, 2007-11-07 12:55:27+04:00, svoj@mysql.com +5 -2
    When calculating record buffer size, take into account that compressed
    record length may be bigger than uncompressed.

  myisam/mi_packrec.c@1.25.1.9, 2007-11-07 12:55:27+04:00, svoj@mysql.com +0 -1
    With certain data set share->max_pack_length (compressed record length)
    may be bigger than share->base.pack_reclength (packed record length).
    
    set_if_bigger(pack_reclength, max_pack_length) in this case causes
    myisamchk --unpack to write extra garbage, whereas pack_reclength
    remains the same in new index file. As a result we get unreadable
    table.

  myisam/myisamchk.c@1.92.6.2, 2007-11-07 12:55:27+04:00, svoj@mysql.com +4 -3
    With compressed tables compressed record length may be bigger than
    pack_reclength, thus we may allocate insufficient memory for record
    buffer.
    
    Let single function allocate record buffer, performing needed record
    length calculations.

  mysql-test/mysql-test-run.pl@1.8.20.16, 2007-11-07 12:55:27+04:00, svoj@mysql.com +15 -0
    Environment variables to execute myisamchk and myisampack.

  mysql-test/r/myisampack.result@1.1, 2007-11-07 12:55:27+04:00, svoj@mysql.com +29 -0
    New BitKeeper file ``mysql-test/r/myisampack.result''

  mysql-test/r/myisampack.result@1.0, 2007-11-07 12:55:27+04:00, svoj@mysql.com +0 -0

  mysql-test/t/myisampack.test@1.1, 2007-11-07 12:55:27+04:00, svoj@mysql.com +33 -0
    New BitKeeper file ``mysql-test/t/myisampack.test''

  mysql-test/t/myisampack.test@1.0, 2007-11-07 12:55:27+04:00, svoj@mysql.com +0 -0

ChangeSet@1.1616.3106.2, 2007-11-07 12:47:19+04:00, ramil@mysql.com +3 -0
  Fix for bug #32137: prepared statement crash with str_to_date in update clause
  
  Problem: calling non-constant argument's val_xxx() methods 
  in the ::fix_length_and_dec() is inadmissible.
  
  Fix: call the method only for constant arguments.

  mysql-test/r/ps.result@1.31.1.26, 2007-11-07 12:47:18+04:00, ramil@mysql.com +5 -0
    Fix for bug #32137: prepared statement crash with str_to_date in update clause
      - test result.

  mysql-test/t/ps.test@1.27.1.33, 2007-11-07 12:47:18+04:00, ramil@mysql.com +9 -0
    Fix for bug #32137: prepared statement crash with str_to_date in update clause
      - test case.

  sql/item_timefunc.cc@1.51.6.10, 2007-11-07 12:47:18+04:00, ramil@mysql.com +26 -23
    Fix for bug #32137: prepared statement crash with str_to_date in update clause
      - call argument's val_str() only for constant items in the 
        Item_func_str_to_date::fix_length_and_dec().

ChangeSet@1.2541.27.5, 2007-11-06 20:31:40+02:00, aelkin@koti.dsl.inet.fi +2 -0
  bug#27571
  
  refining non-deterministic tests.
  The new Bug@32148 is in the way. Adjuting the tests to be somehow useful.
   

  mysql-test/r/binlog_killed.result@1.9, 2007-11-06 20:31:37+02:00, aelkin@koti.dsl.inet.fi +4 -0
    results changed

  mysql-test/t/binlog_killed.test@1.8.1.3, 2007-11-06 20:31:37+02:00, aelkin@koti.dsl.inet.fi +15 -0
    refining the tests as killing is inherently non-deterministic;
    leaving todos.

ChangeSet@1.2541.27.4, 2007-11-06 16:25:32+02:00, aelkin@koti.dsl.inet.fi +1 -0
  bug#27571
  
  fixing tests

  mysql-test/r/binlog_killed_simulate.result@1.1, 2007-11-06 16:25:29+02:00, aelkin@koti.dsl.inet.fi +33 -0
    the new tests' result

  mysql-test/r/binlog_killed_simulate.result@1.0, 2007-11-06 16:25:29+02:00, aelkin@koti.dsl.inet.fi +0 -0

ChangeSet@1.2541.27.3, 2007-11-06 15:11:59+02:00, aelkin@koti.dsl.inet.fi +2 -0
  bug#27571
  
  removing extra tests (on 5.1 that's been already done)

  BitKeeper/deleted/.del-binlog_killed_bug27571-master.opt@1.2, 2007-11-06 15:09:37+02:00, aelkin@koti.dsl.inet.fi +0 -0
    Delete: mysql-test/t/binlog_killed_bug27571-master.opt

  BitKeeper/deleted/.del-binlog_killed_bug27571.test@1.2, 2007-11-06 15:09:42+02:00, aelkin@koti.dsl.inet.fi +0 -0
    Delete: mysql-test/t/binlog_killed_bug27571.test

ChangeSet@1.2541.27.2, 2007-11-06 13:53:26+02:00, aelkin@koti.dsl.inet.fi +3 -0
  bug#27571
  
  commit is specific for 5.0 to eliminated non-deterministic tests.
  Those tests run only in 5.1 env where there is a necessary devices such
  as processlist table of info_schema.

  mysql-test/r/binlog_killed.result@1.8, 2007-11-06 13:53:23+02:00, aelkin@koti.dsl.inet.fi +5 -71
    results changed

  mysql-test/t/binlog_killed.test@1.8.1.2, 2007-11-06 13:53:24+02:00, aelkin@koti.dsl.inet.fi +13 -105
    removing non-deterministic part of the test

  mysql-test/t/binlog_killed_simulate.test@1.2, 2007-11-06 13:53:24+02:00, aelkin@koti.dsl.inet.fi +1 -0
    adding the guard same as for 5.1 version

ChangeSet@1.2521.68.1, 2007-11-05 17:20:10+02:00, aelkin@koti.dsl.inet.fi +3 -0
  Bug #28597 Replication doesn't start after upgrading to 5.1.18
  
  Since bug@20166, which replaced the binlog file name generating to base
  on pidfile_name instead of the previous glob_hostname, the binlog file
  name suddenly started to be stored solely in the absolute path format,
  including a case when --log-bin option meant a relative path.
  What's more serious, the path for binlog file can lead unrequestedly 
  to pid-file directory so that after any proper fix for this bug
  there might be similar to the bug report consequences for one who
  upgrades from post-fix-bug@20166-pre-fix-bug@28597 to post-fix-bug@28597.
  
  Fixed with preserving`pidfile_name' (intr.by bug@20166) but stripping
  off its directory part. This restores the original logics of storing
  the names in compatible with --log-bin option format and with the
  requirement for --log-bin ralative path to corresond to the data directory.
  Side effects for this fix:
  
  effective fixing bug@27070, refining its test;
  ensuring no overrun for buff can happen anymore (Bug#31836 
  insufficient space reserved for the suffix of relay log file name);
  bug#31837  --remove_file $MYSQLTEST_VARDIR/tmp/bug14157.sql missed
  in rpl_temporary.test;
  fixes Bug@28603  Invalid log-bin default location;

  mysql-test/t/rpl_dual_pos_advance.test@1.3, 2007-11-05 17:20:08+02:00, aelkin@koti.dsl.inet.fi +0 -6
    After correcting the logics of log file name composing workaround for
    
      Bug #27070 server logs are created unrequested and in wrong directory
    
    is removed.

  mysql-test/t/rpl_temporary.test@1.25, 2007-11-05 17:20:08+02:00, aelkin@koti.dsl.inet.fi +2 -0
    remaining temp file of the test removed

  sql/log.cc@1.221, 2007-11-05 17:20:08+02:00, aelkin@koti.dsl.inet.fi +4 -7
    stripping off the directory part of `pidfile_name' for binlog name
    generating (which fixes two more bugs on wrong binlog file location);
    ensuring no overrun for buff can happen anymore (Bug #31836 
    insufficient space reserved for the suffix of relay log file name);

ChangeSet@1.2557, 2007-11-01 19:40:27+01:00, msvensson@pilot.mysql.com +1 -0
  Bug#30630 mysql-test-run all tests fail with MySQL 5.0.41 & 5.0.45 on Mac OS X Server 10.5

  mysql-test/mysql-test-run.pl@1.252, 2007-11-01 19:40:25+01:00, msvensson@pilot.mysql.com +10 -0
    Also check for euid == 0

ChangeSet@1.2547.2.2, 2007-11-01 11:02:28+01:00, msvensson@pilot.mysql.com +1 -0
  Bug#27753 enable mysql-test-run.pl to ignore tests based on wildcard
   - Fix problem in first implementation

  mysql-test/lib/mtr_cases.pl@1.43, 2007-11-01 11:02:27+01:00, msvensson@pilot.mysql.com +4 -6
    Prepend a ^ to the regex only if _all_ charactersin the pattern are normal

ChangeSet@1.2547.2.1, 2007-11-01 11:01:05+01:00, msvensson@pilot.mysql.com +1 -0
  Fix comment

  client/mysqltest.c@1.310, 2007-11-01 11:01:01+01:00, msvensson@pilot.mysql.com +1 -1
    Fix comment

ChangeSet@1.2551.2.1, 2007-10-31 10:34:26+01:00, knielsen@loke.(none) +4 -0
  BUG#31799: Scrambled number output due to integer overflow
  
  An integer overflow in number->string conversion caused completely
  wrong output of the number LONGLONG_MIN with gcc 4.2.1.
  
  Fixed by eliminating the overflow, using only operations that are
  well-defined in ANSI C.

  strings/ctype-simple.c@1.86, 2007-10-31 10:34:25+01:00, knielsen@loke.(none) +14 -10
    An integer overflow in number->string conversion caused completely
    wrong output of the number LONGLONG_MIN with gcc 4.2.1.
    
    Fixed by eliminating the overflow, using only operations that are
    well-defined in ANSI C.

  strings/ctype-ucs2.c@1.68, 2007-10-31 10:34:25+01:00, knielsen@loke.(none) +14 -10
    An integer overflow in number->string conversion caused completely
    wrong output of the number LONGLONG_MIN with gcc 4.2.1.
    
    Fixed by eliminating the overflow, using only operations that are
    well-defined in ANSI C.

  strings/int2str.c@1.10, 2007-10-31 10:34:25+01:00, knielsen@loke.(none) +10 -6
    An integer overflow in number->string conversion caused completely
    wrong output of the number LONGLONG_MIN with gcc 4.2.1.
    
    Fixed by eliminating the overflow, using only operations that are
    well-defined in ANSI C.

  strings/longlong2str.c@1.10, 2007-10-31 10:34:25+01:00, knielsen@loke.(none) +18 -14
    An integer overflow in number->string conversion caused completely
    wrong output of the number LONGLONG_MIN with gcc 4.2.1.
    
    Fixed by eliminating the overflow, using only operations that are
    well-defined in ANSI C.

ChangeSet@1.2535.2.1, 2007-10-30 12:51:57+04:00, ramil@mysql.com +3 -0
  Fix for bug #30654: mysqlcheck fails during upgrade of tables whose 
  names include backticks or blank
  
  Problem: mysqlcheck doesn't escape backtick characters in the table names.
  
  Fix: escape them.

  client/mysqlcheck.c@1.60, 2007-10-30 12:51:55+04:00, ramil@mysql.com +38 -14
    Fix for bug #30654: mysqlcheck fails during upgrade of tables whose 
    names include backticks or blank
      - escape backtick characters in the table names.

  mysql-test/r/mysqlcheck.result@1.4, 2007-10-30 12:51:55+04:00, ramil@mysql.com +6 -1
    Fix for bug #30654: mysqlcheck fails during upgrade of tables whose 
    names include backticks or blank
      - test result.

  mysql-test/t/mysqlcheck.test@1.4, 2007-10-30 12:51:56+04:00, ramil@mysql.com +10 -1
    Fix for bug #30654: mysqlcheck fails during upgrade of tables whose 
    names include backticks or blank
      - test case.

ChangeSet@1.2521.65.1, 2007-10-29 15:20:59+02:00, aelkin@koti.dsl.inet.fi +12 -0
  Bug #27571 asynchronousity in setting mysql_`query`::error and
             Query_log_event::error_code
  
  A query can perform completely having the local var error of mysql_$query
  zero, where $query in insert, update, delete, load,
  and be  binlogged with error_code e.g KILLED_QUERY while there is no
  reason do to so.
  That can happen because Query_log_event consults thd->killed flag to
  evaluate error_code.
  
  Fixed with implementing a scheme suggested and partly implemented at
  time of bug@22725 work-on. error_status is cached immediatly after the
  control leaves the main rows-loop and that instance always corresponds
  to `error' the local of mysql_$query functions. The cached value
  is passed to Query_log_event constructor, not the default thd->killed
  which can be changed in between of the caching and the constructing.

  mysql-test/t/binlog_killed_bug27571-master.opt@1.1, 2007-10-29 15:20:55+02:00, aelkin@koti.dsl.inet.fi +1 -0
    post rows-loop killing simulation's options

  mysql-test/t/binlog_killed_bug27571-master.opt@1.0, 2007-10-29 15:20:55+02:00, aelkin@koti.dsl.inet.fi +0 -0

  mysql-test/t/binlog_killed_bug27571.test@1.1, 2007-10-29 15:20:56+02:00, aelkin@koti.dsl.inet.fi +68 -0
    Checking that if killing happens inbetween of the end of rows loop and
    recording into binlog that will not lead to recording any error incl
    the killed error.

  mysql-test/t/binlog_killed_bug27571.test@1.0, 2007-10-29 15:20:56+02:00, aelkin@koti.dsl.inet.fi +0 -0

  mysql-test/r/binlog_killed.result@1.7, 2007-10-29 15:20:53+02:00, aelkin@koti.dsl.inet.fi +106 -0
    results changed

  mysql-test/t/binlog_killed.test@1.8.1.1, 2007-10-29 15:20:54+02:00, aelkin@koti.dsl.inet.fi +170 -125
    Demonstrating that effective killing during rows-loop execution leads to the speficied actions:
    binlogging with the error for a query modified a not-transactional table or
    rolling back effects for transactional table;
    
    fixing possible non-determinism with ID when query_log_enabled;
    
    leave commented out tests for multi-update,delete due to another bug;
    
    removing an obsolete tests template;
    
    changing system rm to --remove_file.

  mysql-test/t/binlog_killed_simulate-master.opt@1.1, 2007-10-29 15:20:56+02:00, aelkin@koti.dsl.inet.fi +1 -0
    simulation options

  mysql-test/t/binlog_killed_simulate-master.opt@1.0, 2007-10-29 15:20:56+02:00, aelkin@koti.dsl.inet.fi +0 -0

  mysql-test/t/binlog_killed_simulate.test@1.1, 2007-10-29 15:20:56+02:00, aelkin@koti.dsl.inet.fi +65 -0
    tests for 
    a query (update is choosen) being killed after the row-loop;
    load data killed within the loop - effective killed error in the event is gained.
    

  mysql-test/t/binlog_killed_simulate.test@1.0, 2007-10-29 15:20:56+02:00, aelkin@koti.dsl.inet.fi +0 -0

  sql/log_event.cc@1.239, 2007-10-29 15:20:54+02:00, aelkin@koti.dsl.inet.fi +6 -5
    adding killed status arg

  sql/log_event.h@1.136, 2007-10-29 15:20:54+02:00, aelkin@koti.dsl.inet.fi +6 -4
    added killed status arg

  sql/sql_delete.cc@1.202, 2007-10-29 15:20:54+02:00, aelkin@koti.dsl.inet.fi +11 -7
    deploying the update part patch for delete, multi-delete

  sql/sql_insert.cc@1.252, 2007-10-29 15:20:55+02:00, aelkin@koti.dsl.inet.fi +2 -1
    deploying the update-part patch for insert..select

  sql/sql_load.cc@1.118, 2007-10-29 15:20:55+02:00, aelkin@koti.dsl.inet.fi +20 -6
    deploying the update-part patch for load data.
    simulation added.

  sql/sql_update.cc@1.225, 2007-10-29 15:20:55+02:00, aelkin@koti.dsl.inet.fi +34 -36
    Impementing the fix as described in the comments left by bug@22725.
    Also simulation of killing after the loop that would affect binlogging in the old code.

ChangeSet@1.2541.12.1, 2007-10-29 12:20:21+04:00, ramil@mysql.com +4 -0
  Fix for bug #30782: Truncated UNSIGNED BIGINT columns only in SELECT w/ CASE, 
  JOIN, and ORDER BY
  
  Problem: improper maximum length calculation of the CASE function leads to 
  decimal value truncation (storing/retrieving decimal field values).
  
  Fix: accurately calculate maximum length/unsigned flag/decimals parameters 
  of the CASE function.

  mysql-test/r/case.result@1.29, 2007-10-29 12:20:19+04:00, ramil@mysql.com +19 -1
    Fix for bug #30782: Truncated UNSIGNED BIGINT columns only in SELECT w/ CASE, 
    JOIN, and ORDER BY
      - test result.

  mysql-test/t/case.test@1.22, 2007-10-29 12:20:19+04:00, ramil@mysql.com +19 -2
    Fix for bug #30782: Truncated UNSIGNED BIGINT columns only in SELECT w/ CASE, 
    JOIN, and ORDER BY
      - test case.

  sql/item_cmpfunc.cc@1.263.3.1, 2007-10-29 12:20:19+04:00, ramil@mysql.com +30 -6
    Fix for bug #30782: Truncated UNSIGNED BIGINT columns only in SELECT w/ CASE, 
    JOIN, and ORDER BY
      - accurately calculate Item_func_case::max_length/unsigned_flag/decimals.

  sql/item_cmpfunc.h@1.155.3.1, 2007-10-29 12:20:19+04:00, ramil@mysql.com +2 -0
    Fix for bug #30782: Truncated UNSIGNED BIGINT columns only in SELECT w/ CASE, 
    JOIN, and ORDER BY
      - accurately calculate Item_func_case::max_length/unsigned_flag/decimals.

ChangeSet@1.2541.11.1, 2007-10-26 18:52:58+02:00, mats@kindahl-laptop.dnsalias.net +4 -0
  BUG#12691 (Exec_master_log_pos corrupted with SQL_SLAVE_SKIP_COUNTER):
    
  Adding code to keep skipping events while inside a transaction. Execution
  will start just after the transaction has been skipped.

  mysql-test/r/rpl_slave_skip.result@1.1, 2007-10-26 18:52:53+02:00, mats@kindahl-laptop.dnsalias.net +144 -0
    New BitKeeper file ``mysql-test/r/rpl_slave_skip.result''

  mysql-test/r/rpl_slave_skip.result@1.0, 2007-10-26 18:52:53+02:00, mats@kindahl-laptop.dnsalias.net +0 -0

  mysql-test/t/rpl_slave_skip-slave.opt@1.1, 2007-10-26 18:52:53+02:00, mats@kindahl-laptop.dnsalias.net +1 -0
    New BitKeeper file ``mysql-test/t/rpl_slave_skip-slave.opt''

  mysql-test/t/rpl_slave_skip-slave.opt@1.0, 2007-10-26 18:52:53+02:00, mats@kindahl-laptop.dnsalias.net +0 -0

  mysql-test/t/rpl_slave_skip.test@1.1, 2007-10-26 18:52:54+02:00, mats@kindahl-laptop.dnsalias.net +203 -0
    New BitKeeper file ``mysql-test/t/rpl_slave_skip.test''

  mysql-test/t/rpl_slave_skip.test@1.0, 2007-10-26 18:52:54+02:00, mats@kindahl-laptop.dnsalias.net +0 -0

  sql/slave.cc@1.300.1.1, 2007-10-26 18:52:53+02:00, mats@kindahl-laptop.dnsalias.net +53 -3
    Adding code to set the thd->options flag for the slave SQL thread
    even when BEGIN, ROLLBACK, COMMIT, and XID events are being skipped.
        
    Adding code to not decrease the slave skip counter from 1 to 0 if we
    are inside a transaction. This will keep the counter at 1, and keep
    skipping events, until a transaction terminator is read. At that point,
    the slave skip counter will be decreased to 0, and events will be read
    and executed instead of read and skipped.

ChangeSet@1.2552, 2007-10-26 15:37:38+05:00, ramil@mysql.com +7 -0
  Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
  file .\ha_innodb.
  
  Problem: if a partial unique key followed by a non-partial one we declare
  the second one as a primary key.
  
  Fix: sort non-partial unique keys before partial ones.

  include/my_base.h@1.87, 2007-10-26 15:37:37+05:00, ramil@mysql.com +1 -1
    Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
    file .\ha_innodb.
      - sort unique keys that don't contain partial segments before other keys:
          set HA_KEY_HAS_PART_KEY_SEG flag for such keys in the mysql_prepare_table(),
          use it in the sort_keys();

  mysql-test/r/innodb_mysql.result@1.35, 2007-10-26 15:37:37+05:00, ramil@mysql.com +15 -0
    Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
    file .\ha_innodb.
      - test result.

  mysql-test/r/key.result@1.40, 2007-10-26 15:37:37+05:00, ramil@mysql.com +44 -0
    Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
    file .\ha_innodb.
      - test result.

  mysql-test/t/innodb_mysql.test@1.34, 2007-10-26 15:37:37+05:00, ramil@mysql.com +9 -0
    Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
    file .\ha_innodb.
      - test case.

  mysql-test/t/key.test@1.31, 2007-10-26 15:37:37+05:00, ramil@mysql.com +18 -0
    Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
    file .\ha_innodb.
      - test case.

  sql/sql_table.cc@1.355.1.2, 2007-10-26 15:37:37+05:00, ramil@mysql.com +18 -8
    Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
    file .\ha_innodb.
      - sort unique keys that don't contain partial segments before other keys:
          set HA_KEY_HAS_PART_KEY_SEG flag for such keys in the mysql_prepare_table(),
          use it in the sort_keys();

  sql/structs.h@1.60, 2007-10-26 15:37:37+05:00, ramil@mysql.com +1 -1
    Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
    file .\ha_innodb.
      - sort unique keys that don't contain partial segments before other keys:
          set HA_KEY_HAS_PART_KEY_SEG flag for such keys in the mysql_prepare_table(),
          use it in the sort_keys();

ChangeSet@1.2551, 2007-10-25 08:19:57+04:00, kaa@polly.(none) +1 -0
  Replaced 'return' with DBUG_RETURN() in the fix for bug #31566.

  mysys/my_write.c@1.17, 2007-10-25 08:19:52+04:00, kaa@polly.(none) +1 -1
    Replaced 'return' with DBUG_RETURN() in the fix for bug #31566.

ChangeSet@1.2532.2.2, 2007-10-24 21:16:20+04:00, kaa@polly.(none) +1 -0
  Fix for bug #31566: my_write(fd, 0x0, 0, flags) fails with EFAULT on
  some platforms
  
  Since the behavior of write(fd, buf, 0) is undefined, it may fail with
  EFAULT on some architectures when buf == NULL. The error was propagated
  up to a caller, since my_write() code did not handle it properly.
  
  Fixed by checking the 'number of bytes' argument in my_write() and
  returning before calling the write() system call when there is nothing
  to write.

  mysys/my_write.c@1.16, 2007-10-24 21:16:12+04:00, kaa@polly.(none) +4 -0
    Return from my_write() before calling the write() system call when the
    number of bytes to be written is 0, since the behavior of write() in
    this case is not portable.

ChangeSet@1.2521.61.1, 2007-10-24 12:08:33+05:00, bar@mysql.com +1 -0
  Bug#31081 server crash in regexp function
  Additional fix for valgrind warning

  sql/item_cmpfunc.cc@1.263.1.2, 2007-10-24 12:08:32+05:00, bar@mysql.com +1 -1
    Bug#31081 server crash in regexp function
    Additional fix for valgrind warning

ChangeSet@1.2538.2.1, 2007-10-23 11:52:55+02:00, msvensson@pilot.mysql.com +1 -0
  Bug#30560  Valgrind option to mysql-test-run with spaces in cause strange error

  mysql-test/mysql-test-run.pl@1.251, 2007-10-23 11:52:54+02:00, msvensson@pilot.mysql.com +31 -17
    Use an array to store the valgrind options
    Deprecate --valgrind-options=s and instead use --valgrind-option(but allow
    PushBuild's) --valgrind-options=s usage.
    Make the variables local

ChangeSet@1.2543, 2007-10-22 22:35:08+04:00, kaa@polly.(none) +1 -0
  Fixed the Windows build failures introduced by the patch for bug #31207: Test "join_nested" shows different strategy on IA64 CPUs / Intel's ICC compiler.

  libmysql/CMakeLists.txt@1.7, 2007-10-22 22:35:05+04:00, kaa@polly.(none) +1 -1
    Fixed the Windows build failures introduced by the patch for bug #31207: Test "join_nested" shows different strategy on IA64 CPUs / Intel's ICC compiler.

ChangeSet@1.2493.17.1, 2007-10-21 18:37:37+03:00, aelkin@dsl-hkibras1-ff5fc300-23.dhcp.inet.fi +3 -0
  Bug #26199  	Replication Failure on Slave when using stored procs with bit-type parameters.
  
  The value of the actual argument of BIT-type-arg stored procedure was binlogged as non-escaped
  sequence of bytes corresponding to internal representation of the bit value.
  
  The patch enforces binlogging of the bit-argument as a valid literal: prefixing the quoted bytes
  sequence with _binary.
  Note, that behaviour of Item_field::var_str for field_type() of MYSQL_TYPE_BIT is exceptional
  in that the returned string contains the binary representation even though result_type() of
  the item is INT_RESULT.

  mysql-test/r/rpl_sp_effects.result@1.4, 2007-10-21 18:37:34+03:00, aelkin@dsl-hkibras1-ff5fc300-23.dhcp.inet.fi +41 -0
    testing stored function and procedure called with BIT-arg.

  mysql-test/t/rpl_sp_effects.test@1.4, 2007-10-21 18:37:34+03:00, aelkin@dsl-hkibras1-ff5fc300-23.dhcp.inet.fi +51 -0
    results changed

  sql/sp_head.cc@1.253.1.1, 2007-10-21 18:37:35+03:00, aelkin@dsl-hkibras1-ff5fc300-23.dhcp.inet.fi +3 -2
    Treating BIT field type specially to for its value to be prefixed and quoted.

ChangeSet@1.2541.3.1, 2007-10-19 14:54:05+05:00, ramil@mysql.com +3 -0
  Fix for bug #31349: ERROR 1062 (23000): Duplicate entry '' for key 'group_key'
  
  Problem: lying to the optimizer that a function (Item_func_inet_ntoa)
  cannot return NULL values leads to unexpected results (in the case group
  keys creation/comparison is broken). 
  
  Fix: Item_func_inet_ntoa::maybe_null should be set properly.

  mysql-test/r/func_misc.result@1.27.1.1, 2007-10-19 14:54:03+05:00, ramil@mysql.com +6 -0
    Fix for bug #31349: ERROR 1062 (23000): Duplicate entry '' for key 'group_key'
      - test result.

  mysql-test/t/func_misc.test@1.21.1.1, 2007-10-19 14:54:03+05:00, ramil@mysql.com +8 -0
    Fix for bug #31349: ERROR 1062 (23000): Duplicate entry '' for key 'group_key'
      - test case.

  sql/item_strfunc.h@1.123.1.1, 2007-10-19 14:54:03+05:00, ramil@mysql.com +6 -1
    Fix for bug #31349: ERROR 1062 (23000): Duplicate entry '' for key 'group_key'
      - set Item_func_inet_ntoa::maybe_null flag.

ChangeSet@1.2521.56.1, 2007-10-18 21:48:16+02:00, msvensson@pilot.mysql.com +1 -0
  Remove unportable use of "system rm"

  mysql-test/t/binlog_killed.test@1.9, 2007-10-18 21:48:14+02:00, msvensson@pilot.mysql.com +1 -1
    Remove unportable use of "system rm"

ChangeSet@1.2522.8.1, 2007-10-17 20:08:58+04:00, kaa@polly.(none) +21 -0
  Fix for bug #31207: Test "join_nested" shows different strategy on IA64
  CPUs / Intel's ICC compile
  
  The bug is a combination of two problems:
  
  1. IA64/ICC MySQL binaries use glibc's qsort(), not the one in mysys.
  
  2. The order relation implemented by join_tab_cmp() is not transitive,
  i.e. it is possible to choose such a, b and c that (a < b) && (b < c)
  but (c < a). This implies that result of a sort using the relation
  implemented by join_tab_cmp() depends on the order in which
  elements are compared, i.e. the result is implementation-specific. Since
  choose_plan() uses qsort() to pre-sort the
  join tables using join_tab_cmp() as a compare function, the results of
  the sorting may vary depending on qsort() implementation.
  
  It is neither possible nor important to implement a better ordering
  algorithm in join_tab_cmp(). Therefore the only way to fix it is to
  force our own qsort() to be used by renaming it to my_qsort(), so we don't depend
  on linker to decide that.
  
  This patch also "fixes" bug #20530: qsort redefinition violates the
  standard.

  include/my_sys.h@1.199, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +4 -2
    Renamed qsort() and qsort2() to my_qsort() and my_qsort2(). Since
    previously we relied on stdlib.h to provide a declaration for qsort(), a
    separate declaration for my_qsort() is now required.

  libmysql/Makefile.shared@1.70, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +1 -1
    Added mf_qsort.c to libmysql, since my_lib.c now uses my_qsort() instead of qsort().

  myisam/ft_boolean_search.c@1.97, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +2 -2
    Replaced qsort2() with my_qsort2().

  myisam/ft_nlq_search.c@1.42, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +2 -1
    Replaced qsort2() with my_qsort2().

  myisam/myisampack.c@1.60, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +1 -1
    Replaced qsort() with my_qsort().

  myisam/sort.c@1.63.1.1, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +6 -6
    Replaced qsort2() with my_qsort2().

  mysys/mf_keycache.c@1.65, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +1 -1
    Replaced qsort() with my_qsort().

  mysys/mf_qsort.c@1.17, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +2 -2
    Renamed qsort() to my_qsort() and qsort2() to my_qsort2().

  mysys/mf_sort.c@1.8, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +1 -1
    Replaced qsort2() with my_qsort2().

  mysys/my_lib.c@1.29, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +3 -3
    Replaced qsort() with my_qsort().

  mysys/queues.c@1.18, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +2 -2
    Replaced qsort2() with my_qsort2().

  sql/examples/ha_tina.cc@1.30, 2007-10-17 20:08:54+04:00, kaa@polly.(none) +1 -1
    Replaced qsort() with my_qsort().

  sql/item_cmpfunc.cc@1.263.2.1, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +1 -1
    Replaced qsort2() with my_qsort2().

  sql/item_cmpfunc.h@1.155.2.1, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +1 -1
    Replaced qsort2() with my_qsort2().

  sql/opt_range.cc@1.254, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +4 -4
    Replaced qsort() with my_qsort().

  sql/records.cc@1.47, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +2 -1
    Replaced qsort() with my_qsort().

  sql/sql_acl.cc@1.222.2.1, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +10 -10
    Replaced qsort() with my_qsort().

  sql/sql_array.h@1.4, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +1 -1
    Replaced qsort() with my_qsort().

  sql/sql_help.cc@1.55, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +1 -1
    Replaced qsort() with my_qsort().

  sql/sql_select.cc@1.548.1.1, 2007-10-17 20:08:53+04:00, kaa@polly.(none) +15 -3
    Replaced qsort() with my_qsort().

  sql/sql_table.cc@1.355.1.1, 2007-10-17 20:08:54+04:00, kaa@polly.(none) +1 -1
    Replaced qsort() with my_qsort().

ChangeSet@1.1616.3103.1, 2007-10-17 14:28:00+05:00, ramil@mysql.com +4 -0
  Fix for bug#31615: crash after set names ucs2 collate xxx
  
  Problem: currently, UCS-2 cannot be used as a client character set.
  
  Fix: raise an error if one attempts to set it to USC-2.

  mysql-test/r/ctype_ucs.result@1.11.1.25, 2007-10-17 14:27:58+05:00, ramil@mysql.com +8 -0
    Fix for bug#31615: crash after set names ucs2 collate xxx
      - test result.

  mysql-test/t/ctype_ucs.test@1.15.1.21, 2007-10-17 14:27:58+05:00, ramil@mysql.com +12 -0
    Fix for bug#31615: crash after set names ucs2 collate xxx
      - test case.

  sql/set_var.cc@1.34.52.48, 2007-10-17 14:27:58+05:00, ramil@mysql.com +22 -0
    Fix for bug#31615: crash after set names ucs2 collate xxx
      - raise an error if one is going to set character_set_client to UCS-2.

  sql/set_var.h@1.54.1.9, 2007-10-17 14:27:58+05:00, ramil@mysql.com +1 -0
    Fix for bug#31615: crash after set names ucs2 collate xxx
      - raise an error if one is going to set character_set_client to UCS-2.

ChangeSet@1.2522.6.2, 2007-10-15 10:34:34+04:00, kaa@polly.(none) +3 -0
  Fix for bug #30453: String not cast to int correctly.
  
  Problem:
  
  my_strntoull10rnd_8bit() handled incorrectly cases when the input
  string contains a decimal point and is long enough to overrun the
  'unsigned long long' type. The position of the decimal point was not
  taken into account which resulted in miscalculated numbers and
  truncation to appropriate SQL data type limits.
  
  Solution:
  
  Fix my_strntoull10rnd_8bit() to take the position of a decimal point
  into account in such cases.

  mysql-test/r/insert.result@1.30, 2007-10-15 10:34:29+04:00, kaa@polly.(none) +14 -0
    Added a test case for bug #30453.

  mysql-test/t/insert.test@1.27, 2007-10-15 10:34:29+04:00, kaa@polly.(none) +15 -0
    Added a test case for bug #30453.

  strings/ctype-simple.c@1.85, 2007-10-15 10:34:29+04:00, kaa@polly.(none) +9 -5
    In cases when the 'unsigned long long' type is overrun by the input
    string and a decimal point has occurred, adjust the 'shift' according to
    the position of the decimal point and skip all subsequent digits.

ChangeSet@1.2521.23.10, 2007-10-13 15:49:42+03:00, aelkin@koti.dsl.inet.fi +10 -0
  Bug #29136 erred multi-delete on trans table does not rollback the statement
  
  similar to bug_27716, but it was stressed on in the synopsis on that there is another
  side of the artifact affecting behaviour in transaction.
  
  Fixed with deploying multi_delete::send_error() - otherwise never called - and refining its logic
  to perform binlogging job if needed.
  
  The changeset includes the following side effects:
  - added tests to check bug_23333's scenarios on the mixture of tables for multi_update;
  - fixes bug@30763 with two-liner patch and a test coinciding to one added for bug_23333.

  mysql-test/r/innodb.result@1.171, 2007-10-13 15:49:36+03:00, aelkin@koti.dsl.inet.fi +15 -2
    results changed

  mysql-test/r/mix_innodb_myisam_binlog.result@1.36, 2007-10-13 15:49:37+03:00, aelkin@koti.dsl.inet.fi +48 -4
    results changed

  mysql-test/r/multi_update.result@1.47, 2007-10-13 15:49:37+03:00, aelkin@koti.dsl.inet.fi +22 -2
    results changed

  mysql-test/t/innodb.test@1.145, 2007-10-13 15:49:37+03:00, aelkin@koti.dsl.inet.fi +32 -0
    trans table specific test added

  mysql-test/t/mix_innodb_myisam_binlog.test@1.32, 2007-10-13 15:49:38+03:00, aelkin@koti.dsl.inet.fi +70 -6
    multi-update  and multi-delete of mixure of ta and not-ta tables tests added (relates to bug_23333).

  mysql-test/t/multi_update.test@1.51, 2007-10-13 15:49:38+03:00, aelkin@koti.dsl.inet.fi +34 -0
    testing another branch of mult-delete: send_eof() (binloggin there), send_error (early return)

  sql/sql_class.h@1.345.1.2, 2007-10-13 15:49:38+03:00, aelkin@koti.dsl.inet.fi +10 -0
    a new flag to designate the fact the statement's error has been handled.
    The flag is checked by ::send_error() methods (multi_update and _delete classes)

  sql/sql_delete.cc@1.201, 2007-10-13 15:49:38+03:00, aelkin@koti.dsl.inet.fi +25 -4
    expanding multi_delete::send_error to 
    1. early return if error_handled == t
    2. binlogging locally if there was a non-trans table modified side effect

  sql/sql_parse.cc@1.639, 2007-10-13 15:49:39+03:00, aelkin@koti.dsl.inet.fi +7 -0
    adding multi_update::send_error which can perform binlogging and rollback job in needed

  sql/sql_update.cc@1.224, 2007-10-13 15:49:39+03:00, aelkin@koti.dsl.inet.fi +11 -11
    issues relating to
     
    1. bug_27716 with zeroing of `updated' to serve as the flag of early return from send_error().
       The flag is changed to be a new member error_handled; also moved outside binlogging branch.
       The reason for this change is that bug_23333 fixes were pushed after the bug_27716's and they
       left this flaw (also no test coverage).
    2. bug_30763 with assertion on trans_safe. I decide to make 2 liner fix for that bug here instead of to remove
       those two assertions. This new bug test case is the same as for multi-update on the mixure of tables.
       The rational for this fix:
       presumption for mutli_update::trans_safe to be set to zero at
       multi_update::multi_update or multi_update::initialize_tables() is incorrect.
    
       trans_safe := false should happen only when a non-transactional table gets modified. 
       Therefore, at initialization the member must be be set to true.

ChangeSet@1.2521.38.1, 2007-10-05 12:15:11+05:00, bar@mysql.com +11 -0
  Bug#31081 server crash in regexp function
  Problem: The "regex" library written by Henry Spencer
  does not support tricky character sets like UCS2.
  Fix: convert tricky character sets to UTF8 before calling
  regex functions.

  mysql-test/include/ctype_regex.inc@1.1, 2007-10-05 12:15:09+05:00, bar@mysql.com +42 -0
    New BitKeeper file ``mysql-test/include/ctype_regex.inc''
    
    Moving common regular expression tests into a separate
    file and uncluding it into func_regexp and into many ctype_xxx tests.
    

  mysql-test/include/ctype_regex.inc@1.0, 2007-10-05 12:15:09+05:00, bar@mysql.com +0 -0

  mysql-test/r/ctype_uca.result@1.19.1.1, 2007-10-05 12:15:09+05:00, bar@mysql.com +45 -0
    Adding tests

  mysql-test/r/ctype_ucs.result@1.56, 2007-10-05 12:15:09+05:00, bar@mysql.com +45 -0
    Adding tests

  mysql-test/r/ctype_utf8.result@1.108, 2007-10-05 12:15:09+05:00, bar@mysql.com +45 -0
    Adding tests

  mysql-test/r/func_regexp.result@1.12, 2007-10-05 12:15:09+05:00, bar@mysql.com +13 -1
    Adding tests

  mysql-test/t/ctype_uca.test@1.17.1.1, 2007-10-05 12:15:09+05:00, bar@mysql.com +4 -0
    Adding tests

  mysql-test/t/ctype_ucs.test@1.54, 2007-10-05 12:15:09+05:00, bar@mysql.com +4 -0
    Adding tests

  mysql-test/t/ctype_utf8.test@1.99, 2007-10-05 12:15:09+05:00, bar@mysql.com +7 -0
    Adding tests

  mysql-test/t/func_regexp.test@1.10, 2007-10-05 12:15:09+05:00, bar@mysql.com +2 -21
    Adding tests

  sql/item_cmpfunc.cc@1.263.1.1, 2007-10-05 12:15:09+05:00, bar@mysql.com +72 -50
    - Adding new method Item_func_regex::regcomp()
    to share more code between fix_fields() and val_int()
    - Adding conversion from ASCII-incompatible charsets like UCS2
    to UTF8, because the "regexp" does not support these charsets
    - Additional optimization: calculate flags for regcomp only
      once in fix_fields, instead of every regcomp()

  sql/item_cmpfunc.h@1.155.1.1, 2007-10-05 12:15:09+05:00, bar@mysql.com +4 -0
    Adding prototypes for new members and methods

ChangeSet@1.2493.16.1, 2007-10-04 18:46:31+03:00, aelkin@koti.dsl.inet.fi +5 -0
  Bug #29309 Incorrect "Seconds_Behind_Master" value in SHOW SLAVE STATUS after FLUSH LOGS
  
  Report claims that Seconds_behind_master behaves unexpectedly. 
  
  Code analysis shows that there is an evident flaw in that treating of FormatDescription event is wrong
  so  that after FLUSH LOGS on slave the Seconds_behind_master's calculation slips and incorrect
  value can be reported to SHOW SLAVE STATUS. 
  Even worse is that the gap between the correct and incorrect deltas grows with time.
  
  Fixed with prohibiting changes to rpl->last_master_timestamp by artifical events (any kind of).
  suggestion as comments is added how to fight with lack of info on the slave side by means of
  new heartbeat feature coming.
  
  The test can not be done ealily fully determistic.

  mysql-test/suite/manual/r/rpl_replication_delay.result@1.1, 2007-10-04 18:46:29+03:00, aelkin@koti.dsl.inet.fi +121 -0
    result are not deterministic though there are comments saying the most probable expected
    value for Seconds_behind_master

  mysql-test/suite/manual/r/rpl_replication_delay.result@1.0, 2007-10-04 18:46:29+03:00, aelkin@koti.dsl.inet.fi +0 -0

  mysql-test/suite/manual/t/rpl_replication_delay-slave.opt@1.1, 2007-10-04 18:46:29+03:00, aelkin@koti.dsl.inet.fi +1 -0
    bug emulation

  mysql-test/suite/manual/t/rpl_replication_delay-slave.opt@1.0, 2007-10-04 18:46:29+03:00, aelkin@koti.dsl.inet.fi +0 -0

  mysql-test/suite/manual/t/rpl_replication_delay.test@1.1, 2007-10-04 18:46:29+03:00, aelkin@koti.dsl.inet.fi +71 -0
    specic test for bug#29309. It's hard to make it reliable as it deals with timestamps.
    (a way to automate the test like this is to have I_S table for show slave status' fields)
    
    A possible way to check results is to run
    grep -i 'show\|seconds' < suite/manual/r/rpl_replication_delay.reject and to get the lines like these:
    
    show slave status /* Second_behind reports 0 */;;
    Seconds_Behind_Master   0
    show slave status /* bug emulated: reports slave threads starting time about 3*3 not 3 secs */;;
    Seconds_Behind_Master   9
    show slave status /* reports the correct diff with master query time about 3+3 secs */;;
    Seconds_Behind_Master   6
    
    Due to time discreteness of time the reported numbers may slightly vary. That's why the test is not reliable.
     

  mysql-test/suite/manual/t/rpl_replication_delay.test@1.0, 2007-10-04 18:46:29+03:00, aelkin@koti.dsl.inet.fi +0 -0

  sql/log_event.cc@1.238, 2007-10-04 18:46:28+03:00, aelkin@koti.dsl.inet.fi +31 -1
    changing timestamp is affirmed only by non-artificial events. Artifical FD won't change it anymore.
    The simulation code is off unless server is started with the args from the opt-file.
    The simulation code assumes that it will execute specific schedule generated by rpl_replication_delay.test.

  sql/slave.cc@1.302, 2007-10-04 18:46:29+03:00, aelkin@koti.dsl.inet.fi +10 -1
    Comments are changed to announce a new possibility to cope with
    Seconds_behind_master jumping due to EOF special treatment (reset of the timestamp)

ChangeSet@1.2521.23.8, 2007-10-04 13:06:01+05:00, bar@mysql.com +3 -0
  Bug#29323 mysql client only accetps ANSI encoded files
  Fix: ignore BOM marker in the first line.

  client/mysql.cc@1.240.1.1, 2007-10-04 13:05:59+05:00, bar@mysql.com +11 -0
    Skip BOM marker in the very first line.

  mysql-test/r/mysql.result@1.32, 2007-10-04 13:05:59+05:00, bar@mysql.com +2 -0
    Adding test

  mysql-test/t/mysql.test@1.33, 2007-10-04 13:05:59+05:00, bar@mysql.com +9 -0
    Adding test

ChangeSet@1.2521.23.6, 2007-10-03 11:57:14+02:00, sven@murkla.(none) +2 -0
  BUG#30752 rpl_dual_pos_advance valgrind (jump depends on uninitialized LOG_INFO)
  Problem: one thread could read uninitialized memory from (the stack of) another
  thread.
  Fix: swapped order of initializing the memory and making it available to the
  other thread.
  Fix: put lock around the statement that makes the memory available to the other
  thread.
  Fix: all fields of the struct are now initialized in the constructor, to avoid
  future problems.

  sql/sql_class.h@1.345.1.1, 2007-10-03 11:57:12+02:00, sven@murkla.(none) +7 -1
    Initialize all members in constructor for more safe future code.

  sql/sql_repl.cc@1.163, 2007-10-03 11:57:12+02:00, sven@murkla.(none) +8 -2
    Swap order so that linfo is first initialized, then assigned, instead of the
    other way around.
    Put a lock around the assignment. We use LOCK_thread_count since log_in_use
    uses it: log_in_use may be running concurrently, called from
    MYSQL_LOG::purge_logs.

ChangeSet@1.2521.23.4, 2007-10-02 15:20:45+05:00, bar@mysql.com +1 -0
  Bug#29675 collation_connection is defined twice for the same value
  Removing redundant initialization.

  sql/mysqld.cc@1.622.3.1, 2007-10-02 15:20:43+05:00, bar@mysql.com +0 -1
    Removing redundant variable initialization.

ChangeSet@1.2521.23.3, 2007-10-02 13:28:58+05:00, bar@mysql.com +2 -0
  Fixing comments to use "#" instead of "--"

  mysql-test/t/ctype_uca.test@1.18, 2007-10-02 13:28:57+05:00, bar@mysql.com +1 -1
    Fixing comments to use "#" instead of "--"

  mysql-test/t/subselect.test@1.158, 2007-10-02 13:28:57+05:00, bar@mysql.com +1 -1
    Fixing comments to use "#" instead of "--"

ChangeSet@1.2521.25.1, 2007-10-01 15:35:42+05:00, bar@mysql.com +3 -0
  Bug#30315 Character sets: insertion of euckr code value 0xa141 fails
  
  Problem: some valid euc-kr characters were rejected because
  condition checking multi-byte tail didn't allow 
  multi-byte characters having the second byte in the ranges
  [0x41..0x5A]  and [0x61..0x7A].
  
  Fix: allow these byte ranges for mb tails

  mysql-test/r/ctype_euckr.result@1.3, 2007-10-01 15:35:41+05:00, bar@mysql.com +41 -0
    Adding tests

  mysql-test/t/ctype_euckr.test@1.2, 2007-10-01 15:35:41+05:00, bar@mysql.com +23 -0
    Adding tests

  strings/ctype-euc_kr.c@1.70, 2007-10-01 15:35:41+05:00, bar@mysql.com +23 -4
    Fixing wrong tail character pattern

ChangeSet@1.2521.2.5, 2007-09-26 21:59:17+02:00, aelkin@koti.dsl.inet.fi +1 -0
  Bug #26000 SHOW SLAVE STATUS can crash mysqld during shutdown process
  
  active_mi has been reset (shutdown) at the time of quering with 
  SHOW SLAVE STATUS so that 
  at handling of SHOW an attempt to read its members segfaults.
  
  Fixed with checking the value of active_mi before to call show_master_info()
  Merely send_ok() is invoked when active_mi does not exist.
  A test can not be easiely written.
  
  Notice, there are more analogical cases in the code which require a similar
  treatment (to be reported as a bug separately). 

  sql/sql_parse.cc@1.635.2.1, 2007-09-26 21:59:11+02:00, aelkin@koti.dsl.inet.fi +10 -1
    Ignore reporting and send only OK if master info struct has been destoyed.
    As this must be at shutdown merely a warning is sent to the client.

ChangeSet@1.2493.12.1, 2007-08-29 19:57:10+03:00, aelkin@koti.dsl.inet.fi +2 -0
  Bug #30209  	rpl_packet.test: Slave_running mismatch (timing bug?)
  
  explicit --sleep is removed in favor of wait_for_slave_io_to_stop.inc.
  The status reporting uses `SHOW SLAVE STATUS' *not* possibly buggy "SHOW STATUS LIKE 'Slave_running'".

  mysql-test/r/rpl_packet.result@1.5, 2007-08-29 19:57:07+03:00, aelkin@koti.dsl.inet.fi +34 -3
    Recording the necessary Slave_IO_Running status at the end of the bug test.
    It must be No.

  mysql-test/t/rpl_packet.test@1.6, 2007-08-29 19:57:07+03:00, aelkin@koti.dsl.inet.fi +6 -4
    Removing sleep; wait_for_slave_io_to_stop.inc instead;
    Original "SHOW STATUS LIKE 'Slave_running'" seems to be buggy (to be reported) as with the macro above
    there were evidence slave IO was stopped indeed but "SHOW STATUS" did not find that (see failures in pb)

ChangeSet@1.2493.6.3, 2007-08-22 15:43:16+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +2 -0
  bug#23333
  
  fixing the test due a to different offsets in binlog with ps-protocol (a possible bug to be reported)

  mysql-test/r/sp_trans_log.result@1.3, 2007-08-22 15:43:13+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +4 -3
    results changed as prescribed

  mysql-test/t/sp_trans_log.test@1.3, 2007-08-22 15:43:13+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +2 -1
    Replacing the reporting pattern
    
    ### a possible bug: 
    #show master status /* the offset must denote there is the query */|
    # displays different offests in ps-protocol
    
    with 
      show binlog events

ChangeSet@1.2493.6.2, 2007-08-22 10:40:38+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +2 -0
  bug#27417
  
  refining of cleanup of the tests.

  mysql-test/r/mix_innodb_myisam_binlog.result@1.35, 2007-08-22 10:40:35+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +1 -1
    results changed.

  mysql-test/t/mix_innodb_myisam_binlog.test@1.31, 2007-08-22 10:40:35+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +1 -1
    proper cleanup.

ChangeSet@1.2493.6.1, 2007-08-21 15:16:55+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +8 -0
  Bug #23333 stored function + non-transac table + transac table = breaks stmt-based binlog
  
  Binlogging of the statement with a side effect like a modified non-trans table did not happen.
  The artifact involved all binloggable dml queries.
  
  Fixed with changing the binlogging conditions all over the code to exploit thd->transaction.stmt.modified_non_trans_table
  introduced by the patch for bug@27417.
  
  Multi-delete case has own specific addressed by another bug@29136. Multi-update case has been addressed by bug#27716 and
  patch and will need merging.

  mysql-test/r/mix_innodb_myisam_binlog.result@1.34, 2007-08-21 15:16:51+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +71 -2
    results changed

  mysql-test/r/sp_trans_log.result@1.2, 2007-08-21 15:16:51+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +3 -2
    results changed

  mysql-test/t/mix_innodb_myisam_binlog.test@1.30, 2007-08-21 15:16:51+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +119 -1
    specific to the bug tests added

  mysql-test/t/sp_trans_log.test@1.2, 2007-08-21 15:16:52+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +1 -2
    refining of the proof of that there is an event in binlog

  sql/sql_delete.cc@1.200, 2007-08-21 15:16:52+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +3 -3
    deploying the binlogging check with thd->transaction.stmt.modified_non_trans_table

  sql/sql_insert.cc@1.250, 2007-08-21 15:16:52+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +39 -39
    binlogging when thd->transaction.stmt.modified_non_trans_table is TRUE. Merge with Bug#29571.

  sql/sql_load.cc@1.117, 2007-08-21 15:16:52+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +1 -1
    binlogging when thd->transaction.stmt.modified_non_trans_table is true

  sql/sql_update.cc@1.223, 2007-08-21 15:16:52+03:00, aelkin@dsl-hkibras-fe38f900-157.dhcp.inet.fi +1 -1
    binlogging when thd->transaction.stmt.modified_non_trans_table is true

ChangeSet@1.2425.30.3, 2007-04-12 09:47:45+02:00, mats@capulet.net +1 -0
  Adding build file for Solaris on AMD64

  BUILD/compile-solaris-amd64@1.1, 2007-04-12 09:47:34+02:00, mats@capulet.net +55 -0
    New BitKeeper file ``BUILD/compile-solaris-amd64''

  BUILD/compile-solaris-amd64@1.0, 2007-04-12 09:47:34+02:00, mats@capulet.net +0 -0

ChangeSet@1.2341.5.5, 2006-12-15 11:32:41+01:00, rafal@quant.(none) +1 -0
  BUG#21132 (Slave fails to reconnect on update_slave_list):
  
  The update_slave_list() call is a remainder from attempts to implement failsafe 
  replication. This code is now obsolete and not maintained (see comments in 
  rpl_failsafe.cc). 
  
  Inspecting the code one can see that this function do not interferre with normal 
  slave operation and thus can be safely removed. This will solve the issue 
  reported in the bug (errors on slave reconnection). 
  
  A related issue is to remove unneccessary reconnections done by slave. This is 
  handled in the patch for BUG#20435.

  sql/slave.cc@1.286.1.1, 2006-12-15 11:32:37+01:00, rafal@quant.(none) +1 -1
    Removed call to obsolete function update_slave_list() upon slave's I/O thread 
    reconnect.

