ChangeSet@1.2541, 2006-11-02 21:03:41-05:00, iggy@rolltop.ignatz42.dyndns.org +1 -0
  Fix compile failure.

  myisam/sort.c@1.50, 2006-11-02 21:03:39-05:00, iggy@rolltop.ignatz42.dyndns.org +2 -4
    Moved DBUG_PRINT statement to declaration section.

ChangeSet@1.2540, 2006-11-03 02:35:09+01:00, kent@suse9-x86.mysql.com +1 -0
  sort.c:
    Create block around DBUG_ENTER late in function

  myisam/sort.c@1.49, 2006-11-03 02:34:47+01:00, kent@suse9-x86.mysql.com +6 -2
    Create block around DBUG_ENTER late in function

ChangeSet@1.2522.79.1, 2006-10-30 17:47:02+03:00, kroki@moonlight.intranet +2 -0
  BUG#21915: Changing limits of table_cache when setting max_connections
  
  If the user has specified --max-connections=N or --table-open-cache=M
  options to the server, a warning could be given that some values were
  recalculated, and table-open-cache could be assigned greater value.
  
  Note that both warning and increase of table-open-cache were totally
  harmless.
  
  This patch fixes recalculation code to ensure that table-open-cache will
  be never increased automatically and that a warning will be given only if
  some values had to be decreased due to operating system limits.
  
  No test case is provided because we neither can't predict nor control
  operating system limits for maximal number of open files.

  sql/mysql_priv.h@1.380.1.2, 2006-10-30 17:46:59+03:00, kroki@moonlight.intranet +2 -0
    Add constants for table_cache minimum and default values.

  sql/mysqld.cc@1.616.1.1, 2006-10-30 17:46:59+03:00, kroki@moonlight.intranet +33 -9
    Fix max_connections and table_cache_size re-computation.

ChangeSet@1.2522.48.12, 2006-10-27 16:32:59+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - valgrind 
    Still leakage, make sure all unlinked operations are put back so they will be release
    (on failing blob operations, when AO_IgnoreError)

  ndb/src/ndbapi/NdbConnection.cpp@1.38, 2006-10-27 16:32:58+02:00, jonas@perch.ndb.mysql.com +22 -0
    Still leakage, make sure all unlinked operations are put back so they will be release

ChangeSet@1.2522.78.1, 2006-10-25 19:53:26+04:00, kroki@moonlight.intranet +3 -0
  BUG#18819: DELETE IGNORE hangs on foreign key parent delete
  
  If the error happens during DELETE IGNORE, nothing could be send to the
  client, thus leaving it frozen expecting the reply.
  
  The problem was that if some error occurred, it wouldn't be reported to
  the client because of IGNORE, but neither success would be reported.
  
  MySQL 4.1 would not freeze the client, but will report
  
    ERROR 1105 (HY000): Unknown error
  
  instead, which is also a bug.
  
  The solution is to report success if we are in DELETE IGNORE and some
  non-fatal error has happened.

  mysql-test/r/innodb_mysql.result@1.6, 2006-10-25 19:53:24+04:00, kroki@moonlight.intranet +16 -0
    Add result for bug#18819: DELETE IGNORE hangs on foreign key parent
    delete.

  mysql-test/t/innodb_mysql.test@1.6, 2006-10-25 19:53:24+04:00, kroki@moonlight.intranet +29 -0
    Add test case for bug#18819: DELETE IGNORE hangs on foreign key parent
    delete.

  sql/sql_delete.cc@1.139.1.1, 2006-10-25 19:53:24+04:00, kroki@moonlight.intranet +2 -1
    Report success if we have got an error, but we are in DELETE IGNORE, and
    the error is not fatal (if it is, it would be reported to the client).

ChangeSet@1.2522.45.5, 2006-10-25 11:44:40+02:00, mskold@mysql.com +1 -0
  Bug #21072  Duplicate key error in NDB references wrong key: Re-wrote string usage to avoid valgrind warnings

  sql/handler.cc@1.176, 2006-10-25 11:43:06+02:00, mskold@mysql.com +1 -2
    Bug #21072  Duplicate key error in NDB references wrong key: Re-wrote string usage to avoid valgrind warnings

ChangeSet@1.2522.77.1, 2006-10-25 10:37:53+02:00, knielsen@ymer.(none) +2 -0
  Fix two small problems in the source, potentially causing user-visible
  bugs.

  ndb/include/util/UtilBuffer.hpp@1.5, 2006-10-25 10:37:52+02:00, knielsen@ymer.(none) +6 -2
    Fix accessing memory after free(), if called with source and destination
    pointer the same (which should not really happen...).
    Fixes a problem in ndb_restore.

  ndb/src/common/util/SimpleProperties.cpp@1.6, 2006-10-25 10:37:52+02:00, knielsen@ymer.(none) +2 -2
    Fix typo in check of maxValue.

ChangeSet@1.2522.1.16, 2006-10-23 23:46:35+10:00, stewart@willster.(none) +2 -0
  Bug #19914  	SELECT COUNT(*) sometimes returns MAX_INT on cluster tables
  
  fixes for ndb_* tests broken by previous fix
  
  be more careful in ndb about setting errors on failure of info call (especially
  in open) 

  sql/ha_ndbcluster.cc@1.193, 2006-10-23 23:46:33+10:00, stewart@willster.(none) +35 -8
    fix some ndb* tests failing due to fix for 19914
    
    be more careful about setting errors on failure of info call

  sql/ha_ndbcluster.h@1.62, 2006-10-23 23:46:33+10:00, stewart@willster.(none) +6 -2
    fix some ndb* tests failing due to fix for 19914
    
    be more careful about setting errors on failure of info call

ChangeSet@1.2522.48.11, 2006-10-20 16:16:01+02:00, jonas@perch.ndb.mysql.com +3 -0
  ndb - bug#23499 and bug#23502
    Fix some too small buffers in backup
    

  ndb/include/kernel/ndb_limits.h@1.11, 2006-10-20 16:15:59+02:00, jonas@perch.ndb.mysql.com +2 -0
    backport for 5.1
    add MAX_WORDS_META_FILE for computing Backup::NO_OF_PAGES_META_FILE

  ndb/src/kernel/blocks/backup/Backup.cpp@1.25, 2006-10-20 16:16:00+02:00, jonas@perch.ndb.mysql.com +2 -3
    Make sure to set maxInsert so that we actually can handle NO_OF_META_PAGES

  ndb/src/kernel/blocks/backup/Backup.hpp@1.10, 2006-10-20 16:16:00+02:00, jonas@perch.ndb.mysql.com +4 -2
    backport for 5.1
    add MAX_WORDS_META_FILE for computing Backup::NO_OF_PAGES_META_FILE

ChangeSet@1.2522.48.10, 2006-10-20 13:38:15+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb -
    Fixed a 4.1/5.0 vs. 5.1 name change in latest SR bug fix

  ndb/src/kernel/blocks/dbdih/DbdihMain.cpp@1.45, 2006-10-20 13:38:13+02:00, jonas@perch.ndb.mysql.com +1 -1
    Fixed a 4.1/5.0 vs. 5.1 name change in latest SR bug fix

ChangeSet@1.2522.48.9, 2006-10-20 12:29:16+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb -
    Fix monster SR bug making SR with ordered indexes (or temporary tables) broken

  ndb/src/kernel/blocks/dbdih/DbdihMain.cpp@1.44, 2006-10-20 12:29:15+02:00, jonas@perch.ndb.mysql.com +4 -1
    Fix monster SR bug making SR with ordered indexes (or temporary tables) broken

ChangeSet@1.2522.45.4, 2006-10-19 14:57:04+02:00, mskold@mysql.com +1 -0
  Bug #21072  Duplicate key error in NDB references wrong key: use MAX_KEY to signal unknown key: Added string initialization

  sql/handler.cc@1.175, 2006-10-19 14:56:43+02:00, mskold@mysql.com +1 -0
    Bug #21072  Duplicate key error in NDB references wrong key: use MAX_KEY to signal unknown key: Added string initialization

ChangeSet@1.2522.48.8, 2006-10-18 16:48:44+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#23200
    Make sure postExecute is not run for blobs if AO_IgnoreError

  ndb/src/ndbapi/NdbConnection.cpp@1.37, 2006-10-18 16:48:43+02:00, jonas@perch.ndb.mysql.com +8 -1
    If AO_IgnoreError, error codes arent always set on individual operations, making postExecute impossible

ChangeSet@1.2528.3.1, 2006-10-18 17:57:29+05:00, svoj@mysql.com +3 -0
  BUG#23175 - MYISAM crash/repair failed during repair
  
  Repair table could crash a server if there is not sufficient
  memory (myisam_sort_buffer_size) to operate. Affects not only
  repair, but also all statements that use create index by sort:
  repair by sort, parallel repair, bulk insert.
  
  Return an error if there is not sufficient memory to store at
  least one key per BUFFPEK.
  
  Also fixed memory leak if thr_find_all_keys returns an error.

  myisam/sort.c@1.48, 2006-10-18 17:57:28+05:00, svoj@mysql.com +6 -2
    maxbuffer is number of BUFFPEK-s for repair. It is calculated
    as records / keys. keys is number of keys that can be stored
    in memory (myisam_sort_buffer_size). There must be sufficient
    memory to store both BUFFPEK-s and keys. It was checked
    correctly before this patch. However there is another
    requirement that wasn't checked: there must be sufficient
    memory for at least one key per BUFFPEK, otherwise repair
    by sort/parallel repair cannot operate.
    
    Return an error if there is not sufficient memory to store at
    least one key per BUFFPEK.
    
    Also fixed memory leak if thr_find_all_keys returns an error.

  mysql-test/r/repair.result@1.18.1.1, 2006-10-18 17:57:28+05:00, svoj@mysql.com +28 -0
    A test case for BUG#23175.

  mysql-test/t/repair.test@1.15.1.1, 2006-10-18 17:57:28+05:00, svoj@mysql.com +28 -0
    A test case for BUG#23175.

ChangeSet@1.2522.76.1, 2006-10-16 13:10:25+03:00, gkodinov@macbook.gmz +5 -0
  BUG#14019 : group by converts literal string to column name
     When resolving unqualified name references MySQL was not
     checking what is the item type for the reference. Thus
     e.g a string literal item that has by convention a name
     equal to its string value will also work as a reference to 
     a SELECT list item or a table field.
     Fixed by allowing only Item_ref or Item_field to referenced by
     (unqualified) name.

  mysql-test/r/func_gconcat.result@1.48, 2006-10-16 13:10:18+03:00, gkodinov@macbook.gmz +0 -5
    Bug #14019: group by converts literal string to column name
     - removed undeterministic testcase : order by a constant 
       means no order.

  mysql-test/r/group_by.result@1.53, 2006-10-16 13:10:18+03:00, gkodinov@macbook.gmz +45 -0
    Bug #14019: group by converts literal string to column name
     - test case

  mysql-test/t/func_gconcat.test@1.37.1.1, 2006-10-16 13:10:19+03:00, gkodinov@macbook.gmz +0 -1
    Bug #14019: group by converts literal string to column name
     - removed undeterministic testcase : order by a constant 
       means no order.

  mysql-test/t/group_by.test@1.44, 2006-10-16 13:10:19+03:00, gkodinov@macbook.gmz +23 -0
    Bug #14019: group by converts literal string to column name
     - test case

  sql/sql_base.cc@1.272.1.1, 2006-10-16 13:10:20+03:00, gkodinov@macbook.gmz +9 -2
    Bug #14019: group by converts literal string to column name
     - resolve unqualified by name refs only for real references

ChangeSet@1.2522.48.7, 2006-10-12 14:02:48+02:00, jonas@perch.ndb.mysql.com +2 -0
  ndb - bug#23210
    Fix race-condition between COPY_GCIREQ (GCP) and lcpSetActiveStatusEnd
    Solution is _not_ to copy sysfileData from COPY_GCIREQ from "self"

  ndb/src/kernel/blocks/ERROR_codes.txt@1.20, 2006-10-12 14:02:47+02:00, jonas@perch.ndb.mysql.com +3 -1
    Add error insert for dealying of copy sysfileData

  ndb/src/kernel/blocks/dbdih/DbdihMain.cpp@1.43, 2006-10-12 14:02:47+02:00, jonas@perch.ndb.mysql.com +32 -6
    1) Add error insert for delaying of sysfileData
    2) Change to that master is _not_ copying sysfileData from COPY_GCIREQ
       as it might be updating it while COPY_GCIREQ is "in the fly"

ChangeSet@1.2528.1.1, 2006-10-11 20:34:20+05:00, svoj@mysql.com +3 -0
  BUG#22562 - REPAIR TABLE .. USE_FRM causes server crash on Windows and server
              hangs on Linux
  
  If REPAIR TABLE ... USE_FRM is issued for table that is located in different
  than default database server crash could happen.
  
  In reopen_name_locked_table take database name from table_list (user specified
  or default database) instead of from thd (default database).
  
  Affects 4.1 only.

  mysql-test/r/repair.result@1.19, 2006-10-11 20:34:19+05:00, svoj@mysql.com +7 -0
    A test case for BUG#22562.

  mysql-test/t/repair.test@1.16, 2006-10-11 20:34:19+05:00, svoj@mysql.com +10 -0
    A test case for BUG#22562.

  sql/sql_base.cc@1.273, 2006-10-11 20:34:19+05:00, svoj@mysql.com +1 -1
    In reopen_name_locked_table take database name from table_list (user specified
    or default database) instead of from thd (default database).

ChangeSet@1.2522.74.1, 2006-10-11 12:24:59+02:00, istruewing@chilla.local +1 -0
  Bug#12240 - Rows Examined in Slow Log showing incorrect number?
  
  Examined rows are counted for every join part. The per-join-part
  counter was incremented over all iterations. The result variable
  was replaced at the end of every iteration. The final result was
  the number of examined rows by the join part that ended its
  execution as the last one. The numbers of other join parts was
  lost.
  
  Now we reset the per-join-part counter before every iteration and
  add it to the result variable at the end of the iteration. That
  way we get the sum of all iterations of all join parts.
  
  No test case. Testing this needs a look into the slow query log.
  I don't know of a way to do this portably with the test suite.

  sql/sql_select.cc@1.459.2.1, 2006-10-11 12:24:58+02:00, istruewing@chilla.local +18 -6
    Bug#12240 - Rows Examined in Slow Log showing incorrect number?
    Fixed reseting and accumulation of examined rows counts.

ChangeSet@1.2522.72.1, 2006-10-10 17:08:47+04:00, kroki@moonlight.intranet +5 -0
  BUG#21354: (COUNT(*) = 1) not working in SELECT inside prepared
             statement.
  
  The problem was that during statement re-execution if the result was
  empty the old result could be returned for group functions.
  
  The solution is to implement proper cleanup() method in group
  functions.

  mysql-test/r/ps.result@1.49.2.1, 2006-10-10 17:08:41+04:00, kroki@moonlight.intranet +97 -0
    Add result for bug#21354: (COUNT(*) = 1) not working in SELECT inside
    prepared statement.

  mysql-test/t/func_gconcat.test@1.38, 2006-10-10 17:08:41+04:00, kroki@moonlight.intranet +1 -1
    Add a comment that the test case is from bug#836.

  mysql-test/t/ps.test@1.51.1.1, 2006-10-10 17:08:41+04:00, kroki@moonlight.intranet +73 -1
    Add test case for bug#21354: (COUNT(*) = 1) not working in SELECT inside
    prepared statement.

  sql/item_sum.cc@1.148.1.1, 2006-10-10 17:08:41+04:00, kroki@moonlight.intranet +1 -0
    Call clear() in Item_sum_count::cleanup().

  sql/item_sum.h@1.84, 2006-10-10 17:08:41+04:00, kroki@moonlight.intranet +47 -1
    Add comments.
    Add proper cleanup() methods.
    Change Item_sum::no_rows_in_result() to call clear() instead of reset(),
    as the latter also issues add(), and there is nothing to add when there
    are no rows in result.

ChangeSet@1.2510.59.1, 2006-10-09 19:26:55+02:00, istruewing@chilla.local +10 -0
  Bug#8283 - OPTIMIZE TABLE causes data loss
  
  OPTIMIZE TABLE with myisam_repair_threads > 1 performs a non-quick 
  parallel repair. This means that it does not only rebuild all 
  indexes, but also the data file.
  
  Non-quick parallel repair works so that there is one thread per 
  index. The first of the threads rebuilds also the new data file.
  
  The problem was that all threads shared the read io cache on the
  old data file. If there were holes (deleted records) in the table,
  the first thread skipped them, writing only contiguous, non-deleted
  records to the new data file. Then it built the new index so that
  its entries pointed to the correct record positions. But the other
  threads didn't know the new record positions, but put the positions
  from the old data file into the index.
  
  The new design is so that there is a shared io cache which is filled
  by the first thread (the data file writer) with the new contiguous
  records and read by the other threads. Now they know the new record
  positions.
  
  Another problem was that for the parallel repair of compressed
  tables a common bit_buff and rec_buff was used. I changed it so
  that thread specific buffers are used for parallel repair.
  
  A similar problem existed for checksum calculation. I made this
  multi-thread safe too.

  include/my_sys.h@1.144.1.1, 2006-10-09 19:26:51+02:00, istruewing@chilla.local +14 -8
    Bug#8283 - OPTIMIZE TABLE causes data loss
    Redesign of io_cache_share.

  include/myisam.h@1.67, 2006-10-09 19:26:51+02:00, istruewing@chilla.local +1 -1
    Bug#8283 - OPTIMIZE TABLE causes data loss
    Redesign of checksum calculation in mi_check.c.
    'calc_checksum' is now in myisamdef.h:st_mi_sort_param.

  myisam/mi_check.c@1.157.1.1, 2006-10-09 19:26:52+02:00, istruewing@chilla.local +257 -49
    Bug#8283 - OPTIMIZE TABLE causes data loss
    Implemented a new parallel repair design.
    Using a synchronized shared read/write cache.
    Allowed for thread specific bit_buff, rec_buff, and calc_checksum.

  myisam/mi_open.c@1.86, 2006-10-09 19:26:52+02:00, istruewing@chilla.local +4 -1
    Bug#8283 - OPTIMIZE TABLE causes data loss
    Added DBUG output.

  myisam/mi_packrec.c@1.28.1.1, 2006-10-09 19:26:52+02:00, istruewing@chilla.local +44 -32
    Bug#8283 - OPTIMIZE TABLE causes data loss
    Allowed for thread specific bit_buff and rec_buff.

  myisam/myisamdef.h@1.82, 2006-10-09 19:26:52+02:00, istruewing@chilla.local +21 -9
    Bug#8283 - OPTIMIZE TABLE causes data loss
    Commented on checksum calculation variables.
    Allowed for thread specific bit_buff.
    Added DBUG output for better table crash detection.

  myisam/sort.c@1.45.1.1, 2006-10-09 19:26:52+02:00, istruewing@chilla.local +74 -52
    Bug#8283 - OPTIMIZE TABLE causes data loss
    Added implications of the new parallel repair design.
    Renamed 'info' -> 'sort_param'.
    Added DBUG output.

  mysql-test/r/myisam.result@1.60.2.1, 2006-10-09 19:26:52+02:00, istruewing@chilla.local +126 -0
    Bug#8283 - OPTIMIZE TABLE causes data loss
    Added test results.

  mysql-test/t/myisam.test@1.46.2.1, 2006-10-09 19:26:52+02:00, istruewing@chilla.local +93 -0
    Bug#8283 - OPTIMIZE TABLE causes data loss
    Added test cases.

  mysys/mf_iocache.c@1.49, 2006-10-09 19:26:52+02:00, istruewing@chilla.local +499 -81
    Bug#8283 - OPTIMIZE TABLE causes data loss
    Redesign of io_cache_share.
    We do now allow a writer to synchronize himself with the
    readers of a shared cache. When all threads join in the lock,
    the writer copies the data from his write buffer to the shared
    read buffer.

ChangeSet@1.2522.48.6, 2006-10-06 16:05:46+02:00, jonas@perch.ndb.mysql.com +2 -0
  ndb - bug#22893
    Add checking of REDO to earlier during SR
        so take-over of node can be performed
        if it can't be restarted using logs
        (which btw is really weird...as it _should_ be able to use logs of other node in node group)
  
    Otherwise cluster could be started and 1 fragment on one node could not have been restored
    Making the cluster inconsisten, VERY BAD

  ndb/src/kernel/blocks/dbdih/Dbdih.hpp@1.11, 2006-10-06 16:05:44+02:00, jonas@perch.ndb.mysql.com +2 -0
    Break-out methods which searches for REDO for a fragment, so it can be used earlier during SR

  ndb/src/kernel/blocks/dbdih/DbdihMain.cpp@1.42, 2006-10-06 16:05:44+02:00, jonas@perch.ndb.mysql.com +90 -71
    Add checking of REDO to earlier during SR
      so take-over of node can be performed
      if it can't be restarted using logs
      (which btw is really weird...as it _should_ be able to use logs of other node in node group)
    

ChangeSet@1.2522.71.1, 2006-10-06 15:17:42+05:00, svoj@mysql.com +1 -0
  BUG#22937 - Valgrind failure in 'merge' test (ha_myisammrg.cc:329)
  
  This is addition to fix for bug21617. Valgrind reports an error when
  opening merge table that has underlying tables with less indexes than
  in a merge table itself.
  
  Copy at most min(file->keys, table->key_parts) elements from rec_per_key array.
  This fixes problems when merge table and subtables have different number of keys.

  sql/ha_myisammrg.cc@1.62.1.1, 2006-10-06 15:17:41+05:00, svoj@mysql.com +14 -1
    Copy at most min(file->keys, table->key_parts) elements from rec_per_key array.
    This fixes problems when merge table and subtables have different number of keys.

ChangeSet@1.2522.70.3, 2006-10-06 14:47:58+05:00, svoj@mysql.com +2 -0
  Per discussion with pekka removed non-deterministic test case for bug#21381.

  mysql-test/r/ndb_update.result@1.4.1.2, 2006-10-06 14:47:57+05:00, svoj@mysql.com +0 -8
    Per discussion with pekka removed non-deterministic test case for bug#21381.

  mysql-test/t/ndb_update.test@1.7, 2006-10-06 14:47:57+05:00, svoj@mysql.com +0 -9
    Per discussion with pekka removed non-deterministic test case for bug#21381.

ChangeSet@1.2522.57.5, 2006-10-06 13:34:07+04:00, kroki@moonlight.intranet +13 -0
  BUG#21726: Incorrect result with multiple invocations of LAST_INSERT_ID.
  
  Note: bug#21726 does not directly apply to 4.1, as it doesn't have stored
  procedures.  However, 4.1 had some bugs that were fixed in 5.0 by the
  patch for bug#21726, and this patch is a backport of those fixes.
  Namely, in 4.1 it fixes:
  
    - LAST_INSERT_ID(expr) didn't return value of expr (4.1 specific).
  
    - LAST_INSERT_ID() could return the value generated by current
      statement if the call happens after the generation, like in
  
        CREATE TABLE t1 (i INT AUTO_INCREMENT PRIMARY KEY, j INT);
        INSERT INTO t1 VALUES (NULL, 0), (NULL, LAST_INSERT_ID());
  
    - Redundant binary log LAST_INSERT_ID_EVENTs could be generated.

  mysql-test/r/rpl_insert_id.result@1.14, 2006-10-06 13:34:04+04:00, kroki@moonlight.intranet +27 -0
    Add result for bug#21726: Incorrect result with multiple invocations
    of LAST_INSERT_ID.

  mysql-test/t/rpl_insert_id.test@1.14, 2006-10-06 13:34:04+04:00, kroki@moonlight.intranet +32 -0
    Add test case for bug#21726: Incorrect result with multiple invocations
    of LAST_INSERT_ID.

  sql/item_func.cc@1.262.2.1, 2006-10-06 13:34:04+04:00, kroki@moonlight.intranet +28 -3
    Add implementation of Item_func_last_insert_id::fix_fields(), where we
    set THD::last_insert_id_used when statement calls LAST_INSERT_ID().
    In Item_func_last_insert_id::val_int(), return THD::current_insert_id
    if called like LAST_INSERT_ID(), otherwise return value of argument if
    called like LAST_INSERT_ID(expr).

  sql/item_func.h@1.131.1.1, 2006-10-06 13:34:04+04:00, kroki@moonlight.intranet +1 -0
    Add declaration of Item_func_last_insert_id::fix_fields().

  sql/log_event.cc@1.188.1.1, 2006-10-06 13:34:05+04:00, kroki@moonlight.intranet +0 -1
    Do not set THD::last_insert_id_used on LAST_INSERT_ID_EVENT.  Though we
    know the statement will call LAST_INSERT_ID(), it wasn't called yet.

  sql/set_var.cc@1.186.1.1, 2006-10-06 13:34:05+04:00, kroki@moonlight.intranet +6 -2
    In sys_var_last_insert_id::value_ptr(), set THD::last_insert_id_used,
    and return THD::current_insert_id for @@LAST_INSERT_ID.

  sql/sql_class.h@1.287.2.1, 2006-10-06 13:34:05+04:00, kroki@moonlight.intranet +33 -15
    Update comments.
    Remove THD::insert_id(), as it has lost its purpose now.

  sql/sql_insert.cc@1.173, 2006-10-06 13:34:05+04:00, kroki@moonlight.intranet +3 -5
    Now it is OK to read THD::last_insert_id directly.

  sql/sql_load.cc@1.88, 2006-10-06 13:34:05+04:00, kroki@moonlight.intranet +4 -8
    Now it is OK to read THD::last_insert_id directly.

  sql/sql_parse.cc@1.489, 2006-10-06 13:34:05+04:00, kroki@moonlight.intranet +6 -0
    In mysql_execute_command(), remember THD::last_insert_id (first
    generated value of the previous statement) in THD::current_insert_id,
    which then will be returned for LAST_INSERT_ID() and @@LAST_INSERT_ID.

  sql/sql_select.cc@1.457.3.2, 2006-10-06 13:34:05+04:00, kroki@moonlight.intranet +9 -2
    If "IS NULL" is replaced with "= <LAST_INSERT_ID>", use right value,
    which is THD::current_insert_id, and also set THD::last_insert_id_used
    to issue binary log LAST_INSERT_ID_EVENT.

  sql/sql_update.cc@1.156.1.1, 2006-10-06 13:34:05+04:00, kroki@moonlight.intranet +2 -2
    Now it is OK to read THD::last_insert_id directly.

  tests/mysql_client_test.c@1.171, 2006-10-06 13:34:05+04:00, kroki@moonlight.intranet +38 -0
    Add test case for bug#21726: Incorrect result with multiple invocations
    of LAST_INSERT_ID.

ChangeSet@1.2522.70.2, 2006-10-06 10:54:47+05:00, svoj@mysql.com +2 -0
  Addition to fix for bug#10974. Fixed spelling.

  mysql-test/r/merge.result@1.43, 2006-10-06 10:54:46+05:00, svoj@mysql.com +4 -4
    Addition to fix for bug#10974. Fixed spelling.

  sql/share/english/errmsg.txt@1.153, 2006-10-06 10:54:46+05:00, svoj@mysql.com +1 -1
    Addition to fix for bug#10974. Fixed spelling.

ChangeSet@1.2522.69.1, 2006-10-05 18:23:53+05:00, svoj@mysql.com +3 -0
  BUG#21381 - Engine not notified about multi-table UPDATE IGNORE
  
  Though this is not storage engine specific problem, I was able to
  repeat this problem with BDB and NDB engines only. That was the
  reason to add a test case into ndb_update.test. As a result
  different bad things could happen.
  
  BDB has removed duplicate rows which is not expected.
  NDB returns an error.
  
  For multi table update notify storage engine about UPDATE IGNORE
  as it is done in single table UPDATE.

  mysql-test/r/ndb_update.result@1.4.1.1, 2006-10-05 18:23:51+05:00, svoj@mysql.com +8 -0
    A test case for bug#21381.

  mysql-test/t/ndb_update.test@1.6, 2006-10-05 18:23:51+05:00, svoj@mysql.com +9 -0
    A test case for bug#21381.

  sql/sql_update.cc@1.157, 2006-10-05 18:23:51+05:00, svoj@mysql.com +6 -0
    For multi table update notify storage engine about UPDATE IGNORE
    as it is done in single table UPDATE.

ChangeSet@1.2522.48.5, 2006-10-04 12:05:24+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#22892
      Make sure checkKeepGci is also run on oldStoredReplicas
        to prevent keepgci to move backwards when crash node restarts

  ndb/src/kernel/blocks/dbdih/DbdihMain.cpp@1.41, 2006-10-04 12:05:23+02:00, jonas@perch.ndb.mysql.com +1 -0
    Make sure checkKeepGci is also run on oldStoredReplicas
      to prevent keepgci to move backwards when crash node restarts

ChangeSet@1.2522.53.15, 2006-10-03 00:48:26+02:00, msvensson@shellback.(none) +2 -0
  Add ATTRIBUTE_FORMAT_FPTR macro for setting format specifier also on function pointers
  This was available from gcc 3.1, so diable it before that
  Update m_ctype.h to use the new macro

  include/m_ctype.h@1.107.1.2, 2006-10-03 00:48:23+02:00, msvensson@shellback.(none) +1 -1
    Use macro ATTRIBUTE_FORMAT_FPTR on function pointer

  include/my_global.h@1.110, 2006-10-03 00:48:23+02:00, msvensson@shellback.(none) +13 -3
    Add ATTRIBUTE_FORMAT_FPTR macro for setting format specifier also on function pointers
    This was available from gcc 3.1, so diable it before that

ChangeSet@1.2522.53.14, 2006-10-02 14:05:36+02:00, msvensson@neptunus.(none) +1 -0
  Remove faulty merge 

  mysql-test/r/ctype_utf8.result@1.72.1.5, 2006-10-02 14:05:35+02:00, msvensson@neptunus.(none) +0 -1
    Remove faulty merge 

ChangeSet@1.2522.53.13, 2006-10-02 13:53:10+02:00, msvensson@neptunus.(none) +1 -0
  When compiling with qcc on QNC the define __GNUC__will be set although it doesn't support full GNU syntax
   - disable __attribute__ when using qcc

  include/my_global.h@1.109, 2006-10-02 13:53:06+02:00, msvensson@neptunus.(none) +3 -0
    Disable __attribute__ when compiling with qcc

ChangeSet@1.2522.53.12, 2006-10-02 13:47:18+02:00, msvensson@neptunus.(none) +2 -0
  Remove faulty merge causing ctype_utf8 failure

  mysql-test/r/ctype_utf8.result@1.72.1.4, 2006-10-02 13:47:15+02:00, msvensson@neptunus.(none) +0 -12
    Remove faulty merge causing ctype_utf8 failure

  mysql-test/t/ctype_utf8.test@1.74.1.4, 2006-10-02 13:47:15+02:00, msvensson@neptunus.(none) +0 -17
    Remove faulty merge causing ctype_utf8 failure

ChangeSet@1.2522.53.11, 2006-10-02 13:46:40+02:00, msvensson@neptunus.(none) +1 -0
  Fix __attribute__(A) macro (it formerly used bogus __cplusplus__ symbol)

  include/my_global.h@1.108, 2006-10-02 13:46:38+02:00, msvensson@neptunus.(none) +1 -1
    Fix __attribute__(A) macro (it formerly used bogus __cplusplus__ symbol)

ChangeSet@1.2522.14.5, 2006-09-29 19:28:16-07:00, jimw@rama.(none) +1 -0
  Disable __attribute__ entirely on g++ < 3.4. (Bug #2717)

  include/my_global.h@1.105.1.1, 2006-09-29 19:27:38-07:00, jimw@rama.(none) +15 -10
    Disable __attribute__ on g++ < 3.4. There are actually some forms of it that
    are supported, but rather than create more ATTRIBUTE_<foo> macros to handle
    them, it is easier to just disable them all. We will catch the compiler warnings
    with more recent versions of g++.
    

ChangeSet@1.2522.60.2, 2006-09-29 20:02:53+04:00, evgen@moonbone.local +3 -0
  Fixed bug#20825: rollup puts non-equal values together
  
  Fix for bug 7894 replaces a field(s) in a non-aggregate function with a item
  reference if such a field was specified in the GROUP BY clause in order to
  get a correct result.
  When ROLLUP is involved this lead to a wrong result due to value of a such
  field is got through a copy function and copying happens after the function
  evaluation.
  Such replacement isn't needed if grouping is also done by such a function.
  
  The change_group_ref() function now isn't called for a function present in
  the group list.

  mysql-test/r/olap.result@1.23, 2006-09-29 20:02:29+04:00, evgen@moonbone.local +15 -0
    Added the test case for the bug#20825:  rollup puts non-equal values together

  mysql-test/t/olap.test@1.20, 2006-09-29 20:02:28+04:00, evgen@moonbone.local +9 -0
    Added the test case for the bug#20825:  rollup puts non-equal values together

  sql/sql_select.cc@1.460, 2006-09-29 20:02:30+04:00, evgen@moonbone.local +6 -1
    Fixed bug#20825: rollup puts non-equal values together
    The change_group_ref() function now isn't called for a function present in
    the group list.

ChangeSet@1.2522.18.20, 2006-09-29 19:00:52+05:00, svoj@mysql.com +2 -0
  Fix a test case according to fix for bug#10974.

  mysql-test/r/lowercase_table3.result@1.7, 2006-09-29 19:00:51+05:00, svoj@mysql.com +1 -1
    Fix a test case according to fix for bug#10974.

  mysql-test/t/lowercase_table3.test@1.9, 2006-09-29 19:00:51+05:00, svoj@mysql.com +1 -1
    Fix a test case according to fix for bug#10974.

ChangeSet@1.2522.58.2, 2006-09-29 17:56:02+05:00, holyfoot@mysql.com +3 -0
  bug #21888 (Query on GEOMETRY field crashes the server)
  
  RTree keys are really different from BTree and need specific
  paramters to be set by optimizer to work.
  Sometimes optimizer doesn't set those properly.
  Here we decided just to add code to check that the parameters
  are correct. Hope to fix optimizer sometimes.

  myisam/mi_range.c@1.13, 2006-09-29 17:56:00+05:00, holyfoot@mysql.com +15 -0
    return the error if min_key is NULL

  mysql-test/r/gis-rtree.result@1.14, 2006-09-29 17:56:00+05:00, holyfoot@mysql.com +11 -0
    test result

  mysql-test/t/gis-rtree.test@1.14, 2006-09-29 17:56:00+05:00, holyfoot@mysql.com +10 -0
    test case

ChangeSet@1.2522.57.4, 2006-09-28 23:47:49+04:00, dlenev@mockturtle.local +1 -0
  Fix for bug#22338 "Valgrind warning: uninitialized variable in
  create_tmp_table()".
  
  The fix for bug 21787 "COUNT(*) + ORDER BY + LIMIT returns wrong
  result" introduced valgrind warnings which occured during execution
  of information_schema.test and sp-prelocking.test in version 5.0.
  There were no user visible effects.
  
  The latter fix made create_tmp_table() dependant on
  THD::lex::current_select value. Valgrind warnings occured when this
  function was executed and THD::lex::current_select member pointed
  to uninitialized SELECT_LEX instance.
  
  This fix tries to remove this dependancy by moving some logic
  outside of create_tmp_table() function.

  sql/sql_select.cc@1.457.3.1, 2006-09-28 23:47:48+04:00, dlenev@mockturtle.local +24 -19
    create_tmp_table():
      Moved code which is responsible for determining if optimization
      which pushes down LIMIT clause to temporary table creation is
      applicable out of this function.
      Such move made this function independant of THD::lex::current_select
      value and removed valgrind warnings which occured in cases when this
      member pointed to uninitialized SELECT_LEX object (particularly these
      warnings occured in sp-prelocking.test and information_schema.test
      in 5.0). This seems like a better solution than trying to force this
      pointer always to point to relevant select because:
      - In some cases when we use create_tmp_table() there are no relevant
        SELECT_LEX object (we use it just to create temporary table/object).
      - There is only one place in code where we call this funciton and
        where this optimization can be enabled. And in this place we
        already have some logic which tries to determine if it is applicable.

ChangeSet@1.2510.56.6, 2006-09-28 14:30:20-04:00, iggy@rolltop.ignatz42.dyndns.org +3 -0
  Bug#20305: PROCEDURE ANALYSE() returns wrong M for FLOAT(M, D) and DOUBLE(M, D)

  mysql-test/r/analyse.result@1.19, 2006-09-28 14:30:18-04:00, iggy@rolltop.ignatz42.dyndns.org +13 -0
    Added Results

  mysql-test/t/analyse.test@1.16, 2006-09-28 14:30:19-04:00, iggy@rolltop.ignatz42.dyndns.org +13 -1
    Added test cases to make sure field_str and field_real return correctly.

  sql/sql_analyse.cc@1.55, 2006-09-28 14:30:19-04:00, iggy@rolltop.ignatz42.dyndns.org +4 -4
    According the manaul, when declaring a FLOAT(M, N), N equals the number of decimal places and M equals the total number of
    digits in the number.

ChangeSet@1.2522.61.1, 2006-09-28 22:10:06+05:00, svoj@mysql.com +5 -0
  BUG#21617 - crash when selecting from merge table with inconsistent indexes
  
  Crash may happen when selecting from a merge table that has underlying
  tables with less indexes than in a merge table itself.
  
  If number of keys in merge table is not bigger than requested key number,
  return error.

  myisammrg/myrg_open.c@1.30.1.1, 2006-09-28 22:10:05+05:00, svoj@mysql.com +5 -2
    Store min(number of keys) in m_info instead of number of keys in last
    underlying table.

  myisammrg/myrg_queue.c@1.12, 2006-09-28 22:10:05+05:00, svoj@mysql.com +2 -0
    Return error if inx passed to _myrg_init_queue function is not less
    than number of keys.

  mysql-test/r/merge.result@1.40.1.1, 2006-09-28 22:10:05+05:00, svoj@mysql.com +6 -0
    A test case for bug#21617.

  mysql-test/t/merge.test@1.38.1.1, 2006-09-28 22:10:05+05:00, svoj@mysql.com +11 -0
    A test case for bug#21617.

  mysys/queues.c@1.16, 2006-09-28 22:10:05+05:00, svoj@mysql.com +19 -29
    Replaced annoying ifndef DBUG_OFF with DBUG_ASSERT, fixed coding style.
    The problem was that having queue overrun in debug build was hidden
    with this ifdef.

ChangeSet@1.2522.1.14, 2006-09-28 23:41:37+10:00, stewart@willster.(none) +10 -0
  BUG#19914 SELECT COUNT(*) sometimes returns MAX_INT on cluster tables
  
  post-review fixes as indicated by Serg.
  
  manual testing of error cases done in 5.0 due to support for DBUG_EXECUTE_IF
  to insert errors.
  Unable to write test case for mysql-test until 5.1 due to support for setting
  debug options at runtime.

  sql/ha_blackhole.cc@1.13, 2006-09-28 23:41:33+10:00, stewart@willster.(none) +2 -2
    update for handler::info() now returning int

  sql/ha_blackhole.h@1.5, 2006-09-28 23:41:33+10:00, stewart@willster.(none) +1 -1
    update for handler::info() now returning int

  sql/ha_isam.cc@1.35, 2006-09-28 23:41:33+10:00, stewart@willster.(none) +2 -1
    update for handler::info() now returning int

  sql/ha_isam.h@1.30, 2006-09-28 23:41:33+10:00, stewart@willster.(none) +1 -1
    update for handler::info() now returning int

  sql/ha_isammrg.cc@1.21, 2006-09-28 23:41:33+10:00, stewart@willster.(none) +2 -1
    update for handler::info() now returning int

  sql/ha_isammrg.h@1.24, 2006-09-28 23:41:33+10:00, stewart@willster.(none) +1 -1
    update for handler::info() now returning int

  sql/item_sum.cc@1.149, 2006-09-28 23:41:33+10:00, stewart@willster.(none) +9 -1
    update for handler::info() now returning int.
    
    return error to user if info call fails

  sql/sql_delete.cc@1.140, 2006-09-28 23:41:33+10:00, stewart@willster.(none) +6 -1
    update for handler::info() now returning int.
    
    return error to user if info call fails

  sql/sql_select.cc@1.457.1.4, 2006-09-28 23:41:33+10:00, stewart@willster.(none) +6 -1
    update for handler::info() now returning int.
    
    return error to user if info call fails

  sql/sql_union.cc@1.146, 2006-09-28 23:41:34+10:00, stewart@willster.(none) +6 -1
    update for handler::info() now returning int.
    
    return error to user if info call fails

ChangeSet@1.1346.884.1, 2006-09-28 11:41:38+02:00, istruewing@chilla.local +1 -0
  Bug#22384 - DELETE FROM table causes "Incorrect key file for table"
  
  Deletes on a big index could crash the index when it needs to
  shrink.
  
  Put a forgotten negation operator in.
  
  No test case. It is too big for the test suite. And it does not
  work with 4.0, only with higher versions. It is attached to the
  bug report.

  myisam/mi_delete.c@1.14.1.1, 2006-09-28 11:41:37+02:00, istruewing@chilla.local +1 -1
    Bug#22384 - DELETE FROM table causes "Incorrect key file for table"
    Put a negation operator ('!') before _mi_get_last_key() in del().
    It returns NULL on error, non-NULL on success.

ChangeSet@1.2522.57.2, 2006-09-27 17:49:16+05:00, gluh@mysql.com +7 -0
  Patch for bug#21432 is reverted

  include/mysql_com.h@1.109, 2006-09-27 17:49:12+05:00, gluh@mysql.com +0 -3
    Patch for bug#21432 is reverted

  mysql-test/r/ctype_utf8.result@1.72.2.1, 2006-09-27 17:49:12+05:00, gluh@mysql.com +0 -12
    Patch for bug#21432 is reverted

  mysql-test/t/ctype_utf8.test@1.74.2.1, 2006-09-27 17:49:12+05:00, gluh@mysql.com +0 -16
    Patch for bug#21432 is reverted

  sql-common/client.c@1.93, 2006-09-27 17:49:13+05:00, gluh@mysql.com +3 -3
    Patch for bug#21432 is reverted

  sql/sql_acl.cc@1.180, 2006-09-27 17:49:13+05:00, gluh@mysql.com +1 -5
    Patch for bug#21432 is reverted

  sql/sql_parse.cc@1.488, 2006-09-27 17:49:13+05:00, gluh@mysql.com +2 -2
    Patch for bug#21432 is reverted

  sql/table.cc@1.137.2.1, 2006-09-27 17:49:13+05:00, gluh@mysql.com +2 -4
    Patch for bug#21432 is reverted

ChangeSet@1.2522.56.3, 2006-09-27 11:55:30+02:00, istruewing@chilla.local +1 -0
  Bug#20719 - Reading dynamic records with write buffer could fail
  After merge fix.

  myisam/mi_dynrec.c@1.40, 2006-09-27 11:55:28+02:00, istruewing@chilla.local +0 -3
    Bug#20719 - Reading dynamic records with write buffer could fail
    After merge fix.

ChangeSet@1.2522.48.4, 2006-09-26 15:20:10+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#15303
    Fix take-over during SR, remove coupling to lcp/gcp (if systemRestartOngoing())

  ndb/src/kernel/blocks/dbdih/DbdihMain.cpp@1.40, 2006-09-26 15:20:09+02:00, jonas@perch.ndb.mysql.com +30 -7
    Fix take-over during SR

ChangeSet@1.2522.48.3, 2006-09-26 15:04:44+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#22672
    handle also CS_CONNECTED as "abort" in handleFailedApi to keep from falling on assertion in releaseApiCon
      in case of committed dirtyRead

  ndb/src/kernel/blocks/dbtc/DbtcMain.cpp@1.69, 2006-09-26 15:04:43+02:00, jonas@perch.ndb.mysql.com +0 -7
    handle also CS_CONNECTED as "abort" to keep from falling on assertion in releaseApiCon
      in case of committed dirtyRead

ChangeSet@1.2522.48.2, 2006-09-26 13:19:00+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#20895
    Fix occational LCP hang!!!
    Make sure only to consider alive nodes in startNextChkpt

  ndb/src/kernel/blocks/dbdih/DbdihMain.cpp@1.39, 2006-09-26 13:18:59+02:00, jonas@perch.ndb.mysql.com +71 -60
    Make sure only to consider alive nodes in startNextChkpt

ChangeSet@1.2522.59.1, 2006-09-26 11:03:11+08:00, dli@dev3-76.dev.cn.tlan +4 -0
  fix for bug#19651, if temporary error occured while retoring, report it in the restore result.

  ndb/tools/restore/consumer.hpp@1.6, 2006-09-26 11:03:10+08:00, dli@dev3-76.dev.cn.tlan +1 -0
    added a function to judge whether there is temporary error.

  ndb/tools/restore/consumer_restore.cpp@1.14, 2006-09-26 11:03:10+08:00, dli@dev3-76.dev.cn.tlan +6 -0
    record when temporary error occured in restore.

  ndb/tools/restore/consumer_restore.hpp@1.8, 2006-09-26 11:03:10+08:00, dli@dev3-76.dev.cn.tlan +3 -0
    added a member to record temporary error in restore.

  ndb/tools/restore/restore_main.cpp@1.29, 2006-09-26 11:03:10+08:00, dli@dev3-76.dev.cn.tlan +11 -0
    report temporary error in restore.

ChangeSet@1.2510.58.1, 2006-09-25 20:01:39+02:00, msvensson@neptunus.(none) +1 -0
  Bug#18888 Trying to overwrite sql/lex_hash.h during build
   -Backport fix for bug19738 to 4.1 

  sql/Makefile.am@1.117, 2006-09-25 20:01:37+02:00, msvensson@neptunus.(none) +6 -2
    Generated source should depend on their sources not the tool

ChangeSet@1.2522.58.1, 2006-09-25 05:24:07-07:00, igor@rurik.mysql.com +3 -0
  Fixed bug #21853: assert failure for a grouping query with
  an ALL/ANY quantified subquery in HAVING.
  The Item::split_sum_func2 method should not create Item_ref
  for objects of any class derived from Item_subselect.

  mysql-test/r/subselect.result@1.183, 2006-09-25 05:24:04-07:00, igor@rurik.mysql.com +36 -0
    Added a test case for bug #21853.

  mysql-test/t/subselect.test@1.160, 2006-09-25 05:24:04-07:00, igor@rurik.mysql.com +37 -0
    Added a test case for bug #21853.

  sql/item.cc@1.233, 2006-09-25 05:24:04-07:00, igor@rurik.mysql.com +1 -0
    Fixed bug #21853: assert failure for a grouping query with
    an ALL/ANY quantified subquery in HAVING.
    The Item::split_sum_func2 method should not create Item_ref
    for objects of any class derived from Item_subselect.

ChangeSet@1.2522.57.1, 2006-09-25 00:54:46+02:00, kent@mysql.com +1 -0
  mysql_config.sh:
    Filter out plain -O and Sun C/C++ style optimization flags, -xO<level>
    Filter out icc specific options from cflags/libs(_r)

  scripts/mysql_config.sh@1.25, 2006-09-25 00:52:56+02:00, kent@mysql.com +1 -1
    Filter out plain -O and Sun C/C++ style optimization flags, -xO<level>

  scripts/mysql_config.sh@1.24, 2006-09-25 00:46:34+02:00, kent@mysql.com +7 -6
    Filter out icc specific options from cflags/libs(_r)

ChangeSet@1.2510.57.2, 2006-09-22 19:23:58+04:00, kaa@polly.local +3 -0
  Fixed bug #22129: A small double precision number becomes zero
  Better checks for underflow/overflow

  mysql-test/r/type_float.result@1.36, 2006-09-22 19:23:57+04:00, kaa@polly.local +7 -0
    Added testcase for bug #22129

  mysql-test/t/type_float.test@1.22, 2006-09-22 19:23:57+04:00, kaa@polly.local +10 -1
    Added testcase for bug #22129

  strings/strtod.c@1.17.1.1, 2006-09-22 19:23:57+04:00, kaa@polly.local +44 -25
    Fixed bug #22129: A small double precision number becomes zero
    Better checks for underflow/overflow

ChangeSet@1.1346.883.2, 2006-09-22 17:23:25+02:00, istruewing@chilla.local +1 -0
  Bug#14400 - Query joins wrong rows from table which is subject of
              "concurrent insert"
  After merge fix.

  myisam/mi_rkey.c@1.11.1.7, 2006-09-22 17:23:24+02:00, istruewing@chilla.local +1 -0
    Bug#14400 - Query joins wrong rows from table which is subject of
                "concurrent insert"
    After merge fix.

ChangeSet@1.2522.45.3, 2006-09-21 16:54:54+02:00, mskold@mysql.com +1 -0
  Bug #21072  Duplicate key error in NDB references wrong key: wrong indent for code block

  sql/handler.cc@1.174, 2006-09-21 16:54:46+02:00, mskold@mysql.com +2 -2
    Bug #21072  Duplicate key error in NDB references wrong key: wrong indent for code block

ChangeSet@1.2522.45.2, 2006-09-21 16:49:07+02:00, mskold@mysql.com +5 -0
  Bug #21072  Duplicate key error in NDB references wrong key: use MAX_KEY to signal unknown key

  mysql-test/r/ndb_charset.result@1.5, 2006-09-21 16:48:31+02:00, mskold@mysql.com +2 -2
    Bug #21072  Duplicate key error in NDB references wrong key: use MAX_KEY to signal unknown key

  mysql-test/r/ndb_index_unique.result@1.13, 2006-09-21 16:48:31+02:00, mskold@mysql.com +5 -5
    Bug #21072  Duplicate key error in NDB references wrong key: use MAX_KEY to signal unknown key

  mysql-test/r/ndb_update.result@1.5, 2006-09-21 16:48:32+02:00, mskold@mysql.com +1 -1
    Bug #21072  Duplicate key error in NDB references wrong key: use MAX_KEY to signal unknown key

  sql/ha_ndbcluster.cc@1.190.1.4, 2006-09-21 16:48:31+02:00, mskold@mysql.com +8 -1
    Bug #21072  Duplicate key error in NDB references wrong key: use MAX_KEY to signal unknown key

  sql/handler.cc@1.173, 2006-09-21 16:48:31+02:00, mskold@mysql.com +15 -5
    Bug #21072  Duplicate key error in NDB references wrong key: use MAX_KEY to signal unknown key

ChangeSet@1.2522.54.3, 2006-09-21 13:19:52+02:00, lars@mysql.com +2 -0
  Adding proper setup phase for test case rpl_insert_id

  mysql-test/r/rpl_insert_id.result@1.13, 2006-09-21 13:19:50+02:00, lars@mysql.com +24 -0
    Updated result file

  mysql-test/t/rpl_insert_id.test@1.13, 2006-09-21 13:19:50+02:00, lars@mysql.com +31 -13
    Adding proper setup phase for test case rpl_insert_id

ChangeSet@1.2522.55.2, 2006-09-21 16:05:01+05:00, ramil@mysql.com +3 -0
  Fix for bug #20204: "order by" changes the results returned
  
  Item_substr's results are improperly stored in a temporary table due to       
  wrongly calculated max_length value for multi-byte charsets if two            
  arguments specified.                                                          

  mysql-test/r/ctype_utf8.result@1.72.1.1, 2006-09-21 16:04:58+05:00, ramil@mysql.com +13 -0
    Fix for bug #20204: "order by" changes the results returned
      - test case.

  mysql-test/t/ctype_utf8.test@1.74.1.1, 2006-09-21 16:04:58+05:00, ramil@mysql.com +12 -0
    Fix for bug #20204: "order by" changes the results returned
      - test result.

  sql/item_strfunc.cc@1.251, 2006-09-21 16:04:58+05:00, ramil@mysql.com +2 -1
    Fix for bug #20204: "order by" changes the results returned
      - always take into account current mbmaxlen value calculating max_length.

ChangeSet@1.2522.54.2, 2006-09-21 03:32:42+02:00, lars@mysql.com +2 -0
  Vertical printout in test to make easier to read

  mysql-test/r/rpl_max_relay_size.result@1.14, 2006-09-21 03:32:36+02:00, lars@mysql.com +225 -18
    Vertical printout in test to make easier to read

  mysql-test/t/rpl_max_relay_size.test@1.13, 2006-09-21 03:32:36+02:00, lars@mysql.com +38 -3
    Vertical printout in test to make easier to read

ChangeSet@1.2522.28.28, 2006-09-20 09:46:12-07:00, igor@rurik.mysql.com +4 -0
  Fixed bug #20108.
  Any default value for a enum fields over UCS2 charsets was corrupted
  when we put it into the frm file, as it had been overwritten by its
  HEX representation.
  To fix it now we save a copy of structure that represents the enum
  type and when putting the default values we use this copy. 

  mysql-test/r/ctype_ucs.result@1.34, 2006-09-20 09:46:10-07:00, igor@rurik.mysql.com +21 -0
    Added a test case for bug #20108.

  mysql-test/t/ctype_ucs.test@1.34, 2006-09-20 09:46:10-07:00, igor@rurik.mysql.com +21 -0
    Added a test case for bug #20108.

  sql/field.h@1.133, 2006-09-20 09:46:10-07:00, igor@rurik.mysql.com +2 -0
    Fixed bug #20108.
    Any default value for a enum fields over UCS2 charsets was corrupted
    when we put it into the frm file, as it had been overwritten by its
    HEX representation.
    To fix it now we save a copy of structure that represents the enum
    type and when putting the default values we use this copy. 

  sql/unireg.cc@1.49.1.1, 2006-09-20 09:46:10-07:00, igor@rurik.mysql.com +32 -7
    Fixed bug #20108.
    Any default value for a enum fields over UCS2 charsets was corrupted
    when we put it into the frm file, as it had been overwritten by its
    HEX representation.
    To fix it now we save a copy of structure that represents the enum
    type and when putting the default values we use this copy. 

ChangeSet@1.2522.18.16, 2006-09-20 01:40:59+05:00, svoj@mysql.com +6 -0
  BUG#10974 - No error message if merge table based on union of innodb, memory
  
  Fixed confusing error message from the storage engine when
  it fails to open underlying table. The error message is issued
  when a table is _opened_ (not when it is created).

  myisammrg/myrg_open.c@1.31, 2006-09-20 01:40:58+05:00, svoj@mysql.com +3 -0
    Set my_errno to HA_ERR_WRONG_MRG_TABLE_DEF if attempt to open
    underlying table failed.

  mysql-test/r/merge.result@1.41, 2006-09-20 01:40:58+05:00, svoj@mysql.com +11 -2
    A test case for bug#10974.

  mysql-test/r/repair.result@1.18, 2006-09-20 01:40:58+05:00, svoj@mysql.com +1 -1
    Fixed a test case according to patch for bug#10974.

  mysql-test/t/merge.test@1.39, 2006-09-20 01:40:58+05:00, svoj@mysql.com +16 -2
    A test case for bug#10974.

  sql/share/english/errmsg.txt@1.152, 2006-09-20 01:40:58+05:00, svoj@mysql.com +1 -1
    Better error message if we fail to open underlying table.

  sql/table.cc@1.137.1.1, 2006-09-20 01:40:58+05:00, svoj@mysql.com +8 -1
    Report error from handler with print_error instead of frm_error. This
    fixes confusing error message from the handler. Actually this is
    backported from 5.0.

ChangeSet@1.2510.57.1, 2006-09-19 12:40:31+02:00, thek@kpdesk.mysql.com +1 -0
  Bug#21139 Handling of database differs in "embedded" , test lowercase_fs_off fails
  - Access checks are omitted when compliled without --with-embedded-privilege-control
  - Patch: skip this test

  mysql-test/t/lowercase_fs_off.test@1.2, 2006-09-19 12:40:30+02:00, thek@kpdesk.mysql.com +1 -0
    Added test to check if this embedded built in which case we just skip this test.

ChangeSet@1.2522.34.3, 2006-09-19 11:15:50+08:00, gni@dev3-127.(none) +3 -0
  BUG#21585  The --help option shows a screen of command options for the ndbd,ndb_mgmd, ndb_mgm 
             and other commands related to ndb. For all of these, the help screen contains 
            "Ndb.cfg" string. Now i change the "Ndb.cfg" to "my.cnf" because "Ndb.cfg" is obsolete.

  ndb/include/util/ndb_opts.h@1.8, 2006-09-19 11:15:48+08:00, gni@dev3-127.(none) +1 -1
    Change help info from Ndb.cfg to my.cnf in the header file.

  ndb/test/ndbapi/flexScan.cpp@1.10, 2006-09-19 11:15:48+08:00, gni@dev3-127.(none) +2 -2
    Change help info from Ndb.cfg to my.cnf.

  ndb/tools/ndb_config.cpp@1.9, 2006-09-19 11:15:48+08:00, gni@dev3-127.(none) +1 -1
    Change help info from Ndb.cfg to my.cnf

ChangeSet@1.1346.881.1, 2006-09-18 22:02:06+04:00, kroki@moonlight.intranet +4 -0
  BUG#9678: Client library hangs after network communication failure
            (back-port to 4.0)
  
  Socket timeouts in client library were used only on Windows.
  Additionally, in 4.0 write operations erroneously set read timeout.
  
  The solution is to use socket timeouts in client library on all
  systems were they are supported, and to differentiate between read
  and write timeouts.
  
  No test case is provided because it is impossible to simulate network
  failure in current test suite.

  libmysqld/lib_vio.c@1.11.3.1, 2006-09-18 22:02:04+04:00, kroki@moonlight.intranet +1 -0
    Add argument to vio_timeout() to determine which timeout should be set:
    for read (false) or for write (true).

  include/violite.h@1.21.3.8, 2006-09-18 22:02:04+04:00, kroki@moonlight.intranet +3 -3
    Add argument to vio_timeout() to determine which timeout should be set:
    for read (false) or for write (true).

  sql/net_serv.cc@1.46.1.19, 2006-09-18 22:02:04+04:00, kroki@moonlight.intranet +2 -2
    Add argument to vio_timeout() to determine which timeout should be set:
    for read (false) or for write (true).

  vio/viosocket.c@1.15.1.8, 2006-09-18 22:02:04+04:00, kroki@moonlight.intranet +20 -6
    Add argument to vio_timeout() to determine which timeout should be set:
    for read (false) or for write (true).
    Implement socket timeouts on POSIX systems.

ChangeSet@1.2522.50.1, 2006-09-16 11:50:00-07:00, igor@rurik.mysql.com +3 -0
  Fixed bug #22085: Crash on the execution of a prepared 
  statement that uses an aggregating IN subquery with 
  HAVING clause.
  A wrong order of the call of split_sum_func2 for the HAVING
  clause of the subquery and the transformation for the 
  subquery resulted in the creation of a andor structure
  that could not be restored at an execution of the prepared
  statement.

  mysql-test/r/ps.result@1.49.1.2, 2006-09-16 11:49:58-07:00, igor@rurik.mysql.com +47 -0
    Added a test cases for bug #22085.

  mysql-test/t/ps.test@1.52, 2006-09-16 11:49:58-07:00, igor@rurik.mysql.com +52 -0
    Added a test cases for bug #22085.

  sql/sql_select.cc@1.458, 2006-09-16 11:49:58-07:00, igor@rurik.mysql.com +3 -2
    Fixed bug #22085: Crash on the execution of a prepared 
    statement that uses an aggregating IN subquery with 
    HAVING clause.
    A wrong order of the call of split_sum_func2 for the HAVING
    clause of the subquery and the transformation for the 
    subquery resulted in the creation of a andor structure
    that could not be restored at an execution of the prepared
    statement.

ChangeSet@1.2522.34.2, 2006-09-15 20:04:59+08:00, gni@dev3-127.(none) +1 -0
  BUG#21530 The ndb_mgm management client doesn't set the exit status on errors, making it 
            almost useless for any kind of shell script automation.
            Now add the return value that indicates the execution whether or not success 
            for many methods.

  ndb/src/mgmclient/CommandInterpreter.cpp@1.52, 2006-09-15 20:04:58+08:00, gni@dev3-127.(none) +194 -122
    Many methods add the return value that indicates whether the execution of operatioin succeeds.
    This can make ndb_mgm management client set the exit status on errors.

ChangeSet@1.2522.48.1, 2006-09-15 11:34:06+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#21756
    Fix for alter table when node is down...that could cause pain and misery

  ndb/src/kernel/blocks/dbdict/Dbdict.cpp@1.46, 2006-09-15 11:34:05+02:00, jonas@perch.ndb.mysql.com +2 -1
    Make sure to check table version before retriving from disk

ChangeSet@1.2510.51.3, 2006-09-14 16:55:57+02:00, istruewing@chilla.local +1 -0
  Bug#14400 - Query joins wrong rows from table which is subject of
              "concurrent insert"
  After merge fix.

  myisam/mi_rkey.c@1.18.1.3, 2006-09-14 16:55:56+02:00, istruewing@chilla.local +2 -2
    Bug#14400 - Query joins wrong rows from table which is subject of
                "concurrent insert"
    After merge fix.

ChangeSet@1.2522.41.3, 2006-09-14 18:45:23+04:00, evgen@moonbone.local +2 -0
  type_date.test, type_date.result:
    Added the test case for bug#21677: Wrong result when comparing a DATE and a DATETIME in BETWEEN

  mysql-test/r/type_date.result@1.14, 2006-09-14 18:45:04+04:00, evgen@moonbone.local +6 -0
    Added the test case for bug#21677: Wrong result when comparing a DATE and a DATETIME in BETWEEN

  mysql-test/t/type_date.test@1.13, 2006-09-14 18:44:24+04:00, evgen@moonbone.local +7 -0
    Added the test case for bug#21677: Wrong result when comparing a DATE and a DATETIME in BETWEEN

ChangeSet@1.2525, 2006-09-14 10:05:07+05:00, bar@mysql.com +2 -0
  Better comment text (thanks to SergeyP for suggestions made for the b#20471 patch)

  include/m_ctype.h@1.109, 2006-09-14 10:05:02+05:00, bar@mysql.com +1 -1
    Better comment text (thanks to SergeyP for suggestions made for the b#20471 patch)

  strings/ctype-mb.c@1.44, 2006-09-14 10:05:02+05:00, bar@mysql.com +14 -7
    Better comment text (thanks to SergeyP for suggestions made for the b#20471 patch)

ChangeSet@1.2522.44.3, 2006-09-13 19:56:02+02:00, mskold@mysql.com +1 -0
  Bug #21378  Alter table from X storage engine to NDB could cause data loss: updated results

  mysql-test/r/ndb_multi.result@1.6, 2006-09-13 19:55:37+02:00, mskold@mysql.com +1 -1
    Bug #21378  Alter table from X storage engine to NDB could cause data loss: updated results

ChangeSet@1.2522.44.2, 2006-09-13 18:49:05+02:00, mskold@mysql.com +1 -0
  Bug #21378  Alter table from X storage engine to NDB could cause data loss: skip autodiscover of local tables

  sql/ha_ndbcluster.cc@1.190.1.3, 2006-09-13 18:48:22+02:00, mskold@mysql.com +7 -1
    Bug #21378  Alter table from X storage engine to NDB could cause data loss: skip autodiscover of local tables

ChangeSet@1.2510.56.5, 2006-09-13 14:41:28+04:00, kaa@polly.local +14 -0
  Cset exclude: kaa@polly.local|ChangeSet|20060912122540|09861
  Cset exclude: kaa@polly.local|ChangeSet|20060908100829|09983

  mysql-test/r/case.result@1.20, 2006-09-13 14:41:25+04:00, kaa@polly.local +0 -0
    Exclude

  mysql-test/r/func_if.result@1.18, 2006-09-13 14:41:25+04:00, kaa@polly.local +0 -0
    Exclude

  mysql-test/r/func_test.result@1.28, 2006-09-13 14:41:25+04:00, kaa@polly.local +0 -0
    Exclude

  mysql-test/r/user_var.result@1.31, 2006-09-13 14:41:25+04:00, kaa@polly.local +0 -0
    Exclude

  mysql-test/t/case.test@1.20, 2006-09-13 14:41:25+04:00, kaa@polly.local +0 -0
    Exclude

  mysql-test/t/func_if.test@1.18, 2006-09-13 14:41:25+04:00, kaa@polly.local +0 -0
    Exclude

  mysql-test/t/func_test.test@1.26, 2006-09-13 14:41:25+04:00, kaa@polly.local +0 -0
    Exclude

  mysql-test/t/user_var.test@1.25, 2006-09-13 14:41:25+04:00, kaa@polly.local +0 -0
    Exclude

  sql/item_cmpfunc.cc@1.212.1.2, 2006-09-13 14:41:24+04:00, kaa@polly.local +0 -0
    Exclude

  sql/item_cmpfunc.h@1.116.1.2, 2006-09-13 14:41:24+04:00, kaa@polly.local +0 -0
    Exclude

  sql/item_func.cc@1.265, 2006-09-13 14:41:24+04:00, kaa@polly.local +0 -0
    Exclude

  sql/item_func.h@1.130.1.3, 2006-09-13 14:41:24+04:00, kaa@polly.local +0 -0
    Exclude

  sql/log_event.cc@1.190, 2006-09-13 14:41:24+04:00, kaa@polly.local +0 -0
    Exclude

  sql/sql_class.h@1.286.1.2, 2006-09-13 14:41:24+04:00, kaa@polly.local +0 -0
    Exclude

ChangeSet@1.2522.41.2, 2006-09-12 19:06:26+04:00, evgen@moonbone.local +2 -0
  item_cmpfunc.cc:
    Removed changes to the Item_func_between::fix_length_and_dec() made in the fix for bug#16377
  query_cache.result:
    Corrected a test case after removing a fix for bug#16377

  mysql-test/r/query_cache.result@1.62, 2006-09-12 19:05:18+04:00, evgen@moonbone.local +3 -0
    Corrected a test case after removing a fix for bug#16377

  sql/item_cmpfunc.cc@1.215, 2006-09-12 19:06:03+04:00, evgen@moonbone.local +24 -2
    Removed changes to the Item_func_between::fix_length_and_dec() made in the fix for bug#16377

ChangeSet@1.2522.44.1, 2006-09-12 16:04:52+02:00, mskold@mysql.com +3 -0
  Bug #21378  Alter table from X storage engine to NDB could cause data loss: Added warning if local table shadows ndb table

  mysql-test/r/ndb_multi.result@1.5, 2006-09-12 16:03:42+02:00, mskold@mysql.com +32 -0
    Bug #21378  Alter table from X storage engine to NDB could cause data loss: Added warning if local table shadows ndb table

  mysql-test/t/ndb_multi.test@1.7, 2006-09-12 16:03:42+02:00, mskold@mysql.com +22 -0
    Bug #21378  Alter table from X storage engine to NDB could cause data loss: Added warning if local table shadows ndb table

  sql/ha_ndbcluster.cc@1.190.1.2, 2006-09-12 16:02:52+02:00, mskold@mysql.com +13 -4

ChangeSet@1.2522.43.1, 2006-09-11 16:49:44+02:00, knielsen@ymer.(none) +4 -0
  BUG#16282
  
  Build gcc.o as a small library, instead of passing .cpp sources to the
  linker command (causes problems with parallel make on Solaris).
  
  This fix is for 4.1. In 5.0 and up a different fix is used.

  ndb/config/common.mk.am@1.7, 2006-09-11 16:49:41+02:00, knielsen@ymer.(none) +1 -1
    Build gcc.o as a small library, instead of passing .cpp sources to the
    linker command (causes problems with parallel make on Solaris).

  ndb/config/type_ndbapitools.mk.am@1.9, 2006-09-11 16:49:41+02:00, knielsen@ymer.(none) +1 -1
    Build gcc.o as a small library, instead of passing .cpp sources to the
    linker command (causes problems with parallel make on Solaris).

  ndb/src/common/portlib/Makefile.am@1.9, 2006-09-11 16:49:41+02:00, knielsen@ymer.(none) +2 -1
    Build gcc.o as a small library, instead of passing .cpp sources to the
    linker command (causes problems with parallel make on Solaris).

  ndb/src/kernel/Makefile.am@1.12, 2006-09-11 16:49:41+02:00, knielsen@ymer.(none) +2 -1
    Build gcc.o as a small library, instead of passing .cpp sources to the
    linker command (causes problems with parallel make on Solaris).

ChangeSet@1.2522.42.1, 2006-09-11 14:50:46+05:00, gluh@mysql.com +4 -0
  Bug#20922 mysql removes a name of first column in a table
  0xFF is internal separator for SET|ENUM names. 
  If this symbol is present in SET|ENUM names then we replace it with 
  ','(deprecated symbol for SET|ENUM names) during frm creation
  and restore to 0xFF during frm opening

  mysql-test/r/type_enum.result@1.26, 2006-09-11 14:50:43+05:00, gluh@mysql.com +9 -0
    Bug#20922 mysql removes a name of first column in a table
    test case

  mysql-test/t/type_enum.test@1.16, 2006-09-11 14:50:43+05:00, gluh@mysql.com +9 -0
    Bug#20922 mysql removes a name of first column in a table
    test case

  sql/table.cc@1.138, 2006-09-11 14:50:43+05:00, gluh@mysql.com +15 -1
    Bug#20922 mysql removes a name of first column in a table
    Replace all ',' symbols with NAMES_SEP_CHAR in interval names.

  sql/unireg.cc@1.50, 2006-09-11 14:50:43+05:00, gluh@mysql.com +15 -0
    Bug#20922 mysql removes a name of first column in a table
    if NAMES_SEP_CHAR symbols are present in interval name
    then replace all NAMES_SEP_CHAR symbols with ','

ChangeSet@1.2522.28.23, 2006-09-08 10:24:14+03:00, gkodinov@macbook.gmz +3 -0
  Bug#21555: incorrect behavior with INSERT ... ON DUPL KEY UPDATE and VALUES
   VALUES() was considered a constant. This caused replacing 
   (or pre-calculating) it using uninitialized values before the actual
   execution takes place.
   Mark it as a non-constant (still not dependent of tables) to prevent
   the pre-calculation.

  mysql-test/r/insert_update.result@1.17, 2006-09-08 10:24:07+03:00, gkodinov@macbook.gmz +24 -2
    Bug#21555: incorrect behavior with INSERT ... ON DUPL KEY UPDATE and VALUES
     - test case.
     - EXPLAIN output changed due to VALUES() not being considered a constant 
       anymore

  mysql-test/t/insert_update.test@1.18, 2006-09-08 10:24:07+03:00, gkodinov@macbook.gmz +23 -0
    Bug#21555: incorrect behavior with INSERT ... ON DUPL KEY UPDATE and VALUES
     - test case.

  sql/item.h@1.196, 2006-09-08 10:24:08+03:00, gkodinov@macbook.gmz +5 -1
    Bug#21555: incorrect behavior with INSERT ... ON DUPL KEY UPDATE and VALUES
     - mark Item_insert_value as non-constant to prevent early calculation.

ChangeSet@1.2522.41.1, 2006-09-08 00:59:34+04:00, evgen@moonbone.local +6 -0
  query_cache.result, func_time.test, type_date.result, func_time.result:
    Corrected test case after removal of fix for bug#16377         
  type_date.test:
    Corrected test case after removal of fix for bug#16377
  item_cmpfunc.cc:
    Removed changes to the agg_cmp_type() made in the for bug#16377

  mysql-test/r/func_time.result@1.41.1.1, 2006-09-08 00:57:42+04:00, evgen@moonbone.local +11 -12
    Corrected test case after removal of fix for bug#16377         

  mysql-test/r/query_cache.result@1.61, 2006-09-08 00:57:33+04:00, evgen@moonbone.local +0 -3
    Corrected test case after removal of fix for bug#16377         

  mysql-test/r/type_date.result@1.13, 2006-09-08 00:57:07+04:00, evgen@moonbone.local +2 -2
    Corrected test case after removal of fix for bug#16377         

  mysql-test/t/func_time.test@1.36.1.1, 2006-09-08 00:56:50+04:00, evgen@moonbone.local +11 -11
    Corrected test case after removal of fix for bug#16377         

  mysql-test/t/type_date.test@1.12, 2006-09-08 00:56:11+04:00, evgen@moonbone.local +2 -2
    Corrected test case after removal of fix for bug#16377

  sql/item_cmpfunc.cc@1.214, 2006-09-08 00:58:26+04:00, evgen@moonbone.local +3 -108
    Removed changes to the agg_cmp_type() made in the for bug#16377

ChangeSet@1.1346.879.2, 2006-09-07 15:39:31+02:00, istruewing@chilla.local +3 -0
  Bug#14400 - Query joins wrong rows from table which is subject of
              "concurrent insert"
  Additional fix for full keys and test case.

  myisam/mi_rkey.c@1.11.2.2, 2006-09-07 15:39:30+02:00, istruewing@chilla.local +22 -16
    Bug#14400 - Query joins wrong rows from table which is subject of
                "concurrent insert"
    Additional fix for full keys.

  mysql-test/r/myisam.result@1.10.3.2, 2006-09-07 15:39:30+02:00, istruewing@chilla.local +13 -0
    Bug#14400 - Query joins wrong rows from table which is subject of
                "concurrent insert"
    Additional results.

  mysql-test/t/myisam.test@1.7.3.2, 2006-09-07 15:39:30+02:00, istruewing@chilla.local +18 -0
    Bug#14400 - Query joins wrong rows from table which is subject of
                "concurrent insert"
    Additional test case.

ChangeSet@1.2510.56.2, 2006-09-07 00:11:43+02:00, tsmith@maint1.mysql.com +1 -0
  Bug #21054: myisam_stats_method ignored in my.cnf and cmdline
  Fix OPT_MYISAM_STATS_METHOD case, where the NULLS_EQUAL and NULLS_NOT_EQUAL methods were mixed up

  sql/mysqld.cc@1.613.1.1, 2006-09-07 00:09:58+02:00, tsmith@maint1.mysql.com +2 -2
    Fix OPT_MYISAM_STATS_METHOD case, bug #21054

ChangeSet@1.2510.56.1, 2006-09-07 00:01:00+02:00, tsmith@maint1.mysql.com +2 -0
  Bug #21250: esolve stack traces on AMD64 (backport to mysql-4.1)

  sql/stacktrace.c@1.17, 2006-09-07 00:00:06+02:00, tsmith@maint1.mysql.com +40 -15
    stacktrace dumps for amd64 (backport fix for bug 21250 to mysql-4.1)

  sql/stacktrace.h@1.4, 2006-09-07 00:00:06+02:00, tsmith@maint1.mysql.com +6 -2
    stacktrace dumps for amd64 (backport fix for bug 21250 to mysql-4.1)

ChangeSet@1.2522.40.1, 2006-09-06 19:56:19+05:00, holyfoot@mysql.com +1 -0
  bug #12991 (compile error --without-geometry)

  myisam/mi_check.c@1.158.1.1, 2006-09-06 19:56:16+05:00, holyfoot@mysql.com +4 -1
    proper #ifdef-s added

ChangeSet@1.2522.30.2, 2006-09-04 18:40:30+03:00, gkodinov@macbook.gmz +5 -0
  Bug #21392: multi-table delete with alias table name fails with
              1003: Incorrect table name
  in multi-table DELETE the set of tables to delete from actually 
  references then tables in the other list, e.g:
  DELETE alias_of_t1 FROM t1 alias_of_t1 WHERE ....
  is a valid statement.
  So we must turn off table name syntactical validity check for alias_of_t1 
  because it's not a table name (even if it looks like one).
  In order to do that we add a special flag (TL_OPTION_ALIAS) to 
  disable the name checking for the aliases in multi-table DELETE.

  mysql-test/r/delete.result@1.22, 2006-09-04 18:40:20+03:00, gkodinov@macbook.gmz +4 -0
    Bug #21392: multi-table delete with alias table name fails with
                1003: Incorrect table name
     - test case

  mysql-test/t/delete.test@1.21, 2006-09-04 18:40:20+03:00, gkodinov@macbook.gmz +10 -0
    Bug #21392: multi-table delete with alias table name fails with
                1003: Incorrect table name
     - test case

  sql/mysql_priv.h@1.380.1.1, 2006-09-04 18:40:21+03:00, gkodinov@macbook.gmz +1 -0
    Bug #21392: multi-table delete with alias table name fails with
                1003: Incorrect table name
     - add a special flag to disable the name checking for the aliases
       in multi-table DELETE

  sql/sql_parse.cc@1.485.1.1, 2006-09-04 18:40:22+03:00, gkodinov@macbook.gmz +3 -1
    Bug #21392: multi-table delete with alias table name fails with
                1003: Incorrect table name
     - add a special flag to disable the name checking for the aliases
       in multi-table DELETE

  sql/sql_yacc.yy@1.398.2.1, 2006-09-04 18:40:23+03:00, gkodinov@macbook.gmz +5 -2
    Bug #21392: multi-table delete with alias table name fails with
                1003: Incorrect table name
     - add a special flag to disable the name checking for the aliases
       in multi-table DELETE

ChangeSet@1.2522.38.1, 2006-09-04 19:47:24+05:00, holyfoot@mysql.com +2 -0
  bug #12620 (UTF-8 indexing causes ER_NO_KEYFILE error)
  
  The problem is that on some Mac OS X-es the file writing/reading
  call with zero bytes to read/write returns error.
  So here i try to eliminate that kinds of calls.

  myisam/mi_check.c@1.159, 2006-09-04 19:47:21+05:00, holyfoot@mysql.com +6 -3
    zero length copying avoided

  mysys/my_chsize.c@1.16, 2006-09-04 19:47:21+05:00, holyfoot@mysql.com +3 -1
    no file operations if it's not necessary

ChangeSet@1.2522.28.20, 2006-09-04 16:53:03+03:00, timour@lamia.home +1 -0
  BUG#21787: COUNT(*) + ORDER BY + LIMIT returns wrong result
  
  Fix an error in the bug fix.

  sql/sql_select.cc@1.456, 2006-09-04 16:53:01+03:00, timour@lamia.home +8 -7
    Use a local variable to iterate over group items, since
    'group' is used later in a condition.

ChangeSet@1.2522.9.13, 2006-09-04 13:43:34+02:00, jonas@perch.ndb.mysql.com +3 -0
  bug#21965 - replication
    fix deadlock if master switches log file in parallell with "show master logs"
    

  sql/log.cc@1.164.1.1, 2006-09-04 13:43:32+02:00, jonas@perch.ndb.mysql.com +7 -2
    add raw_get_current_log which dont take log mutex

  sql/sql_class.h@1.287.1.1, 2006-09-04 13:43:32+02:00, jonas@perch.ndb.mysql.com +1 -0
    add raw_get_current_log which dont take log mutex

  sql/sql_repl.cc@1.138, 2006-09-04 13:43:32+02:00, jonas@perch.ndb.mysql.com +6 -2
    Fix lock order i.e first log_lock then index_lock

ChangeSet@1.2510.55.1, 2006-09-04 09:13:40+02:00, tnurnberg@salvation.intern.azundris.com +3 -0
  Bug#21913: DATE_FORMAT() Crashes mysql server if I use it through mysql-connector-j driver.
  
  Variable character_set_results can legally be NULL (for "no conversion.")
  This could result in a NULL deref that crashed the server.  Fixed.
  
  (Although ran some additional precursory tests to see whether I could break
  anything else, but no breakage so far.)

  mysql-test/r/func_time.result@1.38.1.5, 2006-09-04 09:13:37+02:00, tnurnberg@salvation.intern.azundris.com +12 -0
    Bug#21913: DATE_FORMAT() Crashes mysql server if I use it through mysql-connector-j driver.
    
    Prove DATE_FORMAT() no longer crashes the server when character_set_results is
    NULL (which is a legal value and means, "no conversion").

  mysql-test/t/func_time.test@1.33.1.5, 2006-09-04 09:13:37+02:00, tnurnberg@salvation.intern.azundris.com +18 -0
    Bug#21913: DATE_FORMAT() Crashes mysql server if I use it through mysql-connector-j driver.
    
    Prove DATE_FORMAT() no longer crashes the server when character_set_results is
    NULL (which is a legal value and means, "no conversion").

  sql/sql_string.cc@1.95, 2006-09-04 09:13:37+02:00, tnurnberg@salvation.intern.azundris.com +6 -1
    Bug#21913: DATE_FORMAT() Crashes mysql server if I use it through mysql-connector-j driver.
    
    Avoid NULL deref in my_charset_same() -- if !to_cs, we won't need to compare
    because it is magic for, "no conversion."

ChangeSet@1.2522.36.1, 2006-09-01 15:07:04+03:00, timour@lamia.home +3 -0
  Fix for BUG#21787: COUNT(*) + ORDER BY + LIMIT returns wrong result
    
  The problem was due to a prior fix for BUG 9676, which limited
  the rows stored in a temporary table to the LIMIT clause. This
  optimization is not applicable to non-group queries with aggregate
  functions. The fix disables the optimization in this case.

  mysql-test/r/limit.result@1.9, 2006-09-01 15:07:02+03:00, timour@lamia.home +14 -0
    Test case for BUG#21787

  mysql-test/t/limit.test@1.10, 2006-09-01 15:07:02+03:00, timour@lamia.home +10 -0
    Test case for BUG#21787

  sql/sql_select.cc@1.451.10.1, 2006-09-01 15:07:02+03:00, timour@lamia.home +14 -5
    If there is an aggregate function in a non-group query,
    materialize all rows in the temporary table no matter if
    there is a LIMIT clause. This is necessary, since the
    aggregate functions must be computed over all result rows,
    not just the first LIMIT rows.

ChangeSet@1.2522.28.18, 2006-09-01 11:21:12+02:00, msvensson@neptunus.(none) +2 -0
  Backport from 5.0
   - Dont test "encrypt" in ctype_ucs

  mysql-test/r/ctype_ucs.result@1.33, 2006-09-01 11:21:09+02:00, msvensson@neptunus.(none) +0 -4
    Don't test "encrypt" function in ctype_ucs.test

  mysql-test/t/ctype_ucs.test@1.33, 2006-09-01 11:21:10+02:00, msvensson@neptunus.(none) +0 -6
    Don't test "encrypt" function in ctype_ucs.test

ChangeSet@1.2522.35.1, 2006-09-01 10:21:08+02:00, msvensson@shellback.(none) +2 -0
  Add target to make "mtr", shortcut for running test suite

  BitKeeper/etc/ignore@1.236, 2006-09-01 10:21:06+02:00, msvensson@shellback.(none) +1 -0
    Added mysql-test/mtr to the ignore list

  mysql-test/Makefile.am@1.55, 2006-09-01 10:21:06+02:00, msvensson@shellback.(none) +6 -1
    Add target to make "mtr", shortcut for running test suite

ChangeSet@1.2522.34.1, 2006-09-01 15:32:40+08:00, dli@dev3-76.dev.cn.tlan +3 -0
  Fix for BUG#21345, Error in cluster logfile rotation.
  Fixed the cluster logfile rotation code, let the cluster logfile be renamed correctly when the main logfile exceeds the configured maximum size.

  ndb/include/util/File.hpp@1.5, 2006-09-01 15:32:38+08:00, dli@dev3-76.dev.cn.tlan +8 -0
    Fix for BUG#21345, Error in cluster logfile rotation.

  ndb/src/common/logger/FileLogHandler.cpp@1.11, 2006-09-01 15:32:38+08:00, dli@dev3-76.dev.cn.tlan +10 -1
    Fix for BUG#21345, Error in cluster logfile rotation.

  ndb/src/common/util/File.cpp@1.10, 2006-09-01 15:32:38+08:00, dli@dev3-76.dev.cn.tlan +12 -0
    Fix for BUG#21345, Error in cluster logfile rotation.

ChangeSet@1.2510.54.1, 2006-08-31 11:14:04-04:00, cmiller@zippy.cornsilk.net +1 -0
  Bitkeeper's Tk interface uses UTF8 by default, so mixing charsets in a 
  single file is a bad practice.  

  tests/mysql_client_test.c@1.168.1.1, 2006-08-31 11:14:03-04:00, cmiller@zippy.cornsilk.net +3 -2
    Replace literal characters which don't make sense in UTF8 with ubiquitously-
    understood numbers.

ChangeSet@1.2510.24.11, 2006-08-31 02:00:40+03:00, aelkin@dsl-hkigw8-feaaf900-177.dhcp.inet.fi +1 -0
  BUG#18822 LOAD DATA FROM MASTER corrupts data
  
  there is a bunch of dups. It has been decided to declare this feature as
  deprecated.
    

  sql/sql_yacc.yy@1.398.1.1, 2006-08-31 02:00:29+03:00, aelkin@dsl-hkigw8-feaaf900-177.dhcp.inet.fi +3 -1
    deprecation macro

ChangeSet@1.1346.880.1, 2006-08-30 17:28:34-04:00, cmiller@zippy.cornsilk.net +1 -0
  Bug#4053: too many of "error 1236: 'binlog truncated in the middle of \
  	event' from master"
  
  Since there is no repeatable test case, and this is obviously wrong, this is
  the most conservative change that might possibly work.  
  
  The syscall  read()  wasn't checked for a negative return value for an
  interrupted read.  The kernel  sys_read()  returns -EINTR, and the "library" 
  layer maps that to return value of -1 and sets  errno  to EINTR.  It's 
  impossible (on Linux) for  read()  to set errno EINTR without the return 
  value being -1 .
  
  So, if we're checking for EINTR behavior, we should not require that the
  return value be zero.

  mysys/my_read.c@1.6.1.2, 2006-08-30 17:28:34-04:00, cmiller@zippy.cornsilk.net +4 -1
    The read() syscall should check for negative one, since that (usually) signals
    errors (like being interrupted) and zero (usually) signals end-of-file .

  mysys/my_read.c@1.6.1.1, 2006-08-29 12:21:59-04:00, cmiller@zippy.cornsilk.net +21 -21
    Made styling conform to guidelines.

ChangeSet@1.2510.52.3, 2006-08-30 22:39:23+02:00, tsmith@maint2.mysql.com +2 -0
  Remove ^Z from ctype_ucs.test data, to avoid problems testing on Windows

  mysql-test/r/ctype_ucs.result@1.32, 2006-08-30 22:39:04+02:00, tsmith@maint2.mysql.com +7 -7
    Remove ^Z from ctype_ucs.test data, to avoid problems testing on Windows

  mysql-test/t/ctype_ucs.test@1.32, 2006-08-30 22:39:04+02:00, tsmith@maint2.mysql.com +1 -1
    Remove ^Z from ctype_ucs.test data, to avoid problems testing on Windows

ChangeSet@1.2510.52.2, 2006-08-30 21:24:09+02:00, tsmith@maint2.mysql.com +1 -0
  portability fix in BUILD/* for solaris

  BUILD/check-cpu@1.13, 2006-08-30 21:23:59+02:00, tsmith@maint2.mysql.com +176 -173
    portability fix in BUILD/* for solaris

ChangeSet@1.2522.33.1, 2006-08-30 15:56:17+05:00, gluh@mysql.com +7 -0
  Bug#20393 User name truncation in mysql client
  Bug#21432 Database/Table name limited to 64 bytes, not chars, problems with multi-byte

  include/mysql_com.h@1.108, 2006-08-30 15:56:14+05:00, gluh@mysql.com +3 -0
    Bug#20393 User name truncation in mysql client
    Bug#21432 Database/Table name limited to 64 bytes, not chars, problems with multi-byte
    added new constants NAME_BYTE_LEN, USERNAME_BYTE_LENGTH, SYSTEM_CHARSET_MBMAXLEN

  mysql-test/r/ctype_utf8.result@1.72, 2006-08-30 15:56:14+05:00, gluh@mysql.com +12 -0
    Bug#20393 User name truncation in mysql client
    Bug#21432 Database/Table name limited to 64 bytes, not chars, problems with multi-byte
    test case

  mysql-test/t/ctype_utf8.test@1.74, 2006-08-30 15:56:14+05:00, gluh@mysql.com +16 -0
    Bug#20393 User name truncation in mysql client
    Bug#21432 Database/Table name limited to 64 bytes, not chars, problems with multi-byte
    test case

  sql-common/client.c@1.92, 2006-08-30 15:56:14+05:00, gluh@mysql.com +3 -3
    Bug#20393 User name truncation in mysql client
    Bug#21432 Database/Table name limited to 64 bytes, not chars, problems with multi-byte
    increased buffers for user name & db

  sql/sql_acl.cc@1.179, 2006-08-30 15:56:14+05:00, gluh@mysql.com +5 -1
    Bug#20393 User name truncation in mysql client
    Bug#21432 Database/Table name limited to 64 bytes, not chars, problems with multi-byte
    check that user name is not longer than USERNAME_LENGTH symbols
    

  sql/sql_parse.cc@1.486, 2006-08-30 15:56:14+05:00, gluh@mysql.com +2 -2
    Bug#20393 User name truncation in mysql client
    Bug#21432 Database/Table name limited to 64 bytes, not chars, problems with multi-byte
    increased buffers for user name & db

  sql/table.cc@1.137, 2006-08-30 15:56:14+05:00, gluh@mysql.com +4 -2
    Bug#20393 User name truncation in mysql client
    Bug#21432 Database/Table name limited to 64 bytes, not chars, problems with multi-byte
    check that db name is not longer than NAME_LEN symbols

ChangeSet@1.1346.879.1, 2006-08-29 20:45:04+02:00, istruewing@chilla.local +3 -0
  Bug#14400 - Query joins wrong rows from table which is
              subject of "concurrent insert"
  Better fix by Monty: "The previous bug fix didn't work
  when using partial keys."

  myisam/mi_rkey.c@1.11.2.1, 2006-08-29 20:45:03+02:00, istruewing@chilla.local +31 -12
    Bug#14400 - Query joins wrong rows from table which is
                subject of "concurrent insert"
    Better fix by Monty: "The previous bug fix didn't work
    when using partial keys."

  mysql-test/r/myisam.result@1.10.3.1, 2006-08-29 20:45:03+02:00, istruewing@chilla.local +15 -0
    Bug#14400 - Query joins wrong rows from table which is
                subject of "concurrent insert"
    Added test result

  mysql-test/t/myisam.test@1.7.3.1, 2006-08-29 20:45:03+02:00, istruewing@chilla.local +17 -0
    Bug#14400 - Query joins wrong rows from table which is
                subject of "concurrent insert"
    Added test case

ChangeSet@1.2522.32.1, 2006-08-29 16:59:20+04:00, kroki@moonlight.intranet +3 -0
  BUG#21096: locking issue ; temporary table conflicts.
  
  The problem was that during DROP TEMPORARY TABLE we tried to acquire
  the name lock, though temporary tables belongs to one connection, and
  no race is possible.
  
  The solution is to not use table name locking while executing
  DROP TEMPORARY TABLE.

  mysql-test/r/temp_table.result@1.12, 2006-08-29 16:59:18+04:00, kroki@moonlight.intranet +17 -0
    Add result for bug#21096: locking issue ; temporary table conflicts.

  mysql-test/t/temp_table.test@1.11, 2006-08-29 16:59:18+04:00, kroki@moonlight.intranet +47 -1
    Add test case for bug#21096: locking issue ; temporary table conflicts.

  sql/sql_table.cc@1.307.1.1, 2006-08-29 16:59:18+04:00, kroki@moonlight.intranet +3 -2
    Do not use table name locking while executing DROP TEMPORARY TABLE.

ChangeSet@1.2510.50.1, 2006-08-29 14:38:02+05:00, ramil@mysql.com +1 -0
  Fix for bug #21142: Malformed insert causes a segmentation fault.
    - possible stack overflow fixed.

  client/mysql.cc@1.218.2.2, 2006-08-29 14:38:00+05:00, ramil@mysql.com +2 -2
    Fix for bug #21142: Malformed insert causes a segmentation fault.
      - as 'line' may be longer than 'buff' we must take into account its length.

ChangeSet@1.1346.874.2, 2006-08-29 01:13:06+02:00, tsmith@maint1.mysql.com +1 -0
  minor portability fix in SETUP.sh

  BUILD/SETUP.sh@1.17.1.8, 2006-08-29 01:12:45+02:00, tsmith@maint1.mysql.com +3 -9

ChangeSet@1.2522.28.10, 2006-08-26 18:38:42+02:00, msvensson@neptunus.(none) +1 -0
  Dont' ever use cluster for slave in 4.1

  mysql-test/mysql-test-run.pl@1.70, 2006-08-26 18:38:40+02:00, msvensson@neptunus.(none) +1 -1
    Dont' ever use cluster for slave in 4.1

ChangeSet@1.2522.28.9, 2006-08-25 17:01:04+02:00, msvensson@neptunus.(none) +1 -0
  Ignore --skip-im if specified on command line 
  Null merge to 5.0

  mysql-test/mysql-test-run.pl@1.69, 2006-08-25 17:01:02+02:00, msvensson@neptunus.(none) +2 -0
    Ignore --skip-im if specified on command line 

ChangeSet@1.2522.28.8, 2006-08-25 15:23:42+02:00, msvensson@neptunus.(none) +1 -0
  Add mysqld-max-nt to list of mysqld executales to look for on windows

  mysql-test/mysql-test-run.pl@1.68, 2006-08-25 15:23:40+02:00, msvensson@neptunus.(none) +2 -1
    Add mysqld-max-nt to list of mysqld executales to look for on windows

ChangeSet@1.2522.28.7, 2006-08-25 15:17:03+02:00, msvensson@neptunus.(none) +3 -0
  Backport from 5.0 a fix that will start ndb only for tests that needs it

  mysql-test/lib/mtr_cases.pl@1.11, 2006-08-25 15:16:58+02:00, msvensson@neptunus.(none) +22 -0
    Detect which tests that need ndb

  mysql-test/lib/mtr_match.pl@1.2, 2006-08-25 15:16:58+02:00, msvensson@neptunus.(none) +17 -0
    Add function mtr_match_substring

  mysql-test/mysql-test-run.pl@1.67, 2006-08-25 15:16:58+02:00, msvensson@neptunus.(none) +26 -2
    Only start cluster for test cases that need it

ChangeSet@1.2522.28.6, 2006-08-25 10:46:14+02:00, msvensson@neptunus.(none) +2 -0
  Fix running tests suite with non standard tmp dir.
  Default is "var/tmp" 

  mysql-test/r/myisam.result@1.63, 2006-08-25 10:46:12+02:00, msvensson@neptunus.(none) +2 -2
    Update result file

  mysql-test/t/myisam.test@1.49, 2006-08-25 10:46:12+02:00, msvensson@neptunus.(none) +8 -2
    If running test suite with a non standard tmp dir, the "show create table" will print "DATA DIRECTORY="
    Use replace_result to mask it out
    Set tmpdir to var/log to get the printout of DATA DIRECTORY also when running with standard tmpdir

ChangeSet@1.2522.29.1, 2006-08-25 10:11:15+02:00, msvensson@neptunus.(none) +1 -0
  Backport fix for finding executables from 5.0

  mysql-test/lib/mtr_misc.pl@1.7, 2006-08-25 10:11:14+02:00, msvensson@neptunus.(none) +16 -2
    On windows the exe does not need to be executable for it to be found

ChangeSet@1.2522.24.3, 2006-08-24 19:16:27+04:00, sergefp@mysql.com +2 -0
  BUG#16255: Post-review fixes: adjust the testcase.

  mysql-test/r/subselect.result@1.180.2.2, 2006-08-24 19:16:25+04:00, sergefp@mysql.com +22 -11
    BUG#16255: A proper testcase

  mysql-test/t/subselect.test@1.157.1.2, 2006-08-24 19:16:25+04:00, sergefp@mysql.com +17 -5
    BUG#16255: A proper testcase

ChangeSet@1.2522.24.2, 2006-08-24 19:14:36+04:00, sergefp@mysql.com +3 -0
  Bug #16255: Subquery in WHERE (the cset by Georgi Kodinov)
   Must not use Item_direct_ref in HAVING because it points to
   the new value (witch is not yet calculated for the first row).

  mysql-test/r/subselect.result@1.180.2.1, 2006-08-24 19:14:34+04:00, sergefp@mysql.com +11 -0
    Bug #16255: Subquery in where
     - test case

  mysql-test/t/subselect.test@1.157.1.1, 2006-08-24 19:14:34+04:00, sergefp@mysql.com +12 -0
    Bug #16255: Subquery in where
     - test case

  sql/item_subselect.cc@1.142.1.1, 2006-08-24 19:14:34+04:00, sergefp@mysql.com +5 -5
    Bug #16255: Subquery in where
     Must not use Item_direct_ref in HAVING because it points to
     the new value (witch is not yet calculated for the first row).

ChangeSet@1.2522.9.12, 2006-08-24 07:14:46+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#21800
    read TransactionDeadlockTimeout (for scans) to cater for insane settings

  ndb/src/ndbapi/NdbScanOperation.cpp@1.52, 2006-08-24 07:14:45+02:00, jonas@perch.ndb.mysql.com +9 -4
    read TransactionDeadlockTimeout to cater for insane settings

ChangeSet@1.2510.48.3, 2006-08-23 18:02:31-06:00, tsmith@siva.hindu.god +4 -0
  Bug #21531: EXPORT_SET() doesn't accept args with coercible character sets
  
  - Fix typo in Item_func_export_set::fix_length_and_dec() which caused character set aggregation to fail
  - Remove default argument from last arg of agg_arg_charsets() function, to reduce potential errors

  mysql-test/r/func_misc.result@1.20, 2006-08-23 18:02:28-06:00, tsmith@siva.hindu.god +4 -0
    Test EXPORT_SET() with charset coersion (bug #21531)

  mysql-test/t/func_misc.test@1.16, 2006-08-23 18:02:28-06:00, tsmith@siva.hindu.god +6 -1
    Test EXPORT_SET() with charset coersion (bug #21531)

  sql/item_func.h@1.129.1.1, 2006-08-23 18:02:28-06:00, tsmith@siva.hindu.god +1 -2
    Remove default argument from last arg of agg_arg_charsets() function, to reduce potential errors.

  sql/item_strfunc.cc@1.246.2.2, 2006-08-23 18:02:28-06:00, tsmith@siva.hindu.god +2 -2
    Fix typo in Item_func_export_set::fix_length_and_dec() which caused character set aggregation to fail.

ChangeSet@1.2510.48.2, 2006-08-23 15:37:54-06:00, tsmith@siva.hindu.god +2 -0
  Bug #20402: DROP USER failure logged as ERROR rather than WARNING
  
  Remove some sql_print_error() calls which were triggered by user error (i.e., not server-level events at all).
  
  Also, convert an sql_print_error -> sql_print_information for a non-error server event.

  sql/slave.cc@1.279.2.1, 2006-08-23 15:37:52-06:00, tsmith@siva.hindu.god +1 -1
    Change sql_print_error to sql_print_information for non-error status message.

  sql/sql_acl.cc@1.175.1.1, 2006-08-23 15:37:52-06:00, tsmith@siva.hindu.god +0 -15
    Remove sql_print_error calls for events which are not server errors

ChangeSet@1.2522.27.1, 2006-08-23 16:46:57+03:00, timour@lamia.home +3 -0
  Bug #21456: SELECT DISTINCT(x) produces incorrect results when using order by
  
  GROUP BY/DISTINCT pruning optimization must be done before ORDER BY 
  optimization because ORDER BY may be removed when GROUP BY/DISTINCT
  sorts as a side effect, e.g. in 
    SELECT DISTINCT <non-key-col>,<pk> FROM t1
    ORDER BY <non-key-col> DISTINCT
  must be removed before ORDER BY as if done the other way around
  it will remove both.

  mysql-test/r/distinct.result@1.34, 2006-08-23 16:46:55+03:00, timour@lamia.home +11 -0
    Test for BUG#21456.

  mysql-test/t/distinct.test@1.19, 2006-08-23 16:46:55+03:00, timour@lamia.home +11 -0
    Test for BUG#21456.

  sql/sql_select.cc@1.451.9.1, 2006-08-23 16:46:55+03:00, timour@lamia.home +30 -30
    Bug #21456: SELECT DISTINCT(x) produces incorrect results when using order by
    
    GROUP BY/DISTINCT pruning optimization must be done before ORDER BY 
    optimization because ORDER BY may be removed when GROUP BY/DISTINCT
    sorts as a side effect.

ChangeSet@1.2510.49.1, 2006-08-22 11:48:58+02:00, kent@mysql.com +1 -0
  mysql.spec.sh:
    Added ndb_size.{pl,tmpl} to the RPM install (bug#20426)

  support-files/mysql.spec.sh@1.120.1.1, 2006-08-22 11:47:58+02:00, kent@mysql.com +2 -0
    Added ndb_size.{pl,tmpl} to the RPM install (bug#20426)

ChangeSet@1.2522.15.3, 2006-08-17 14:09:24-07:00, jimw@rama.(none) +3 -0
  Bug #21288: mysqldump segmentation fault when using --where
  
    The problem was that the error handling was using a too-small buffer to
    print the error message generated. We fix this by not using a buffer at
    all, but by using fprintf() directly. There were also some problems with
    the error handling in table dumping that was exposed by this fix that were
    also corrected.

  client/mysqldump.c@1.202, 2006-08-17 14:09:23-07:00, jimw@rama.(none) +11 -5
    Use fprintf() instead of my_printf_error() to avoid buffer overflow issues.
    Since ME_BELL wasn't specified, calling my_printf_error() offered no advantage
    except for adding my_progname, which we just go ahead and do manually. Also,
    fix the error handling in dumpTable() when queries to get data fail and --force
    was specified.

  mysql-test/r/mysqldump.result@1.55, 2006-08-17 14:09:23-07:00, jimw@rama.(none) +27 -0
    Add new results

  mysql-test/t/mysqldump.test@1.46, 2006-08-17 14:09:23-07:00, jimw@rama.(none) +8 -0
    Add new regression test

ChangeSet@1.2522.14.3, 2006-08-17 12:25:40-07:00, jimw@rama.(none) +14 -0
  Bug #2717: include/my_global.h mis-defines __attribute__
  
    Fix when __attribute__() is stubbed out, add ATTRIBUTE_FORMAT() for specifying
    __attribute__((format(...))) safely, make more use of the format attribute,
    and fix some of the warnings that this turns up (plus a bonus unrelated one).

  include/m_ctype.h@1.107.1.1, 2006-08-17 12:25:38-07:00, jimw@rama.(none) +3 -2
    Add ATTRIBUTE_FORMAT to printf-like functions.

  include/m_string.h@1.36, 2006-08-17 12:25:38-07:00, jimw@rama.(none) +2 -1
    Add ATTRIBUTE_FORMAT to my_snprintf() declaration.

  include/my_global.h@1.105, 2006-08-17 12:25:38-07:00, jimw@rama.(none) +21 -1
    Fix neutering of __attribute__() on old versions of GCC and non-GCC compilers.
    Add ATTRIBUTE_FORMAT() macro for setting __attribute_((format(...)), since it
    is available from different versions of gcc and g++.

  include/my_sys.h@1.145, 2006-08-17 12:25:38-07:00, jimw@rama.(none) +2 -2
    Add ATTRIBUTE_FORMAT() to my_printf_error declaration

  sql/item_subselect.cc@1.143, 2006-08-17 12:25:38-07:00, jimw@rama.(none) +1 -1
    Silence warning about members being initialized out-of-order

  sql/item_timefunc.cc@1.105.1.1, 2006-08-17 12:25:38-07:00, jimw@rama.(none) +2 -2
    Fix format specifier in snprintf() calls with milliseconds

  sql/mysql_priv.h@1.381, 2006-08-17 12:25:38-07:00, jimw@rama.(none) +6 -5
    Add ATTRIBUTE_FORMAT to printf-like functions.

  sql/mysqld.cc@1.615.1.1, 2006-08-17 12:25:38-07:00, jimw@rama.(none) +11 -10
    Fix various format specifiers
    Make sure that method_conv is always set by myisam_stats_method

  sql/opt_range.cc@1.147.1.1, 2006-08-17 12:25:38-07:00, jimw@rama.(none) +4 -3
    Cast pointers to correct type for %lx

  sql/set_var.cc@1.185.1.1, 2006-08-17 12:25:38-07:00, jimw@rama.(none) +6 -6
    Fix __attribute__((unused)) (missing inner set of parens)

  sql/slave.cc@1.279.1.1, 2006-08-17 12:25:39-07:00, jimw@rama.(none) +1 -1
    Fix format specifier

  sql/slave.h@1.89, 2006-08-17 12:25:39-07:00, jimw@rama.(none) +2 -1
    Add ATTRIBUTE_FORMAT to slave_print_error() declaration.

  sql/sql_acl.cc@1.176.1.1, 2006-08-17 12:25:39-07:00, jimw@rama.(none) +2 -2
    Fix number of  arguments passed for formatting, and fix acl_host_or_ip being
    passed instead of just the hostname.

  sql/sql_class.h@1.288, 2006-08-17 12:25:39-07:00, jimw@rama.(none) +1 -1
    Add ATTRIBUTE_FORMAT to MYSQL_LOG::write().

ChangeSet@1.2522.25.1, 2006-08-17 21:23:00+05:00, svoj@may.pils.ru +1 -0
  BUG#19702 - Using myisampack/myisamchk on a FULLTEXT indexed
              table results in table corrupt
  
  Fulltext key has always two keysegs, thus we need to update
  FT_SEGS (last) element from seg array in case of compressed table.
  Also we must update ft2_keyinfo.

  myisam/mi_packrec.c@1.29, 2006-08-17 21:22:57+05:00, svoj@may.pils.ru +14 -6
    Fulltext key has always two keysegs, thus we need to update
    FT_SEGS (last) element from seg array in case of compressed table.
    Also we must update ft2_keyinfo.

ChangeSet@1.2522.6.11, 2006-08-16 13:55:16-04:00, iggy@rolltop.ignatz42.dyndns.org +2 -0
  Bug#20328 - Correction to test/result for broken Windows build.

  mysql-test/r/mysql_client.result@1.3, 2006-08-16 13:55:15-04:00, iggy@rolltop.ignatz42.dyndns.org +0 -44
    Removed OS dependant output.

  mysql-test/t/mysql_client.test@1.3, 2006-08-16 13:55:15-04:00, iggy@rolltop.ignatz42.dyndns.org +3 -3
    Re-directed output to a temporary file because the actual output isn't important and was causing a Windows test failure.

ChangeSet@1.2522.24.1, 2006-08-15 20:33:14+04:00, sergefp@mysql.com +3 -0
  BUG#21077: Possible crash caused by invalid sequence of handler::* calls:                                                
  The crash was caused by invalid sequence of handler::** calls:                                                           
    ha_smth->index_init();                                                                                                 
    ha_smth->index_next_same(); (2)                                                                                        
  (2) is an invalid call as it was not preceeded by any 'scan setup' call
  like index_first() or index_read(). The cause was that QUICK_SELECT::reset()
  didn't "fully reset" the quick select- current QUICK_RANGE wasn't forgotten,
  and quick select might attempt to continue reading the range, which would
  result in the above mentioned invalid sequence of handler calls.
  
  5.x versions are not affected by the bug - they already have the missing
  "range=NULL" clause.                                                    
                                                         

  mysql-test/r/innodb_mysql.result@1.5, 2006-08-15 20:33:12+04:00, sergefp@mysql.com +21 -0
    Testcase for BUG#21077

  mysql-test/t/innodb_mysql.test@1.5, 2006-08-15 20:33:12+04:00, sergefp@mysql.com +27 -0
    Testcase for BUG#21077

  sql/opt_range.h@1.40.1.1, 2006-08-15 20:33:12+04:00, sergefp@mysql.com +1 -1
    BUG#21077: Possible crash caused by invalid sequence of handler::* calls:                                              
     - Make QUICK_SELECT::reset() really reset the quick select                                                            

ChangeSet@1.2522.23.1, 2006-08-15 13:12:27+02:00, mskold@mysql.com +5 -0
  ndb_lock.test, ndb_lock.result:
    bug #18184  SELECT ... FOR UPDATE does not work..: New test case
  ha_ndbcluster.h, ha_ndbcluster.cc, NdbConnection.hpp:
    Fix for bug #21059  Server crashes on join query with large dataset with NDB tables: Releasing operation for each intermediate batch, before next call to trans->execute(NoCommit);

  mysql-test/r/ndb_lock.result@1.9, 2006-08-15 13:09:09+02:00, mskold@mysql.com +12 -3
    bug #18184  SELECT ... FOR UPDATE does not work..: New test case

  mysql-test/t/ndb_lock.test@1.11, 2006-08-15 13:09:09+02:00, mskold@mysql.com +13 -2
    bug #18184  SELECT ... FOR UPDATE does not work..: New test case

  ndb/include/ndbapi/NdbConnection.hpp@1.26, 2006-08-15 13:09:39+02:00, mskold@mysql.com +3 -1
    Fix for bug #21059  Server crashes on join query with large dataset with NDB tables: Releasing operation for each intermediate batch, before next call to trans->execute(NoCommit);

  sql/ha_ndbcluster.cc@1.190.1.1, 2006-08-15 13:09:39+02:00, mskold@mysql.com +34 -0
    Fix for bug #21059  Server crashes on join query with large dataset with NDB tables: Releasing operation for each intermediate batch, before next call to trans->execute(NoCommit);

  sql/ha_ndbcluster.h@1.59.1.1, 2006-08-15 13:09:39+02:00, mskold@mysql.com +2 -0
    Fix for bug #21059  Server crashes on join query with large dataset with NDB tables: Releasing operation for each intermediate batch, before next call to trans->execute(NoCommit);

ChangeSet@1.2522.22.1, 2006-08-15 15:24:07+05:00, ramil@mysql.com +6 -0
  Fix for bug #20695: Charset introducer overrides charset definition for column.
    - if there are two character set definitions in the column declaration,
      we replace the first one with the second one as we store both in the LEX->charset
      slot. Add a separate slot to the LEX structure to store underscore charset.
    - convert default values to the column charset of STRING, VARSTRING fields 
      if necessary as well.

  mysql-test/r/ctype_recoding.result@1.26, 2006-08-15 15:24:03+05:00, ramil@mysql.com +11 -0
    Fix for bug #20695: Charset introducer overrides charset definition for column.
      - test result.

  mysql-test/t/ctype_recoding.test@1.22, 2006-08-15 15:24:03+05:00, ramil@mysql.com +12 -0
    Fix for bug #20695: Charset introducer overrides charset definition for column.
      - test case.

  sql/sql_lex.cc@1.155, 2006-08-15 15:24:03+05:00, ramil@mysql.com +3 -2
    Fix for bug #20695: Charset introducer overrides charset definition for column.
      - LEX->underscore_charset introduced to store UNDERSCORE_CHARSET

  sql/sql_lex.h@1.190, 2006-08-15 15:24:03+05:00, ramil@mysql.com +1 -1
    Fix for bug #20695: Charset introducer overrides charset definition for column.
      - LEX->underscore_charset introduced to store UNDERSCORE_CHARSET

  sql/sql_table.cc@1.308, 2006-08-15 15:24:03+05:00, ramil@mysql.com +34 -29
    Fix for bug #20695: Charset introducer overrides charset definition for column.
      - convert default values to the column charset of VARSTRING, STRING, ENUM, 
        SET fields if necessary.

  sql/sql_yacc.yy@1.399, 2006-08-15 15:24:03+05:00, ramil@mysql.com +2 -2
    Fix for bug #20695: Charset introducer overrides charset definition for column.
      - LEX->underscore_charset introduced to store UNDERSCORE_CHARSET

ChangeSet@1.2522.20.1, 2006-08-14 20:01:19+04:00, kroki@moonlight.intranet +2 -0
  BUG#9678: Client library hangs after network communication failure
  
  Socket timeouts in client library were used only on Windows.
  
  The solution is to use socket timeouts in client library on all
  systems were they are supported.
  
  No test case is provided because it is impossible to simulate network
  failure in current test suit.

  sql/net_serv.cc@1.76, 2006-08-14 20:01:17+04:00, kroki@moonlight.intranet +1 -1
    Retry indefinitely only if got EINTR.

  vio/viosocket.c@1.36, 2006-08-14 20:01:18+04:00, kroki@moonlight.intranet +22 -8
    Set socket timeouts on POSIX systems as well as on Windows.

ChangeSet@1.2522.16.2, 2006-08-14 17:05:02+05:00, svoj@may.pils.ru +3 -0
  BUG#18874 - Setting myisam_repair_threads > 1, index cardinality always 1
  Fixed by moving update_key_parts() down to be after write_index().

  myisam/sort.c@1.46, 2006-08-14 17:04:59+05:00, svoj@may.pils.ru +5 -7
    write_index() collects index statistic which is further used in
    update_key_parts(). Thus update_key_parts() must be called after
    write_index().

  mysql-test/r/repair.result@1.17, 2006-08-14 17:04:59+05:00, svoj@may.pils.ru +11 -0
    Test case for bug#18874.

  mysql-test/t/repair.test@1.15, 2006-08-14 17:04:59+05:00, svoj@may.pils.ru +11 -0
    Test case for bug#18874.

ChangeSet@1.2522.18.4, 2006-08-14 12:59:54+05:00, ramil@mysql.com +2 -0
  Make the heap_btree test repeatable.

  mysql-test/r/heap_btree.result@1.19, 2006-08-14 12:59:51+05:00, ramil@mysql.com +7 -7
    Make the heap_btree test repeatable.
      - 'order by' added where we don't use the 'a' index.

  mysql-test/t/heap_btree.test@1.15, 2006-08-14 12:59:51+05:00, ramil@mysql.com +3 -3
    Make the heap_btree test repeatable.
      - 'order by' added where we don't use the 'a' index.

ChangeSet@1.2522.18.3, 2006-08-14 10:54:24+05:00, ramil@mysql.com +1 -0
  Restore alphabetical order of the system variables.
  

  sql/set_var.cc@1.186, 2006-08-14 10:54:20+05:00, ramil@mysql.com +1 -1
    Restore alphabetical order of the system variables.
      - moved the have_merge_engine variable.

ChangeSet@1.2510.48.1, 2006-08-11 17:09:19-06:00, tsmith@siva.hindu.god +4 -0
  Bug #20536: md5() with GROUP BY and UCS2 return different results on myisam/innodb
  
  Make the encryption functions MD5(), SHA1() and ENCRYPT() return binary results.
      
  Make MAKE_SET() and EXPORT_SET() use the correct character set for their default separator strings.

  mysql-test/r/ctype_ucs.result@1.31, 2006-08-11 17:09:17-06:00, tsmith@siva.hindu.god +43 -0
    Add tests for bug #20536.

  mysql-test/t/ctype_ucs.test@1.31, 2006-08-11 17:09:17-06:00, tsmith@siva.hindu.god +40 -1
    Add tests for bug #20536.
    
    Tests showing correct behavior for MD5(), SHA1(), MAKE_SET() and EXPORT_SET().
    
    Also, tests showing incorrect behavior, which will remain "Won't fix", for
    PASSWORD(), OLD_PASSWORD(), ENCRYPT() and QUOTE().

  sql/item_strfunc.cc@1.246.2.1, 2006-08-11 17:09:17-06:00, tsmith@siva.hindu.god +10 -4
    Make the encryption functions MD5(), SHA1() and ENCRYPT() return binary results.
    
    Make MAKE_SET() and EXPORT_SET() use the correct character set for their default separator strings.

  sql/item_strfunc.h@1.102.1.1, 2006-08-11 17:09:17-06:00, tsmith@siva.hindu.god +22 -4
    Make the encryption functions MD5(), SHA1() and ENCRYPT() return binary results.

ChangeSet@1.2522.19.1, 2006-08-11 13:19:44+05:00, bar@mysql.com +4 -0
  mysqld --collation-server=xxx --character-set-server=yyy
  didn't work as expected: collation_server was set not to xxx,
  but to the default collation of character set "yyy".
      
  With different argument order it worked as expected:
  mysqld --character-set-server=yyy --collation-server=yyy 
      
  Fix:
  initializate default_collation_name to 0
  when processing --character-set-server
  only if --collation-server has not been specified
  in command line.

  mysql-test/r/ctype_ucs2_def.result@1.2, 2006-08-11 13:19:40+05:00, bar@mysql.com +3 -0
    Adding test cast

  mysql-test/t/ctype_ucs2_def-master.opt@1.2, 2006-08-11 13:19:40+05:00, bar@mysql.com +1 -1
    Adding test case

  mysql-test/t/ctype_ucs2_def.test@1.2, 2006-08-11 13:19:40+05:00, bar@mysql.com +5 -0
    Adding test case

  sql/mysqld.cc@1.616, 2006-08-11 13:19:40+05:00, bar@mysql.com +4 -2
    Don't clear default_collation_name when processing 
    --character-set-server if collation has already
    been specified using --collation-server
    

ChangeSet@1.2522.18.1, 2006-08-11 13:14:26+05:00, bar@mysql.com +1 -0
  Bug#7192 Specify --with-collation doesn't work for connections?
  --with-collation worked only on the server side.
  Client side ignored this argument, so collation_connection
  was not properly set (remained latin1_swedish_ci).
  

  sql-common/client.c@1.91, 2006-08-11 13:14:24+05:00, bar@mysql.com +31 -2
    - Take into account MYSQL_DEFAULT_COLLATION_NAME if
    character set is not set using mysql_option(), to
    honor --with-collation argument to configure.
    - Use default collation for the character set when it's
    not set using mysql_option().
    

ChangeSet@1.1346.1.847, 2006-08-10 22:41:19+03:00, monty@mysql.com +8 -0
  Better bug fix for #14400 "Query joins wrong rows from table which is subject of "concurrent insert""
  The previous bug fix didn't work when using partial keys.
  Don't use GNUC min/max operations are they are depricated.
  Fixed valgrind warning

  BitKeeper/etc/ignore@1.107.1.61, 2006-08-10 22:41:12+03:00, monty@mysql.com +1 -2
    Added */.libs/*

  BitKeeper/etc/ignore@1.107.1.60, 2006-08-10 22:37:01+03:00, monty@mysql.com +1 -0
    added *.Plo

  BitKeeper/etc/ignore@1.107.1.59, 2006-08-10 22:35:50+03:00, monty@mysql.com +1 -0
    added *.Po

  BitKeeper/etc/ignore@1.107.1.58, 2006-08-10 22:35:42+03:00, monty@mysql.com +1 -0
    added .deps

  BitKeeper/etc/ignore@1.107.1.57, 2006-08-10 22:33:59+03:00, monty@mysql.com +1 -0
    added */.deps

  BitKeeper/etc/ignore@1.107.1.56, 2006-08-10 22:32:00+03:00, monty@mysql.com +1 -0
    added .deps

  include/my_global.h@1.34.1.41, 2006-08-10 22:41:14+03:00, monty@mysql.com +1 -4
    Don't use GNUC min/max operations are they are depricated

  myisam/mi_rkey.c@1.11.1.5, 2006-08-10 22:41:15+03:00, monty@mysql.com +30 -23
    Better bug fix for #14400 "Query joins wrong rows from table which is subject of "concurrent insert""
    The previous bug fix didn't work when using partial keys.

  myisam/mi_test_all.res@1.4, 2006-08-10 22:41:15+03:00, monty@mysql.com +42 -42
    Updated results to match mi_test_all.sh

  myisam/mi_test_all.sh@1.8, 2006-08-10 22:41:15+03:00, monty@mysql.com +2 -1
    Removed confusing warning

  mysql-test/r/myisam.result@1.10.1.22, 2006-08-10 22:41:16+03:00, monty@mysql.com +15 -0
    Added test case for #14400

  mysql-test/t/myisam.test@1.7.1.21, 2006-08-10 22:41:17+03:00, monty@mysql.com +17 -0
    Added test case for #14400

  sql/sql_select.cc@1.152.1.144, 2006-08-10 22:41:18+03:00, monty@mysql.com +12 -2
    Fixed valgrind warning (in field_string::val_int())

ChangeSet@1.2522.1.11, 2006-08-10 22:55:20+08:00, stewart@willster.(none) +21 -0
  BUG#19914 SELECT COUNT(*) sometimes returns MAX_INT on cluster tables
  
  allow handler::info to return an error code (that will be returned to the user)

  sql/examples/ha_archive.cc@1.31, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +2 -2
    update handler::info interface to return int

  sql/examples/ha_archive.h@1.16, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +1 -1
    update handler::info interface to return int

  sql/examples/ha_example.cc@1.13, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +2 -2
    update handler::info interface to return int

  sql/examples/ha_example.h@1.10, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +1 -1
    update handler::info interface to return int

  sql/examples/ha_tina.cc@1.11, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +2 -2
    update handler::info interface to return int

  sql/examples/ha_tina.h@1.3, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +1 -1
    update handler::info interface to return int

  sql/ha_berkeley.cc@1.154, 2006-08-10 22:55:17+08:00, stewart@willster.(none) +2 -2
    update handler::info interface to return int

  sql/ha_berkeley.h@1.70, 2006-08-10 22:55:17+08:00, stewart@willster.(none) +1 -1
    update handler::info interface to return int

  sql/ha_heap.cc@1.61, 2006-08-10 22:55:17+08:00, stewart@willster.(none) +2 -1
    update handler::info interface to return int

  sql/ha_heap.h@1.35, 2006-08-10 22:55:17+08:00, stewart@willster.(none) +1 -1
    update handler::info interface to return int

  sql/ha_innodb.cc@1.216, 2006-08-10 22:55:17+08:00, stewart@willster.(none) +3 -3
    update handler::info interface to return int

  sql/ha_innodb.h@1.81, 2006-08-10 22:55:17+08:00, stewart@willster.(none) +1 -1
    update handler::info interface to return int

  sql/ha_myisam.cc@1.163, 2006-08-10 22:55:17+08:00, stewart@willster.(none) +3 -1
    update handler::info interface to return int

  sql/ha_myisam.h@1.65, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +1 -1
    update handler::info interface to return int

  sql/ha_myisammrg.cc@1.63, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +2 -1
    update handler::info interface to return int

  sql/ha_myisammrg.h@1.39, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +1 -1
    update handler::info interface to return int

  sql/ha_ndbcluster.cc@1.191, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +16 -9
    update handler::info interface to return int

  sql/ha_ndbcluster.h@1.60, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +2 -2
    update handler::info interface to return int

  sql/handler.h@1.145, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +1 -1
    update handler::info interface to return int

  sql/opt_sum.cc@1.48.1.1, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +6 -1
    If we get an error when using handler::info to get count(*),
    print and return the error.

  sql/sql_select.cc@1.451.8.1, 2006-08-10 22:55:18+08:00, stewart@willster.(none) +2 -0
    if error, set fatal error.

ChangeSet@1.2522.17.1, 2006-08-10 16:45:02+03:00, gkodinov@macbook.gmz +6 -0
  Bug #16792 query with subselect, join, and group not returning proper values
   Treat queries with no FROM and aggregate functions as normal queries,
  so the aggregate function get correctly calculated as if there is 1 row. 
  This means that they will be considered to have one row, so COUNT(*) will return
  1 instead of 0. Other aggregates will behave in compatible manner.

  mysql-test/r/func_gconcat.result@1.47, 2006-08-10 16:44:52+03:00, gkodinov@macbook.gmz +2 -2
    Bug #16792 query with subselect, join, and group not returning proper values
     - test case. Note how it improves the support for DUAL.

  mysql-test/r/func_group.result@1.42, 2006-08-10 16:44:53+03:00, gkodinov@macbook.gmz +20 -4
    Bug #16792 query with subselect, join, and group not returning proper values
     - test case. Note how it improves the support for DUAL.

  mysql-test/r/subselect.result@1.180.1.1, 2006-08-10 16:44:53+03:00, gkodinov@macbook.gmz +2 -2
    Bug #16792 query with subselect, join, and group not returning proper values
     - consequence of (SELECT MAX(<const>)) now returning <const> instead of 0

  mysql-test/t/func_group.test@1.34, 2006-08-10 16:44:54+03:00, gkodinov@macbook.gmz +14 -0
    Bug #16792 query with subselect, join, and group not returning proper values
     - test case.

  sql/opt_sum.cc@1.49, 2006-08-10 16:44:55+03:00, gkodinov@macbook.gmz +2 -2
    Bug #16792 query with subselect, join, and group not returning proper values
     - cannot do the optimization if the index is already opened by (say) UPDATE
       as it invloves opening reading and closing the index.

  sql/sql_select.cc@1.451.1.14, 2006-08-10 16:44:55+03:00, gkodinov@macbook.gmz +15 -5
    Bug #16792 query with subselect, join, and group not returning proper values
     - Treat queries with no FROM and aggregate functions as normal queries,
    so the aggregate function get correctly calculated as if there is 1 row. 

ChangeSet@1.2522.6.10, 2006-08-10 15:37:24+02:00, tnurnberg@salvation.intern.azundris.com +3 -0
  Bug#19844: time_format in Union truncates values
  
  time_format() claimed %H and %k would return at most two digits
  (hours 0-23), but this coincided neither with actual behaviour
  nor with docs.  this is not visible in simple queries; forcing
  a temp-table is probably the easiest way to see this.  adjusted
  the return-length appropriately; the alternative would be to
  adjust the docs to say that behaviour for > 99 hours is undefined.
  ---
  Bug#19844: time_format in Union truncates values
  
  time_format() claimed %H and %k would return at most two digits
  (hours 0-23), but this coincided neither with actual behaviour
  nor with docs.  this is not visible in simple queries; forcing
  a temp-table is probably the easiest way to see this.  adjusted
  the return-length appropriately; the alternative would be to
  adjust the docs to say that behaviour for > 99 hours is undefined.

  mysql-test/r/func_time.result@1.41, 2006-08-10 15:37:22+02:00, tnurnberg@salvation.intern.azundris.com +21 -0
    Bug#19844: time_format in Union truncates values
    
    show time_format() handles %H and %k correctly four > 99 hours

  mysql-test/t/func_time.test@1.36, 2006-08-10 15:37:22+02:00, tnurnberg@salvation.intern.azundris.com +19 -1
    Bug#19844: time_format in Union truncates values
    
    show time_format() handles %H and %k correctly four > 99 hours

  sql/item_timefunc.cc@1.106, 2006-08-10 15:37:22+02:00, tnurnberg@salvation.intern.azundris.com +4 -2
    Bug#19844: time_format in Union truncates values
    
    unbreak promises we make about field-length of %H and %k in
    time_format() so they coincide with the actual range rather
    than just 0..23. the docs say we must operate outside that
    range, so we'd better do it right.
    ---
    Bug#19844: time_format in Union truncates values
    
    unbreak promises we make about field-length of %H and %k in
    time_format() so they coincide with the actual range rather
    than just 0..23. the docs say we must operate outside that
    range, so we'd better do it right.
    One digit values are padded to two digits with %H, "longer"
    values are handled correctly up to seven digits including
    any sign.
    (clarified comments as per jimw's suggestion.)

ChangeSet@1.2522.1.10, 2006-08-10 15:06:22+05:00, ramil@mysql.com +3 -0
  Fix for bug #20709: Collation not used in group by on 4.1.    
  
  myisam/mi_uniue.c:mi_check_unique() should skip trailing spaces comparing 
  TEXT and VARTTEXT key segments.

  myisam/mi_unique.c@1.22, 2006-08-10 15:06:20+05:00, ramil@mysql.com +1 -1
    Fix for bug #20709: Collation not used in group by on 4.1.    
    
    myisam/mi_uniue.c:mi_check_unique() should skip trailing spaces comparing 
    TEXT and VARTTEXT key segments.
      
    Example: assume, we have a 'char(200) collate utf8_unicode_ci' field,
    there are two records with _utf8"0x65" and _utf8"0xC3A9" characters;
    these values are equal according
    to the utf8_unicode_ci collation, but two 600 byte length corresponding keys:  
    "0x65<0x20 repeats 599 times>" and "0xC3A9<0x20 repeats 598 times>" are not    
    equal if we count trailing spaces and it may cause inconsequent behavior.
    
    So, let's pass 1 as the skip_end_space parameter value to the mi_compare_text()
    function for proper TEXT and VARTTEXT key segments comparison.

  mysql-test/r/ctype_utf8.result@1.69.3.1, 2006-08-10 15:06:20+05:00, ramil@mysql.com +16 -0
    Fix for bug #20709: Collation not used in group by on 4.1.    
      - test results.

  mysql-test/t/ctype_utf8.test@1.71.3.1, 2006-08-10 15:06:20+05:00, ramil@mysql.com +14 -0
    Fix for bug #20709: Collation not used in group by on 4.1.    
      - test case.

ChangeSet@1.2522.1.9, 2006-08-09 13:41:08-04:00, cmiller@zippy.cornsilk.net +2 -0
  Removed iggy's accidentally checked-in test files.

  BitKeeper/deleted/.del-bug20328.result@1.3, 2006-08-09 13:38:35-04:00, cmiller@zippy.cornsilk.net +0 -0
    Delete: mysql-test/r/bug20328.result

  BitKeeper/deleted/.del-bug20328.test@1.3, 2006-08-09 13:38:28-04:00, cmiller@zippy.cornsilk.net +0 -0
    Delete: mysql-test/t/bug20328.test

ChangeSet@1.2522.9.11, 2006-08-09 16:24:14+02:00, jonas@perch.ndb.mysql.com +3 -0
  ndb - bug#21536
    Make sure updateNodeInfo is run on master also for temporary tables

  ndb/src/kernel/blocks/dbdih/DbdihMain.cpp@1.38, 2006-08-09 16:24:13+02:00, jonas@perch.ndb.mysql.com +1 -0
    Run update nodeinfo also here to handle
      temprorary tables in some situations

  ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp@1.18, 2006-08-09 16:24:13+02:00, jonas@perch.ndb.mysql.com +6 -1
    new error insert

  ndb/test/ndbapi/testSystemRestart.cpp@1.10, 2006-08-09 16:24:13+02:00, jonas@perch.ndb.mysql.com +47 -0
    test case

ChangeSet@1.2522.16.1, 2006-08-09 14:28:39+05:00, svoj@may.pils.ru +1 -0
  BUG#20060 - mysqld option "--flush " doesn't work for update statement
  
  Problem described in this bug report affects MyISAM tables only.
  
  Running mysqld --flush instructs mysqld to sync all changes to disk
  after each SQL statement. It worked well for INSERT and DELETE
  statements, but it did sync for UPDATE only in case if there was
  index change (change of colum that has an index). If no updated column
  has an index, data wasn't synced to disk.
  
  This fix makes UPDATE statement to sync data to disk even if there is
  no index change (that is only data change) and mysqld is run with
  --flush option.

  myisam/mi_update.c@1.17, 2006-08-09 14:28:36+05:00, svoj@may.pils.ru +11 -1
    Every myisam function that updates myisam table must end with
    call to _mi_writeinfo(). If operation (second param of
    _mi_writeinfo()) is not 0 it sets share->changed to 1, that is
    flags that data has changed. If operation is 0, this function
    equals to no-op in this case.
    
    mi_update() must always pass !0 value as operation, since even if
    there is no index change there could be data change.

ChangeSet@1.2522.9.10, 2006-08-08 07:59:52+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#21213
    Make sure totSendlenAi is set in case of ACC_ABORTCONF and activeCreate == true
    (only needed when >2 replica)

  ndb/src/kernel/blocks/dblqh/DblqhMain.cpp@1.65, 2006-08-08 07:59:51+02:00, jonas@perch.ndb.mysql.com +1 -0
    Make sure totSendlenAi is set in case of ACC_ABORTCONF and activeCreate == true

ChangeSet@1.2522.9.9, 2006-08-07 09:41:39+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#18475
    Fix error message on copyfragref

  ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp@1.17, 2006-08-07 09:41:38+02:00, jonas@perch.ndb.mysql.com +4 -5
    Fix error message

ChangeSet@1.2522.9.8, 2006-08-04 09:43:23+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#21400
    Fix docs for NdbOpertation::sub_reg

  ndb/include/ndbapi/NdbOperation.hpp@1.20, 2006-08-04 09:43:22+02:00, jonas@perch.ndb.mysql.com +1 -1
    Fix docs for sub_reg

ChangeSet@1.2522.9.7, 2006-08-04 08:41:32+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#20296 (recommit in 4.1)
     Make sure that tupkeyErrorLab is run if interpretedUpdate(fail), so that entry is not inserted into index.
       Yeilding crash on following dml on tupel
  

  ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp@1.13, 2006-08-04 08:41:31+02:00, jonas@perch.ndb.mysql.com +6 -4
    Make sure that tupkeyErrorLab is run if interpretedUpdate(fail), so that entry is not inserted into index.
          Yeilding crash on following dml on tupe
    

ChangeSet@1.2522.11.2, 2006-08-03 19:20:30+03:00, gkodinov@macbook.gmz +4 -0
  Bug #21180: Subselect with index for both WHERE and ORDER BY produces empty result
   Reseting subqueries with "quick" access methods was incomplete.
   Partially backported the correct reseting of QUICK_SELECTs from 5.x.

  mysql-test/r/subselect.result@1.181, 2006-08-03 19:20:21+03:00, gkodinov@macbook.gmz +29 -0
    Bug #21180: Subselect with index for both WHERE and ORDER BY produces empty result
     - test case

  mysql-test/t/subselect.test@1.158, 2006-08-03 19:20:22+03:00, gkodinov@macbook.gmz +26 -0
    Bug #21180: Subselect with index for both WHERE and ORDER BY produces empty result
     - test case

  sql/opt_range.cc@1.148, 2006-08-03 19:20:23+03:00, gkodinov@macbook.gmz +13 -1
    Bug #21180: Subselect with index for both WHERE and ORDER BY produces empty result
     - partially backported the correct reseting of QUICK_SELECTs from 5.x.

  sql/opt_range.h@1.41, 2006-08-03 19:20:23+03:00, gkodinov@macbook.gmz +2 -2
    Bug #21180: Subselect with index for both WHERE and ORDER BY produces empty result
     - partially backported the correct reseting of QUICK_SELECTs from 5.x.

ChangeSet@1.2522.9.6, 2006-08-03 14:01:37+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#20892
    Fix bug in tup buddy allocator, which made it make invalid access to cfreepagelist[16] (which is not defined)

  ndb/src/kernel/blocks/dbtup/DbtupPagMan.cpp@1.6, 2006-08-03 14:01:35+02:00, jonas@perch.ndb.mysql.com +17 -13
    loop from firstListToCheck -1 (as firstListToCheck has already been checked), when looking for less than requested pages
    add if-statement for firtListToCheck == 0

ChangeSet@1.2522.15.2, 2006-08-03 12:16:24+02:00, msvensson@neptunus.(none) +1 -0
  Bug#21419 test case lowercase_fs_off fails on Windows
   - Backport patch from 5.0

  sql/mysqld.cc@1.615, 2006-08-03 12:16:20+02:00, msvensson@neptunus.(none) +5 -0
    Add else case to set "lower_case_file_system" also when lower_case_table_names are 1

ChangeSet@1.2522.13.1, 2006-08-03 14:03:08+05:00, svoj@may.pils.ru +3 -0
  BUG#7391 - Cross-database multi-table UPDATE uses active database
             privileges
  
  This problem is 4.1 specific. It doesn't affect 4.0 and was fixed
  in 5.x before.
  
  Having any mysql user who is allowed to issue multi table update
  statement and any column/table grants, allows this user to update
  any table on a server (mysql grant tables are not exception).
  
  check_grant() accepts number of tables (in table list) to be checked
  in 5-th param. While checking grants for multi table update, number
  of tables must be 1. It must never be 0 (actually we have
  DBUG_ASSERT(number > 0) in 5.x in grant_check() function).

  mysql-test/r/grant.result@1.42, 2006-08-03 14:03:05+05:00, svoj@may.pils.ru +5 -4
    Addition to test case for bug#7391:
    - Added grant statement to trigger this problem in 4.1.
    - Fixed error messages.

  mysql-test/t/grant.test@1.35, 2006-08-03 14:03:05+05:00, svoj@may.pils.ru +6 -4
    Addition to test case for bug#7391:
    - Added grant statement to trigger this problem in 4.1.
    - Fixed error messages.

  sql/sql_update.cc@1.156, 2006-08-03 14:03:05+05:00, svoj@may.pils.ru +1 -1
    check_grant() accepts number of tables (in table list) to be checked
    in 5-th param. For this particular check number of tables must be 1.
    It must never be 0 (actually we have DBUG_ASSERT(number > 0) in 5.x
    in grant_check() function).

ChangeSet@1.2514.2.3, 2006-08-02 13:06:59-04:00, cmiller@zippy.cornsilk.net +3 -0
  Bug#9719: DELETE with WHERE on HEAP table just deletes first row of matched
  set.
  
  (Ramil's patch, recreated.)

  heap/hp_delete.c@1.14, 2006-08-02 13:06:58-04:00, cmiller@zippy.cornsilk.net +3 -0
    Reset info->lastkey_len for further heap_rnext/heap_rprev calls.

  mysql-test/r/heap_btree.result@1.18, 2006-08-02 13:06:58-04:00, cmiller@zippy.cornsilk.net +35 -0
    Test for bug #9719: DELETE with WHERE on HEAP table just deletes first 
    row of matched set.

  mysql-test/t/heap_btree.test@1.14, 2006-08-02 13:06:58-04:00, cmiller@zippy.cornsilk.net +19 -1
    Test for bug #9719: DELETE with WHERE on HEAP table just deletes first 
    row of matched set.

ChangeSet@1.2522.9.5, 2006-08-02 09:08:21+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb -
    Make possible to build both debug/release from compile-ndb-autotest

  BUILD/compile-ndb-autotest@1.2, 2006-08-02 09:08:20+02:00, jonas@perch.ndb.mysql.com +12 -2
    Make possible to build both debug/release from compile-ndb-autotest

ChangeSet@1.2453.51.14, 2006-08-01 16:55:41+02:00, jonas@perch.ndb.mysql.com +5 -0
  ndb - bug#21384
    handle error in TCKEYREQ during TCINDXREQ better

  ndb/src/kernel/blocks/ERROR_codes.txt@1.17.1.1, 2006-08-01 16:55:40+02:00, jonas@perch.ndb.mysql.com +2 -1
    new error code

  ndb/src/kernel/blocks/dbtc/Dbtc.hpp@1.25, 2006-08-01 16:55:40+02:00, jonas@perch.ndb.mysql.com +2 -2
    Add 3 values to isIndexOp

  ndb/src/kernel/blocks/dbtc/DbtcMain.cpp@1.68, 2006-08-01 16:55:40+02:00, jonas@perch.ndb.mysql.com +131 -28
    handle error in TCKEYREQ during TCINDXREQ

  ndb/test/ndbapi/testIndex.cpp@1.14, 2006-08-01 16:55:40+02:00, jonas@perch.ndb.mysql.com +52 -0
    Add testcase

  ndb/test/run-test/daily-basic-tests.txt@1.32.1.1, 2006-08-01 16:55:40+02:00, jonas@perch.ndb.mysql.com +4 -0
    Add testcase

ChangeSet@1.2522.8.2, 2006-08-01 15:18:21+05:00, holyfoot@mysql.com +1 -0
  bug #13717 embedded library dumps warnings on STDERR directly
  
  Here i just disabled STDERR warnings in embedded server
  Later we should get more defined about logs in the embedded server

  sql/log.cc@1.165, 2006-08-01 15:18:18+05:00, holyfoot@mysql.com +7 -0
    Log messages muted in embedded server

ChangeSet@1.2470.8.1, 2006-07-30 19:30:20+02:00, msvensson@shellback.(none) +1 -0
  BUG#21217 "mysqltest" client is inconsistent when to log a line number
   - Init start_lineno to 0

  client/mysqltest.c@1.195, 2006-07-30 19:30:17+02:00, msvensson@shellback.(none) +4 -2
    Init start_lineno to 0 and set it back to zero before comparing result file.

ChangeSet@1.2510.26.4, 2006-07-29 21:58:50+02:00, ingo@chilla.local +1 -0
  Bug#20719 - Reading dynamic records with write buffer could fail
  After merge fix

  myisam/mi_dynrec.c@1.37.1.2, 2006-07-29 21:58:48+02:00, ingo@chilla.local +3 -0
    Bug#20719 - Reading dynamic records with write buffer could fail
    After merge fix

ChangeSet@1.1346.1.846, 2006-07-29 17:24:48+02:00, kent@mysql.com +1 -0
  configure.in:
    Corrected typo

  configure.in@1.191.1.147, 2006-07-29 17:23:58+02:00, kent@mysql.com +1 -1
    Corrected typo

ChangeSet@1.1346.1.845, 2006-07-28 23:12:40+02:00, kent@mysql.com +2 -0
  Makefile.am, configure.in:
    Man page for mysqld command move to section 8 (bug#21220)

  configure.in@1.191.1.146, 2006-07-28 23:10:45+02:00, kent@mysql.com +4 -0
    Man page for mysqld command move to section 8 (bug#21220)

  man/Makefile.am@1.11, 2006-07-28 23:10:45+02:00, kent@mysql.com +2 -1
    Man page for mysqld command move to section 8 (bug#21220)

ChangeSet@1.1346.1.844, 2006-07-28 23:06:49+02:00, kent@mysql.com +1 -0
  make_binary_distribution.sh:
    Man page for "mysqld" command move to section 8 (bug#21220)

  scripts/make_binary_distribution.sh@1.49.1.15, 2006-07-28 23:05:44+02:00, kent@mysql.com +2 -2
    Man page for "mysqld" command move to section 8 (bug#21220)

ChangeSet@1.1346.1.843, 2006-07-28 22:57:57+02:00, kent@mysql.com +1 -0
  mysql.spec.sh:
    Man page for "mysqld" command move to section 8 (bug#21220)

  support-files/mysql.spec.sh@1.61.1.37, 2006-07-28 22:57:10+02:00, kent@mysql.com +1 -1
    Man page for "mysqld" command move to section 8 (bug#21220)

ChangeSet@1.2514.1.4, 2006-07-26 16:33:26-06:00, tsmith@siva.hindu.god +2 -0
  Bug #20402: DROP USER failure logged as ERROR rather than WARNING
  
  slave.cc, sql_acl.cc:
  - remove sql_print_error() for events that are not server errors

  sql/slave.cc@1.280, 2006-07-26 16:30:09-06:00, tsmith@siva.hindu.god +1 -1
    Bug #20402: DROP USER failure logged as ERROR rather than WARNING
    remove sql_print_error() for events that are not server errors

  sql/sql_acl.cc@1.177, 2006-07-26 16:30:09-06:00, tsmith@siva.hindu.god +0 -15
    Bug #20402: DROP USER failure logged as ERROR rather than WARNING
    remove sql_print_error() for events that are not server errors

ChangeSet@1.1346.878.1, 2006-07-26 12:36:10-04:00, iggy@rolltop.ignatz42.dyndns.org +1 -0
  Bug #18777: Mysqlhotcopy does not copy all the direcories.

  scripts/mysqlhotcopy.sh@1.43.1.4, 2006-07-26 12:36:09-04:00, iggy@rolltop.ignatz42.dyndns.org +4 -3
    Defined new raid directory regular expression variable that allows a mix of two alphanumeric characters.  Replaced hardcode raid directory regular expressions with new variable.

ChangeSet@1.2510.46.1, 2006-07-26 19:19:30+03:00, gkodinov@macbook.gmz +3 -0
  * Bug #20792: Incorrect results from aggregate subquery
  When processing aggregate functions all tables values are reset
  to NULLs at the end of each group. 
  When doing that if there are no rows found for a group
  the const tables must not be reset as they are not recalculated 
  by do_select()/sub_select() for each group.

  mysql-test/r/subselect2.result@1.9, 2006-07-26 19:19:23+03:00, gkodinov@macbook.gmz +12 -0
    * Bug #20792: Incorrect results from aggregate subquery
     - test suite for the bug. This is dependent on InnoDB despite
       the fact that the bug and the fix are not InnoDB specific.
       This is because of the table flag HA_NOT_EXACT_COUNT.
       When this flag is off (as in MyISAM) both t2 and t3 become of
       join type 'system' as they are estimated to have 1 record and
       and this statistics can be trusted (according to the absence of
       HA_NOT_EXACT_COUNT).

  mysql-test/t/subselect2.test@1.7, 2006-07-26 19:19:23+03:00, gkodinov@macbook.gmz +18 -0
    * Bug #20792: Incorrect results from aggregate subquery
     - test suite for the bug

  sql/sql_select.cc@1.451.6.1, 2006-07-26 19:19:24+03:00, gkodinov@macbook.gmz +8 -2
    * Bug #20792: Incorrect results from aggregate subquery
     - when clearing results if there are not rows found for group
       the const tables must not be reset as they are not recalculated
       for each group.

ChangeSet@1.2522.6.1, 2006-07-26 16:23:07+04:00, kroki@moonlight.intranet +2 -0
  BUG#21206: memory corruption when too many cursors are opened at once
  
  Too many cursors (more than 1024) could lead to memory corruption.
  This affects both, stored routines and C API cursors, and the
  threshold is per-server, not per-connection.  Similarly, the
  corruption could happen when the server was under heavy load
  (executing more than 1024 simultaneous complex queries), and this is
  the reason why this bug is fixed in 4.1, which doesn't support
  cursors.
  
  The corruption was caused by a bug in the temporary tables code, when
  an attempt to create a table could lead to a write beyond allocated
  space.  Note, that only internal tables were affected (the tables
  created internally by the server to resolve the query), not tables
  created with CREATE TEMPORARY TABLE.  Another pre-condition for the
  bug is TRUE value of --temp-pool startup option, which, however, is a
  default.
  
  The cause of a bug was that random memory was overwritten in
  bitmap_set_next() due to out-of-bound memory access.

  mysys/my_bitmap.c@1.22, 2006-07-26 16:23:05+04:00, kroki@moonlight.intranet +1 -1
    Local 'bitmap_size' is measured in bytes, no need to multiply it by 8.

  sql/sql_select.cc@1.451.5.1, 2006-07-26 16:23:05+04:00, kroki@moonlight.intranet +8 -4
    Clear the temp_pool_slot bit only if we have set it previously.

ChangeSet@1.2510.45.1, 2006-07-26 13:32:28+03:00, gkodinov@macbook.gmz +3 -0
  Bug #21019: First result of SELECT COUNT(*) different than consecutive runs
   When optimizing conditions like 'a = <some_val> OR a IS NULL' so that they're
   united into a single condition on the key and checked together the server must 
   check which value is the NULL value in a correct way : not only using ->is_null 
   but also check if the expression doesn't depend on any tables referenced in the 
   current statement. 
   This additional check must be performed because that optimization takes place 
   before the actual execution of the statement, so if the field was initialized 
   to NULL from a previous statement the optimization would be applied incorrectly.

  mysql-test/r/select.result@1.75.1.1, 2006-07-26 13:32:20+03:00, gkodinov@macbook.gmz +26 -0
    Bug #21019: First result of SELECT COUNT(*) different than consecutive runs
     - test case

  mysql-test/t/select.test@1.58.1.1, 2006-07-26 13:32:21+03:00, gkodinov@macbook.gmz +15 -0
    Bug #21019: First result of SELECT COUNT(*) different than consecutive runs
     - test case. 
       Note that ALTER TABLE is important here : it happens to
       leave the Field instance for t1.b set to NULL, witch is vital for
       demonstrating the problem fixed by this changeset.

  sql/sql_select.cc@1.451.4.1, 2006-07-26 13:32:22+03:00, gkodinov@macbook.gmz +5 -2
    Bug #21019: First result of SELECT COUNT(*) different than consecutive runs
     - check whether a value is null taking into account its table dependency.

ChangeSet@1.2522.5.1, 2006-07-26 11:08:15+02:00, msvensson@neptunus.(none) +1 -0
  Bug#21218 Test "mysqlbinlog" fails to execute another program on Windows
   - Modify test case to workaround the test tool problem
   - (Null merge into 5.0)

  mysql-test/t/mysqlbinlog.test@1.21.1.1, 2006-07-26 11:08:13+02:00, msvensson@neptunus.(none) +4 -2
    Send the ouput from "mysqlbinlog" to a file and then read execute it with "mysql"
    This is a workaround for a windows bug in the test tools in mysql-4.1, which makes
    it impossible to use "|" to send the output from one program directly to the other.
    This has been fixed in mysql-5.0. 

ChangeSet@1.2510.34.2, 2006-07-26 07:47:29+04:00, aivanov@mysql.com +1 -0
  Applied innodb-4.1-ss32 snapshot.

  innobase/ibuf/ibuf0ibuf.c@1.33, 2006-07-26 07:47:09+04:00, aivanov@mysql.com +6 -9
    Applied innodb-4.1-ss32 snapshot.
     ibuf_fixed_addr_page(): Add parameter space. As the insert
     buffer B-tree is only located in the system tablespace
     (space 0), IBUF_TREE_ROOT_PAGE_NO is only special in space 0.

ChangeSet@1.2481.10.2, 2006-07-26 11:44:52+10:00, stewart@willster.(none) +2 -0
  BUG#21204 ndb_size.pl doesn't take extended BLOB/TEXT size into account
  

  ndb/tools/ndb_size.pl@1.8, 2006-07-26 11:44:47+10:00, stewart@willster.(none) +76 -31
    disable 5.1-dd reporting as it's not ready yet.
    
    support BLOB tables with mostly accurate space estimate (our estimates
    will be slightly higher due to the fact we also calculate an ORDERED index
    on the BLOB table, something that NDB doesn't have).
    
    now have subroutine do_table that does the calculations for a table. We
    call this with a "fake" blob table to get estimates for blob usage.

  ndb/tools/ndb_size.tmpl@1.5, 2006-07-26 11:44:47+10:00, stewart@willster.(none) +2 -0
    Add column in columns table for if column is VARSIZED

ChangeSet@1.2510.44.1, 2006-07-26 01:11:19+03:00, timour@lamia.home +5 -0
  Fix for BUG#20954: avg(keyval) retuns 0.38 but max(keyval) returns an empty set
  
  The problem was in that opt_sum_query() replaced MIN/MAX functions
  with the corresponding constant found in a key, but due to imprecise
  representation of float numbers, when evaluating the where clause,
  this comparison failed.
  
  When MIN/MAX optimization detects that all tables can be removed,
  also remove all conjuncts in a where clause that refer to these
  tables. As a result of this fix, these conditions are not evaluated
  twice, and in the case of float number comparisons we do not discard
  result rows due to imprecise float representation.
  
  As a side-effect this fix also corrects an unnoticed problem in
  bug 12882.

  mysql-test/r/func_group.result@1.41, 2006-07-26 01:11:17+03:00, timour@lamia.home +2 -0
    BUG#20954 - test result adjustment.
    Adjusted the test result of bug 12882 which was not preperly fixed.
    The current patch corrects the problem that was fully corrected by the
    patch for 12882.
    
    The problem was that opt_sum_query() indicated that the optimizer may
    remove all tables because all MIN/MAX/COUNT functions are constants,
    but this lead to an empty result instead of NULL because the WHERE
    clause was still evaluated.
    
    The current fix removes all conjuncts in the where clause that
    reference the removed tables, and thus corrects the problem.

  mysql-test/r/select.result@1.76, 2006-07-26 01:11:17+03:00, timour@lamia.home +49 -0
    BUG#20954 - added test

  mysql-test/r/subselect.result@1.178.1.1, 2006-07-26 01:11:17+03:00, timour@lamia.home +1 -1
    BUG#20954 - test result adjustment.
    
    The fix removes those conditions in a where clause that refer to
    tables optimized away by MIN/MAX optimization (opt_sum_query()).

  mysql-test/t/select.test@1.59, 2006-07-26 01:11:17+03:00, timour@lamia.home +30 -0
    BUG#20954 - added test

  sql/sql_select.cc@1.451.1.10, 2006-07-26 01:11:18+03:00, timour@lamia.home +18 -0
    Fix for BUG#20954: avg(keyval) retuns 0.38 but max(keyval) returns an empty set
    
    When MIN/MAX optimization detects that all tables can be removed,
    also remove all conjuncts in a where clause that refer to these
    tables. As a result of this fix, these conditions are not evaluated
    twice, and in the case of float number comparisons we do not discard
    result rows due to imprecise float representation.
    
    As a side-effect this fix also corrects an unnoticed problem in
    bug 12882.

ChangeSet@1.2522.4.1, 2006-07-25 18:02:42+05:00, holyfoot@mysql.com +1 -0
  Bug #15440 (handler.test hangs in embedded mode)
  
  the old problem - mysqltest can't handle multiple connections in the
  embedded server properly. So i disabled the test for the embedded mode
  until mysqltest is fixed

  mysql-test/t/handler.test@1.26, 2006-07-25 18:02:39+05:00, holyfoot@mysql.com +1 -0
    test temporarily disabled in embedded server

ChangeSet@1.2522.1.6, 2006-07-25 17:27:53+05:00, bar@mysql.com +3 -0
  Bug#19741 segfault with cp1250 charset + like + primary key + 64bit os
  LIKE craashed with a pattern having letters in the range 128..255
  (e.g. A WITH ACUTE or C WITH CARON) because of wrong cast from
  signed char to unsigned int.

  mysql-test/r/ctype_cp1250_ch.result@1.5, 2006-07-25 17:27:49+05:00, bar@mysql.com +8 -0
    Adding test case

  mysql-test/t/ctype_cp1250_ch.test@1.5, 2006-07-25 17:27:49+05:00, bar@mysql.com +10 -0
    Adding test case

  strings/ctype-win1250ch.c@1.48, 2006-07-25 17:27:49+05:00, bar@mysql.com +2 -2
    Fixing wrong cast from "signed char" -> "uint" to
    "signed char" -> "unsigned char" -> uint, to properly
    handle bytes 128..255.

ChangeSet@1.2522.1.4, 2006-07-24 18:12:57+02:00, msvensson@neptunus.(none) +1 -0
  Bug#21218 Test "mysqlbinlog" fails to execute another program on Windows
   - Send confusing output to /dev/null

  mysql-test/t/mysqlbinlog.test@1.22, 2006-07-24 18:12:55+02:00, msvensson@neptunus.(none) +6 -5
    Send confusing error messages to /dev/null so they don't appear in erro log if test case fails

ChangeSet@1.2522.2.1, 2006-07-24 14:31:37+02:00, msvensson@neptunus.(none) +2 -0
  Bug#21125 mysqldump: Problem with non-standard table names
   - The mysql-test/std_data/bug15328.cnf file was not copied to install or dist dir.

  mysql-test/Makefile.am@1.54, 2006-07-24 14:31:36+02:00, msvensson@neptunus.(none) +2 -0
    Add std_data/*.cnf files to dist_hook and install-data-local

  scripts/make_win_src_distribution.sh@1.40, 2006-07-24 14:31:36+02:00, msvensson@neptunus.(none) +1 -1
    Copy *.cnf files as well.

ChangeSet@1.1346.1.842, 2006-07-24 10:55:26+02:00, kent@mysql.com +3 -0
  mwasmnlm, mwccnlm, mwldnlm:
    Filter out strange control characters, messes up logs

  netware/BUILD/mwasmnlm@1.4, 2006-07-24 10:55:09+02:00, kent@mysql.com +4 -1
    Filter out strange control characters, messes up logs

  netware/BUILD/mwccnlm@1.4, 2006-07-24 10:55:09+02:00, kent@mysql.com +4 -1
    Filter out strange control characters, messes up logs

  netware/BUILD/mwldnlm@1.4, 2006-07-24 10:55:09+02:00, kent@mysql.com +4 -1
    Filter out strange control characters, messes up logs

ChangeSet@1.2510.36.8, 2006-07-22 02:36:17+04:00, sergefp@mysql.com +2 -0
  Add missing "DROP TABLE" clause

  mysql-test/r/subselect.result@1.179, 2006-07-22 02:36:15+04:00, sergefp@mysql.com +1 -0
    Add missing "DROP TABLE" clause

  mysql-test/t/subselect.test@1.157, 2006-07-22 02:36:15+04:00, sergefp@mysql.com +1 -0
    Add missing "DROP TABLE" clause

ChangeSet@1.1346.877.1, 2006-07-21 12:22:41+02:00, ingo@chilla.local +1 -0
  Bug#20719 - Reading dynamic records with write buffer could fail
  
  Fixed a possible problem with reading of dynamic records
  when a write cache is active. The cache must be flushed
  whenever a part of the file in the write cache is to be 
  read.
  
  Added a read optimization to _mi_read_dynamic_record().
  
  No test case. This was a hypothetical but existing problem.

  myisam/mi_dynrec.c@1.33.1.2, 2006-07-21 12:22:39+02:00, ingo@chilla.local +129 -28
    Bug#20719 - Reading dynamic records with write buffer could fail
    
    Fixed a possible problem with reading of dynamic records
    when a write cache is active. The cache must be flushed
    whenever a part of the file in the write cache is to be 
    read. This must be done before the read of the header
    and before the read of the rest block.
    
    Renamed the 'flag' and 'skipp_deleted_blocks' variables.
    
    Added a read optimization to _mi_read_dynamic_record()
    that was present in _mi_read_rnd_dynamic_record() already.
    After _mi_get_block_info() we have some bytes of the record
    in the header buffer already. No need to read them again.

ChangeSet@1.2510.36.7, 2006-07-21 03:04:04+04:00, sergefp@mysql.com +8 -0
  BUG#20975: Incorrect query result for NOT (subquery):
    Add implementations of Item_func_{nop,not}_all::neg_transformer

  mysql-test/r/subselect.result@1.178, 2006-07-21 03:04:02+04:00, sergefp@mysql.com +26 -0
    BUG#20975: testcase

  mysql-test/t/subselect.test@1.156, 2006-07-21 03:04:02+04:00, sergefp@mysql.com +16 -0
    BUG#20975: testcase

  sql/item_cmpfunc.cc@1.213, 2006-07-21 03:04:02+04:00, sergefp@mysql.com +22 -0
    BUG#20975: Incorrect query result for NOT (subquery):
      Add implementations of Item_func_{nop,not}_all::neg_transformer

  sql/item_cmpfunc.h@1.117, 2006-07-21 03:04:02+04:00, sergefp@mysql.com +2 -0
    BUG#20975: Incorrect query result for NOT (subquery):
      Add implementations of Item_func_{nop,not}_all::neg_transformer

  sql/item_subselect.cc@1.142, 2006-07-21 03:04:02+04:00, sergefp@mysql.com +3 -3
    BUG#20975: Incorrect query result for NOT (subquery):
      Add implementations of Item_func_{nop,not}_all::neg_transformer

  sql/item_subselect.h@1.63, 2006-07-21 03:04:02+04:00, sergefp@mysql.com +4 -5
    BUG#20975: Incorrect query result for NOT (subquery):
      Add implementations of Item_func_{nop,not}_all::neg_transformer

  sql/mysql_priv.h@1.378.1.1, 2006-07-21 03:04:02+04:00, sergefp@mysql.com +2 -1
    Make chooser_compare_func_creator visible in item.h

  sql/sql_parse.cc@1.483.1.1, 2006-07-21 03:04:02+04:00, sergefp@mysql.com +1 -1
    BUG#20975: Incorrect query result for NOT (subquery):
      Add implementations of Item_func_{nop,not}_all::neg_transformer

ChangeSet@1.2523, 2006-07-20 15:52:48+05:00, bar@mysql.com +6 -0
  Bug#20471 LIKE search fails with indexed utf8 char column
  The main problem was already fixed by Igor under terms of 16674.
  Adding some additional minor fixes and tests.

  include/m_ctype.h@1.108, 2006-07-20 15:52:44+05:00, bar@mysql.com +4 -0
    Adding reference to CHARSET_INFO.txt

  mysql-test/r/ctype_utf8.result@1.69.1.5, 2006-07-20 15:52:44+05:00, bar@mysql.com +75 -0
    Adding test case

  mysql-test/t/ctype_utf8.test@1.71.1.5, 2006-07-20 15:52:44+05:00, bar@mysql.com +70 -0
    Adding test case

  strings/CHARSET_INFO.txt@1.5, 2006-07-20 15:52:44+05:00, bar@mysql.com +10 -2
    Adding comment about max_sort_char

  strings/ctype-mb.c@1.43, 2006-07-20 15:52:44+05:00, bar@mysql.com +17 -4
    Restiring that non-Unicode character sets use 0xFF as pad character
    for max_str. Only Unicode character sets use wc_mb.

  strings/ctype-utf8.c@1.90, 2006-07-20 15:52:44+05:00, bar@mysql.com +1 -1
    Fixed that max_sort_char for UTF8 from U+00FF to U+FFFF.

ChangeSet@1.2514.1.3, 2006-07-19 17:39:53-04:00, iggy@rolltop.ignatz42.dyndns.org +2 -0
  Manual merge required.

  mysql-test/r/mysql_client.result@1.2, 2006-07-19 17:39:51-04:00, iggy@rolltop.ignatz42.dyndns.org +44 -0
    manual merge

  mysql-test/t/mysql_client.test@1.2, 2006-07-19 17:39:51-04:00, iggy@rolltop.ignatz42.dyndns.org +6 -0
    manual merge

ChangeSet@1.2510.36.6, 2006-07-19 12:36:55-07:00, igor@olga.mysql.com +4 -0
  Fixed bug #17526: incorrect print method
  for class Item_func_trim. 
  For 4.1 it caused wrong output for EXPLAIN EXTENDED commands
  if expressions with the TRIM function of two arguments were used.
  For 5.0 it caused an error message when trying to select
  from a view with the TRIM function of two arguments.
  This unexpected error message was due to the fact that the
  print method for the class Item_func_trim was inherited from
  the class Item_func. Yet the TRIM function does not take a list
  of its arguments. Rather it takes the arguments in the form:
    [{BOTH | LEADING | TRAILING} [remstr] FROM] str) |
    [remstr FROM] str

  mysql-test/r/func_str.result@1.103, 2006-07-19 12:36:54-07:00, igor@olga.mysql.com +28 -0
    Added a test case for bug #17526: uncorrect print method
    for class Item_func_trim.

  mysql-test/t/func_str.test@1.85, 2006-07-19 12:36:54-07:00, igor@olga.mysql.com +15 -0
    Added a test case for bug #17526: incorrect print method
    for class Item_func_trim.

  sql/item_strfunc.cc@1.246.1.1, 2006-07-19 12:36:54-07:00, igor@olga.mysql.com +17 -0
    Fixed bug #17526: incorrect print method
    for class Item_func_trim.
        
    Added an implementation for the virtual function print
    in the class Item_func_trim.
    The implementation takes into account the fact the TRIM
    function takes the arguments in the following forms:
      [{BOTH | LEADING | TRAILING} [remstr] FROM] str) |
      [remstr FROM] str

  sql/item_strfunc.h@1.103, 2006-07-19 12:36:54-07:00, igor@olga.mysql.com +4 -0
    Fixed bug #17526: incorrect print method
    for class Item_func_trim.
        
    Added an implementation for the virtual function print
    in the class Item_func_trim.
    Declared a virtual method to return the mode of the TRIM 
    function: LEADING, TRAILING or BOTH.
    Added implementations of this method for Item_func_trim and
    its descendants Item_func_ltrim and Item_func_rtrim.

ChangeSet@1.2522, 2006-07-19 02:46:48+02:00, kent@mysql.com +1 -0
  mysql.spec.sh:
    Added new "mysql_explain_log" man page
    Added missing install of "myisam_ftdump" man page
    Added missing install of "mysqlman" man page

  support-files/mysql.spec.sh@1.122, 2006-07-19 02:23:53+02:00, kent@mysql.com +3 -0
    Added new "mysql_explain_log" man page
    Added missing install of "myisam_ftdump" man page
    Added missing install of "mysqlman" man page

ChangeSet@1.2520, 2006-07-18 15:53:12+05:00, bar@mysql.com +2 -0
  Backporting Kostja's changes made for 5.0 into 4.1.
  Please use "ul" when merging this changeset to 5.0.

  sql/item_timefunc.cc@1.105, 2006-07-18 15:53:06+05:00, bar@mysql.com +3 -2
    Fix a valgrind warning in type_date test.

  sql/sql_locale.cc@1.1.1.1, 2006-07-18 15:53:07+05:00, bar@mysql.com +109 -109
    Fix a Windows build failure:  "false" -> FALSE

ChangeSet@1.2518, 2006-07-15 00:24:35+02:00, kent@mysql.com +1 -0
  mysql.spec.sh:
    Command "ndb_mgm" is an optional tool, and should only be in "ndb-tools" package (bug#21058)

  support-files/mysql.spec.sh@1.121, 2006-07-15 00:24:14+02:00, kent@mysql.com +0 -1
    Command "ndb_mgm" is an optional tool, and should only be in "ndb-tools" package (bug#21058)

ChangeSet@1.2510.43.1, 2006-07-14 15:22:16-04:00, iggy@rolltop.ignatz42.dyndns.org +2 -0
  Bug #20721: mysql_install_db first line is blank.
  
  Minor script changes for uniformity.

  scripts/fill_func_tables.sh@1.3, 2006-07-14 15:22:14-04:00, iggy@rolltop.ignatz42.dyndns.org +8 -3
    Switched to standard !@PERL@ usage.  Added Copyright and more specific original author information.

  scripts/mysql_install_db.sh@1.74, 2006-07-14 15:22:14-04:00, iggy@rolltop.ignatz42.dyndns.org +0 -1
    Removed leading empty line.

ChangeSet@1.2517, 2006-07-14 17:55:34+02:00, joerg@trift2. +1 -0
  Increment the version number to 4.1.22, as 4.1.21 is cloned.

  configure.in@1.414, 2006-07-14 17:55:31+02:00, joerg@trift2. +2 -2
    Increment the version number to 4.1.22, as 4.1.21 is cloned.

ChangeSet@1.2510.41.1, 2006-07-13 00:31:47-07:00, igreenhoe@anubis.greendragongames.com +1 -0
  Fix for Bug #19364 "mysql --help gives old informations".
  
  Old option ordering in the help was confusing to some users.  Changed
  ordering of deprecated options to be consistent, and added mention to
  entry for options with a "--no-option" variant mentioning the
  "--disable-option" variant.

  client/mysql.cc@1.218.3.1, 2006-07-13 00:31:43-07:00, igreenhoe@anubis.greendragongames.com +10 -12
    Rearranged options for clarity.  Deprecated "--no-X" options now
    follow the "--X" option, and all of the "--X" options that have a
    "--no-X" variant now mention the "--disable-X" variant.

ChangeSet@1.2510.40.2, 2006-07-12 10:57:38+03:00, gkodinov@macbook.gmz +3 -0
  Bug #17212 results not sorted correctly by ORDER BY when using index
    * don't use join cache when the incoming data set is already ordered
      for ORDER BY
      This choice must be made because join cache will effectively
      reverse the join order and the results will be sorted by the index
      of the table that uses join cache.

  mysql-test/r/innodb_mysql.result@1.4, 2006-07-12 10:57:30+03:00, gkodinov@macbook.gmz +29 -0
    Bug #17212 results not sorted correctly by ORDER BY when using index
      * Test suite for the bug

  mysql-test/t/innodb_mysql.test@1.4, 2006-07-12 10:57:31+03:00, gkodinov@macbook.gmz +33 -0
    Bug #17212 results not sorted correctly by ORDER BY when using index
      * Test suite for the bug

  sql/sql_select.cc@1.451.1.9, 2006-07-12 10:57:32+03:00, gkodinov@macbook.gmz +19 -1
    Bug #17212 results not sorted correctly by ORDER BY when using index
      * don't use join cache when the incoming data set is already sorted

ChangeSet@1.2510.39.1, 2006-07-12 01:52:18+04:00, evgen@moonbone.local +3 -0
  Fixed bug#18503: Queries with a quantified subquery returning empty set
  may return a wrong result.
  
  An Item_sum_hybrid object has the was_values flag which indicates whether any
  values were added to the sum function. By default it is set to true and reset
  to false on any no_rows_in_result() call. This method is called only in
  return_zero_rows() function. An ALL/ANY subquery can be optimized by MIN/MAX
  optimization. The was_values flag is used to indicate whether the subquery
  has returned at least one row. This bug occurs because return_zero_rows() is
  called only when we know that the select will return zero rows before
  starting any scans but often such information is not known.
  In the reported case the return_zero_rows() function is not called and
  the was_values flag is not reset to false and yet the subquery return no rows
  Item_func_not_all and Item_func_nop_all functions return a wrong
  comparison result.
  
  The end_send_group() function now calls no_rows_in_result() for each item
  in the fields_list if there is no rows were found for the (sub)query.

  mysql-test/r/subselect.result@1.175.1.1, 2006-07-12 01:41:19+04:00, evgen@moonbone.local +15 -0
    Added test case for bug#18503: Queries with a quantified subquery returning empty set may return a wrong result.
    

  mysql-test/t/subselect.test@1.153.1.1, 2006-07-12 01:41:01+04:00, evgen@moonbone.local +14 -0
    Added test case for bug#18503: Queries with a quantified subquery returning empty set may return a wrong result.

  sql/sql_select.cc@1.451.3.1, 2006-07-12 01:41:22+04:00, evgen@moonbone.local +5 -0
    Fixed bug#18503: Queries with a quantified subquery returning empty set may return a wrong result.
    
    The end_send_group() function now calls no_rows_in_result() for each item
    in the fields_list if there is no matching rows were found.

ChangeSet@1.2461.2.8, 2006-07-11 17:07:23+02:00, pekka@orca.ndb.mysql.com +1 -0
  ndb - (4.1) trivial fix to error.log (wday=0 was printed as "x")

  ndb/src/kernel/error/TimeModule.cpp@1.3, 2006-07-11 17:06:09+02:00, pekka@orca.ndb.mysql.com +1 -1
    0=Sunday

ChangeSet@1.2510.35.1, 2006-07-11 00:34:37+04:00, evgen@moonbone.local +3 -0
  Fixed bug#16302: Quantified subquery without any tables gives wrong results
  
  The ALL/ANY subqueries are the subject of MIN/MAX optimization. The matter
  of this optimization is to embed MIN() or MAX() function into the subquery
  in order to get only one row by which we can tell whether the expression
  with ALL/ANY subquery is true or false.
  But when it is applied to a subquery like 'select a_constant' the reported bug
  occurs. As no tables are specified in the subquery the do_select() function 
  isn't called for the optimized subquery and thus no values have been added 
  to a MIN()/MAX() function and it returns NULL instead of a_constant.
  This leads to a wrong query result.
  
  For the subquery like 'select a_constant' there is no reason to apply
  MIN/MAX optimization because the subquery anyway will return at most one row.
  Thus the Item_maxmin_subselect class is more appropriate for handling such
  subqueries.
  
  The Item_in_subselect::single_value_transformer() function now checks
  whether tables are specified for the subquery. If no then this subselect is
  handled like a UNION using an Item_maxmin_subselect object.

  mysql-test/r/subselect.result@1.176, 2006-07-11 00:21:47+04:00, evgen@moonbone.local +18 -0
    Added test case for bug#16302: Quantified subquery without any tables gives wrong results

  mysql-test/t/subselect.test@1.154, 2006-07-11 00:21:29+04:00, evgen@moonbone.local +10 -0
    Added test case for bug#16302: Quantified subquery without any tables gives wrong results

  sql/item_subselect.cc@1.141, 2006-07-11 00:22:03+04:00, evgen@moonbone.local +2 -1
    Fixed bug#16302: Quantified subquery without any tables gives wrong results
     
    The Item_in_subselect::single_value_transformer() function now checks
    whether tables are specified for the subquery. If no then this subselect is
    handled like a UNION using an Item_maxmin_subselect object.

ChangeSet@1.2477.11.1, 2006-07-10 16:27:03+03:00, gkodinov@mysql.com +7 -0
  BUG#14553: NULL in WHERE resets LAST_INSERT_ID
  
  To make MySQL compatible with some ODBC applications, you can find
  the AUTO_INCREMENT value for the last inserted row with the following query:
   SELECT * FROM tbl_name WHERE auto_col IS NULL.
  This is done with a special code that replaces 'auto_col IS NULL' with
  'auto_col = LAST_INSERT_ID'.
  However this also resets the LAST_INSERT_ID to 0 as it uses it for a flag
  so as to ensure that only the first SELECT ... WHERE auto_col IS NULL
  after an INSERT has this special behaviour.
  In order to avoid resetting the LAST_INSERT_ID a special flag is introduced
  in the THD class. This flag is used to restrict the second and subsequent
  SELECTs instead of LAST_INSERT_ID.

  mysql-test/r/odbc.result@1.9, 2006-07-10 16:27:01+03:00, gkodinov@mysql.com +11 -0
    test suite for the bug

  mysql-test/r/rpl_insert_id.result@1.12, 2006-07-10 16:27:01+03:00, gkodinov@mysql.com +14 -0
    test for the fix in replication

  mysql-test/t/odbc.test@1.7, 2006-07-10 16:27:01+03:00, gkodinov@mysql.com +10 -0
    test suite for the bug

  mysql-test/t/rpl_insert_id.test@1.12, 2006-07-10 16:27:01+03:00, gkodinov@mysql.com +19 -1
    test for the fix in replication

  sql/sql_class.cc@1.204.1.2, 2006-07-10 16:27:01+03:00, gkodinov@mysql.com +1 -0
    initialize the flag

  sql/sql_class.h@1.285.1.1, 2006-07-10 16:27:01+03:00, gkodinov@mysql.com +3 -0
    flag's declaration and set code when setting the last_insert_id

  sql/sql_select.cc@1.451.2.1, 2006-07-10 16:27:01+03:00, gkodinov@mysql.com +2 -2
    the special flag is used instead of last_insert_id

ChangeSet@1.2453.51.13, 2006-07-07 16:01:35+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#20904
    Reset logpartstate if file_change_problem after writeing of zero page is done

  ndb/src/kernel/blocks/dblqh/DblqhMain.cpp@1.64, 2006-07-07 16:01:30+02:00, jonas@perch.ndb.mysql.com +14 -0
    ndb - bug#20904
      Reset logpartstate if file_change_problem after writeing of zero page is done

ChangeSet@1.2510.30.1, 2006-07-06 11:11:49-07:00, igor@olga.mysql.com +4 -0
  Fixed bug #18243.
  The implementation of the method Item_func_reverse::val_str
  for the REVERSE function modified the argument of the function.
  This led to wrong results for expressions that contained
  REVERSE(ref) if ref occurred somewhere else in the expressions.

  mysql-test/r/func_str.result@1.102, 2006-07-06 11:11:46-07:00, igor@olga.mysql.com +15 -0
    Added a test case for bug #18243.

  mysql-test/t/func_str.test@1.84, 2006-07-06 11:11:46-07:00, igor@olga.mysql.com +17 -0
    Added a test case for bug #18243.

  sql/item_strfunc.cc@1.246, 2006-07-06 11:11:46-07:00, igor@olga.mysql.com +21 -18
    Fixed bug #18243.
    The implementation of the method Item_func_reverse::val_str
    for the REVERSE function modified the argument of the function.
    This led to wrong results for expressions that contained
    REVERSE(ref) if ref occurred somewhere else in the expressions.
    
    The implementation of Item_func_reverse::val_str has been changed
    to make the argument intact.

  sql/item_strfunc.h@1.102, 2006-07-06 11:11:46-07:00, igor@olga.mysql.com +1 -0
    Fixed bug #18243.
    Added tmp_value to the Item_func_reverse class to store
    the result of the function. It erroneously replaced the 
    argument before this fix.

ChangeSet@1.2510.23.1, 2006-07-04 13:28:30+04:00, sergefp@mysql.com +1 -0
  Better comments for void Item::top_level_item()

  sql/item.h@1.195, 2006-07-04 13:28:25+04:00, sergefp@mysql.com +9 -2
    Better comments for void Item::top_level_item()

ChangeSet@1.2510.1.18, 2006-07-03 14:54:09+05:00, holyfoot@deer.(none) +2 -0
  bug 20317 (test fails in embedded for different number of threads is
  running)
  
  I decided to make ps_1general test independent from actual number of
  threads running

  mysql-test/r/ps_1general.result@1.24, 2006-07-03 14:49:46+05:00, holyfoot@mysql.com +1 -1
    result fixed

  mysql-test/t/ps_1general.test@1.16, 2006-07-03 14:49:46+05:00, holyfoot@mysql.com +1 -0
    as i think we don't really care about the number of threads running
    i just replace the number with '#'

ChangeSet@1.2510.13.2, 2006-06-29 17:06:28-04:00, iggy@mysql.com +3 -0
  Bug#20328 mysql client: dumb about trailing spaces on help command.

  mysql-test/r/mysql_client.result@1.1, 2006-06-29 17:06:25-04:00, iggy@mysql.com +44 -0
    Test trailing spaces on the help command.

  mysql-test/r/mysql_client.result@1.0, 2006-06-29 17:06:25-04:00, iggy@mysql.com +0 -0
    BitKeeper file /mnt/storeage/mysql-4.1_bug20328/mysql-test/r/mysql_client.result

  mysql-test/t/mysql_client.test@1.1, 2006-06-29 17:06:25-04:00, iggy@mysql.com +9 -0
    Result trailing spaces on the help command.

  mysql-test/t/mysql_client.test@1.0, 2006-06-29 17:06:25-04:00, iggy@mysql.com +0 -0
    BitKeeper file /mnt/storeage/mysql-4.1_bug20328/mysql-test/t/mysql_client.test

  client/mysql.cc@1.218.1.1, 2006-06-29 17:06:25-04:00, iggy@mysql.com +14 -3
    Remove trailing spaces from help arguments in com_server_help. 
    Disregard trailing spaces from command in com_help.

ChangeSet@1.2510.3.8, 2006-06-27 20:10:49-04:00, iggy@mysql.com +3 -0
  Bug#16180 Setting SQL_LOG_OFF without SUPER privilege is silently ignored

  mysql-test/r/grant2.result@1.16, 2006-06-27 20:10:46-04:00, iggy@mysql.com +10 -0
    Added results for bug#16180

  mysql-test/t/grant2.test@1.17, 2006-06-27 20:10:46-04:00, iggy@mysql.com +17 -0
    Added test for bug# 16180

  sql/set_var.cc@1.183, 2006-06-27 20:10:46-04:00, iggy@mysql.com +2 -1
    Verify user has appropiate rights before setting the sql_log_off system variable.

ChangeSet@1.2470.1.4, 2006-06-21 09:20:55+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb autotest -
    add BUILD/compile-ndb-autotest to simplify building autotest on different mysql versions

  BUILD/compile-ndb-autotest@1.1, 2006-06-21 09:20:52+02:00, jonas@perch.ndb.mysql.com +9 -0
    New BitKeeper file ``BUILD/compile-ndb-autotest''

  BUILD/compile-ndb-autotest@1.0, 2006-06-21 09:20:52+02:00, jonas@perch.ndb.mysql.com +0 -0
    BitKeeper file /home/jonas/src/41-jonas/BUILD/compile-ndb-autotest

ChangeSet@1.2490.1.1, 2006-06-14 13:40:21+05:00, bar@mysql.com +5 -0
  Bug#8663 cant use bgint unsigned as input to cast
  
  Problem: cast to unsigned limited result to 
  max signed bigint 9223372036854775808,
  instead of max unsigned bigint 18446744073709551615.
  
  Fix: don't use args[0]->val_int() when casting from
  a floating point number, use val() instead, with range checkings,
  special to unsigned data type.
  
  item_func.cc:
    Special handling of cast from REAL_RESULT
    to unsigned int: we cannot execute args[0]->val_int()
    because it cuts max allowed value to LONGLONG_INT,
    instead of ULONGLONG_INT required.
  count_distinct3.test:
    Getting rid of "Data truncated; out of range ..." warnings.
  cast.test, cast.result:
    Adding test case.
  ps.result:
    Fixing that cast from 6570515219.6535 
    to unsigned didn't round to 6570515220,
    and returned 6570515219 instead.

  mysql-test/r/cast.result@1.25.1.1, 2006-06-14 13:29:30+05:00, bar@mysql.com +3 -0
    Adding test case.

  mysql-test/r/ps.result@1.50, 2006-06-14 13:29:51+05:00, bar@mysql.com +7 -7
    Fixing that cast from 6570515219.6535 
    to unsigned didn't round to 6570515220,
    and returned 6570515219 instead.

  mysql-test/t/cast.test@1.22, 2006-06-14 13:31:00+05:00, bar@mysql.com +6 -0
    Adding test case.

  mysql-test/t/count_distinct3.test@1.5, 2006-06-14 13:31:30+05:00, bar@mysql.com +2 -0
    Get rid of "wring unsigned value"
    warnings.

  sql/item_func.cc@1.261.1.1, 2006-06-14 13:32:02+05:00, bar@mysql.com +20 -0
    Special handling of cast from REAL)RESULT
    to unsigned int: we cannot execute args[0]->val_int()
    because it cuts max allowed value to LONGLONG_INT,
    instead of ULONGLONG_INT required.

ChangeSet@1.2481.10.1, 2006-06-07 01:37:29+10:00, stewart@mysql.com +2 -0
  WL#3310 Update ndb_size.pl for 5.1
  
  the "If I had a hammer" patch.
  
  Had to answer the question, did it in code.
  
  Much more accurrate results for 5.1

  ndb/tools/ndb_size.pl@1.7, 2006-06-07 01:37:12+10:00, stewart@mysql.com +50 -30
    Add experimental 5.1-dd support to ndb_size.pl
    Improve calculations with 5.1 and variable sized attributes.
    
    Now much more closely resembles reality.

  ndb/tools/ndb_size.tmpl@1.4, 2006-06-07 01:37:12+10:00, stewart@mysql.com +16 -2
    Comment on 5.1-dd exp support.
    
    Display:
    - nr varsized attributes
    - actual row overhead depending on version
    - overhead for varsized attributes

ChangeSet@1.2477.8.2, 2006-06-02 22:33:22+05:00, holyfoot@deer.(none) +2 -0
  bug #19983 (mysql_client_test_embedded fails)

  libmysqld/lib_sql.cc@1.125.1.1, 2006-06-02 22:32:37+05:00, holyfoot@mysql.com +6 -2
    field length counting fixed

  tests/mysql_client_test.c@1.166.1.1, 2006-06-02 22:32:37+05:00, holyfoot@mysql.com +2 -0
    this test is not for embedded server as it tests kill command

ChangeSet@1.2477.4.1, 2006-05-17 17:00:30+05:00, ramil@mysql.com +3 -0
  Fix for #16327: invalid TIMESTAMP values retrieved

  mysql-test/r/func_time.result@1.39, 2006-05-17 17:00:25+05:00, ramil@mysql.com +7 -0
    Fix for #16327: invalid TIMESTAMP values retrieved
      - test result

  mysql-test/t/func_time.test@1.34, 2006-05-17 17:00:25+05:00, ramil@mysql.com +10 -0
    Fix for #16327: invalid TIMESTAMP values retrieved
      - test case

  sql/field.cc@1.230, 2006-05-17 17:00:25+05:00, ramil@mysql.com +1 -1
    Fix for #16327: invalid TIMESTAMP values retrieved
      - let 1969 as well

ChangeSet@1.2458.10.1, 2006-04-20 15:09:01+05:00, bar@mysql.com +3 -0
  Bug#9509: Optimizer: wrong result after AND with latin1_german2_ci comparisons
  
  Fixing part2 of this problem: AND didn't work well 
  with utf8_czech_ci and utf8_lithianian_ci in some cases.
  
  The problem was because when during condition optimization
  field was replaced with a constant, the constant's collation
  and collation derivation was used later for comparison instead
  of the field collation and derivation, which led to non-equal
  new condition in some cases.
  
  This patch copies collation and derivation from the field being removed
  to the new constant, which makes comparison work using the same collation
  with the one which would be used if no condition optimization were done.
  
  In other words:
  
    where s1 < 'K' and s1 = 'Y';
  
  was rewritten to:
  
    where 'Y' < 'K' and s1 = 'Y';
  
  Now it's rewritten to:
  
    where 'Y' collate collation_of_s1 < 'K' and s1 = 'Y'
  
    (using derivation of s1)
  
  
  Note, the first problem of this bug (with latin1_german2_ci) was fixed
  earlier in 5.0 tree, in a separate changeset.

  mysql-test/r/ctype_utf8.result@1.70, 2006-04-20 15:08:56+05:00, bar@mysql.com +31 -0
    Adding test case

  mysql-test/t/ctype_utf8.test@1.72, 2006-04-20 15:08:56+05:00, bar@mysql.com +18 -0
    Adding test case

  sql/sql_select.cc@1.452, 2006-04-20 15:08:56+05:00, bar@mysql.com +4 -0
    Set proper collation of the new item

ChangeSet@1.2458.4.1, 2006-04-17 12:33:45+05:00, bar@mysql.com +1 -0
  Bug#17939: Wrong table format when using UTF8 strings
  
  Lines with column names consisting of national letters
  were wrongly formatted in "mysql --table" results:
  
  mysql> SELECT 'xxx xxx xxx' as 'xxx xxx xxx';
  +-------------------+
  | xxx xxx xxx |
  +-------------------+
  | xxx xxx xxx       |
  +-------------------+
  1 row in set (0.00 sec)
  
  It happened because in UTF-8 (and other multibyte charsets)
  the number of display cells is not always equal to the number
  of bytes of the string.
  
  Data lines (unlike column name lines) were formatted correctly,
  because data lines were displayed taking in account number of
  display cells. This patch takes in account number of cells when
  displaying column names, the same way like displaying data lines does.
  
  Note: The patch is going to be applied to 4.1.
  Test case will be added after merge to 5.0,
  into "mysql.test", which appeared in 5.0.
  
  mysql.cc:
    Adding column name allignment using numcells(),
    the same to data alignment, which was implemented earlier.
  

  client/mysql.cc@1.219, 2006-04-17 12:14:15+05:00, bar@mysql.com +7 -2
    Adding column name allignment, the same to
    data alignment, which was implemented earlier.

