ChangeSet@1.2488, 2007-06-21 08:58:39+02:00, df@pippilotta.erinye.com +1 -0
  Steal part of fix for bug#25621 from monty for 5.0.44.

  libmysql/libmysql.c@1.257, 2007-06-21 08:58:36+02:00, df@pippilotta.erinye.com +15 -0
    mysql_server_end() can be called multiple times.

ChangeSet@1.2487, 2007-06-20 14:00:28+02:00, kent@mysql.com +4 -0
  configure.in:
    Added --with-system-type=<systype> and --with-machine-type=<machtype>
    options, to be able to override the one detected, for --version strings
  field.cc, field.h, listener.cc:
    C++ compatibility change for IBM VisualAge 6 and i5/OS

  configure.in@1.448, 2007-06-20 13:57:47+02:00, kent@mysql.com +12 -4
    Added --with-system-type=<systype> and --with-machine-type=<machtype>
    options, to be able to override the one detected, for --version strings

  server-tools/instance-manager/listener.cc@1.31, 2007-06-20 13:59:59+02:00, kent@mysql.com +3 -1
    C++ compatibility change for IBM VisualAge 6 and i5/OS

  sql/field.cc@1.354, 2007-06-20 13:59:59+02:00, kent@mysql.com +1 -0
    C++ compatibility change for IBM VisualAge 6 and i5/OS

  sql/field.h@1.207, 2007-06-20 13:59:59+02:00, kent@mysql.com +1 -1
    C++ compatibility change for IBM VisualAge 6 and i5/OS

ChangeSet@1.2484, 2007-06-15 23:57:53+02:00, tsmith@quadxeon.mysql.com +2 -0
  binlog.result, binlog.test:
    Post-merge fix: replace xid=* with XID to isolate from number of transactions

  mysql-test/r/binlog.result@1.9, 2007-06-15 23:57:23+02:00, tsmith@quadxeon.mysql.com +2 -2
    Post-merge fix: replace xid=* with XID to isolate from number of transactions

  mysql-test/t/binlog.test@1.11, 2007-06-15 23:57:23+02:00, tsmith@quadxeon.mysql.com +2 -2
    Post-merge fix: replace xid=* with XID to isolate from number of transactions

ChangeSet@1.2475.66.2, 2007-06-15 11:28:15+02:00, df@pippilotta.erinye.com +1 -0
  follow-up fix

  include/violite.h@1.52, 2007-06-15 11:28:13+02:00, df@pippilotta.erinye.com +2 -0
    this may already be defined

ChangeSet@1.2475.43.19, 2007-06-15 13:53:36+05:00, ramil@mysql.com +4 -0
  Backport of
  mysql-test/include/wait_for_slave_io_to_stop.inc
  mysql-test/include/wait_for_slave_sql_to_stop.inc
  mysql-test/include/wait_for_slave_to_start.inc
  mysql-test/include/wait_for_slave_to_stop.inc
  from 5.1

  mysql-test/include/wait_for_slave_io_to_stop.inc@1.1, 2007-06-15 13:53:34+05:00, ramil@mysql.com +33 -0
    New BitKeeper file ``mysql-test/include/wait_for_slave_io_to_stop.inc''

  mysql-test/include/wait_for_slave_io_to_stop.inc@1.0, 2007-06-15 13:53:34+05:00, ramil@mysql.com +0 -0

  mysql-test/include/wait_for_slave_sql_to_stop.inc@1.1, 2007-06-15 13:53:34+05:00, ramil@mysql.com +30 -0
    New BitKeeper file ``mysql-test/include/wait_for_slave_sql_to_stop.inc''

  mysql-test/include/wait_for_slave_sql_to_stop.inc@1.0, 2007-06-15 13:53:34+05:00, ramil@mysql.com +0 -0

  mysql-test/include/wait_for_slave_to_start.inc@1.1, 2007-06-15 13:53:34+05:00, ramil@mysql.com +35 -0
    New BitKeeper file ``mysql-test/include/wait_for_slave_to_start.inc''

  mysql-test/include/wait_for_slave_to_start.inc@1.0, 2007-06-15 13:53:34+05:00, ramil@mysql.com +0 -0

  mysql-test/include/wait_for_slave_to_stop.inc@1.1, 2007-06-15 13:53:34+05:00, ramil@mysql.com +37 -0
    New BitKeeper file ``mysql-test/include/wait_for_slave_to_stop.inc''

  mysql-test/include/wait_for_slave_to_stop.inc@1.0, 2007-06-15 13:53:34+05:00, ramil@mysql.com +0 -0

ChangeSet@1.2475.66.1, 2007-06-15 09:18:58+02:00, georg@bing.site +1 -0
  Added yassl and taocrypt sources to mysqlclientlib

  client/CMakeLists.txt@1.7.1.1, 2007-06-15 09:18:56+02:00, georg@bing.site +53 -14
    Fix for bug #27861: unresolved externals (yassl and taocrypt)

ChangeSet@1.2479, 2007-06-14 14:24:59-04:00, cmiller@zippy.cornsilk.net +2 -0
  Bug#21723: Should be able to dump core after setuid() under Linux
  
  In many cases, binaries can no longer dump core after calling setuid().
  
  Where the PR_SET_DUMPABLE macro is set, use the prctl() system call 
  to tell the kernel that it's allowed to dump the core of the server.

  configure.in@1.445, 2007-06-14 14:24:57-04:00, cmiller@zippy.cornsilk.net +1 -0
    Test system for "sys/prctl.h", to get access to prctl().

  sql/mysqld.cc@1.609.4.1, 2007-06-14 14:24:57-04:00, cmiller@zippy.cornsilk.net +12 -0
    Add a process-control operation that tells the Linux kernel that it 
    is allowed to dump core after setuid().

ChangeSet@1.2475.13.37, 2007-06-14 15:38:52+03:00, gkodinov@magare.gmz +1 -0
  corrected valgrind problems for bug 28505 and 28934

  tests/mysql_client_test.c@1.231, 2007-06-14 15:38:50+03:00, gkodinov@magare.gmz +21 -108
    corrected valgrind problems for bug 28505 and 28934

ChangeSet@1.2475.64.1, 2007-06-13 14:23:25-04:00, dkatz@damien-katzs-computer.local +3 -0
  Bug #28897  	UUID() returns non-unique values when query cache is enabled
  
  Removed the ability to cache queries containing "UUID()".

  mysql-test/r/query_cache.result@1.81, 2007-06-13 14:23:22-04:00, dkatz@damien-katzs-computer.local +7 -0
    Added test to ensure "select UUID(), a from t1" is different each time.

  mysql-test/t/query_cache.test@1.60, 2007-06-13 14:23:22-04:00, dkatz@damien-katzs-computer.local +24 -0
    Added test to ensure "select UUID(), a from t1" is different each time.

  sql/item_create.cc@1.64, 2007-06-13 14:23:22-04:00, dkatz@damien-katzs-computer.local +1 -0
    Removed the ability to cache queries with UUID().

ChangeSet@1.1616.2877.110, 2007-06-13 19:23:13+02:00, df@pippilotta.erinye.com +1 -0
  fix.

  BitKeeper/triggers/post-commit@1.22.1.15, 2007-06-13 19:23:12+02:00, df@pippilotta.erinye.com +6 -4
    send to correct address.

ChangeSet@1.2475.56.7, 2007-06-13 19:19:11+02:00, df@pippilotta.erinye.com +1 -0
  fix make_win_bin_dist typo

  scripts/make_win_bin_dist@1.16, 2007-06-13 19:19:09+02:00, df@pippilotta.erinye.com +1 -1
    add missing backslash

ChangeSet@1.2475.13.36, 2007-06-13 09:32:36-07:00, igor@olga.mysql.com +3 -0
  Fixed bug #28980: the result of ROUND(<decimal expr>,<int column>) 
  was erroneously converted to double, while the result of
  ROUND(<decimal expr>, <int literal>) was preserved as decimal.
  As a result of such a conversion the value of ROUND(D,A) could
  differ from the value of ROUND(D,val(A)) if D was a decimal expression.
  
  Now the result of the ROUND function is never converted to 
  double if the first argument is decimal.  

  mysql-test/r/type_decimal.result@1.43, 2007-06-13 09:32:34-07:00, igor@olga.mysql.com +9 -0
    Added a test case for bug #28980.

  mysql-test/t/type_decimal.test@1.33, 2007-06-13 09:32:34-07:00, igor@olga.mysql.com +14 -0
    Added a test case for bug #28980.

  sql/item_func.cc@1.349, 2007-06-13 09:32:34-07:00, igor@olga.mysql.com +7 -1
    Fixed bug #28980: the result of ROUND(<decimal expr>,<int column>) 
    was erroneously converted to double, while the result of
    ROUND(<decimal expr>, <int literal>) was preserved as decimal.
    As a result of such a conversion the value of ROUND(D,A) could
    differ from the value of ROUND(D,val(A)) if D was a decimal expression.
    
    Now the result of the ROUND function is never converted to 
    double if the first argument is decimal.  

ChangeSet@1.1616.3051.4, 2007-06-13 13:33:00+02:00, joerg@trift2. +1 -0
  sql/item_func.cc
      Improved check for thread identity in the "embedded" case,
      provided by Monty.
      
      This finishes the fixes for bug#27078.

  sql/item_func.cc@1.124.42.25, 2007-06-13 13:32:58+02:00, joerg@trift2. +1 -1
    Improved check for thread identity in the "embedded" case,
    provided by Monty.
    
    This finishes the fixes for bug#27078.

ChangeSet@1.1616.3052.1, 2007-06-13 11:44:58+02:00, df@pippilotta.erinye.com +1 -0
  BK changes for
  https://inside.mysql.com/wiki/MySQL's_Code_Reviews_Published_Externally

  BitKeeper/triggers/post-commit@1.22.1.14, 2007-06-13 11:44:57+02:00, df@pippilotta.erinye.com +35 -21
    1) Add additional method of detecting merge changesets.
    2) Remove code sending e-mail to dev-public@ or dev-bugs@.
    3) Change code sending e-mail to commits@ to send to dev-private@ if a specific file is present in the BK root directory, denoting this tree as private.

ChangeSet@1.2475.56.2, 2007-06-12 19:49:02+02:00, kent@mysql.com +1 -0
  make_win_bin_dist:
    Aligned headers to include with Unix 'make install'

  scripts/make_win_bin_dist@1.15, 2007-06-12 19:48:53+02:00, kent@mysql.com +32 -12
    Aligned headers to include with Unix 'make install'

ChangeSet@1.1616.3050.3, 2007-06-12 08:47:36-04:00, cmiller@zippy.cornsilk.net +1 -0
  Bug#28984: crasher on connect with out of range password length in \
  	protocol
  
  Fixed duplicated code, same as last commit.
  
  One could send a malformed packet that caused the server to SEGV.  In 
  recent versions of the password protocol, the client tells the server 
  what length the ciphertext is (almost always 20).  If that length was
  large enough to overflow a signed char, then the number would jump to 
  very large after being casted to unsigned int.
  
  Instead, cast the *passwd char to uchar.

  sql/sql_parse.cc@1.271.134.3, 2007-06-12 08:47:34-04:00, cmiller@zippy.cornsilk.net +4 -1
    Additional location of signed-char casted to uint.

ChangeSet@1.2475.13.35, 2007-06-12 14:45:30+03:00, gkodinov@magare.gmz +1 -0
  removed compilation warning

  tests/mysql_client_test.c@1.230, 2007-06-12 14:45:29+03:00, gkodinov@magare.gmz +0 -1
    removed compilation warning

ChangeSet@1.2475.58.1, 2007-06-12 14:35:36+03:00, gkodinov@magare.gmz +3 -0
  Bug #28992: trigger fails in pushbuild
   - fixed wrong test case for bug 20903
   - closed the dangling connections in trigger.test
   - GET_LOCK() and RELEASE_LOCK() now produce more detailed log
   - fixed an omission in GET_LOCK() : assign the thread_id when
      acquiring the lock.

  mysql-test/r/trigger.result@1.61, 2007-06-12 14:35:35+03:00, gkodinov@magare.gmz +9 -6
    Bug #28992: test case updated

  mysql-test/t/trigger.test@1.68, 2007-06-12 14:35:35+03:00, gkodinov@magare.gmz +16 -5
    Bug #28992: test case updated. dangling connections closed.

  sql/item_func.cc@1.348, 2007-06-12 14:35:35+03:00, gkodinov@magare.gmz +28 -13
    Bug #28992: 
     - GET_LOCK() and RELEASE_LOCK() now produce more detailed log
     - fixed an omission in GET_LOCK() : assign the thread_id when
        acquiring the lock.

ChangeSet@1.2475.57.1, 2007-06-12 11:02:34+03:00, gkodinov@magare.gmz +2 -0
  Bug #28934: server crash when receiving malformed com_execute packets
   Sometimes a parameter slot may not get a value because of the protocol
   data being plain wrong.
   Such cases should be detected and handled by returning an error.
   Fixed by checking data stream constraints where possible (like maximum
   length) and reacting to the case where a value cannot be constructed.

  sql/sql_prepare.cc@1.202.1.1, 2007-06-12 11:02:33+03:00, gkodinov@magare.gmz +10 -0
    Bug #28934: 
     - check for a parameter slot not being set because 
        of wrong data
     - check if the length read from the stream is not
        greater than the maximum length of the field

  tests/mysql_client_test.c@1.229, 2007-06-12 11:02:33+03:00, gkodinov@magare.gmz +83 -0
    Bug #28934: test case

ChangeSet@1.2475.13.32, 2007-06-12 01:41:23+04:00, evgen@moonbone.local +3 -0
  Bug#28904: INSERT .. ON DUPLICATE was silently updating rows when it shouldn't.
  
  When the INSERT .. ON DUPLICATE KEY UPDATE has to update a matched row but
  the new data is the same as in the record then it returns as if
  no rows were inserted or updated. Nevertheless the row is silently
  updated. This leads to a situation when zero updated rows are reported 
  in the case when data has actually been changed.
  
  Now the write_record function updates a row only if new data differs from
  that in the record.

  mysql-test/r/insert_update.result@1.28, 2007-06-12 01:41:11+04:00, evgen@moonbone.local +14 -0
    Added a test case for the bug#28904: INSERT .. ON DUPLICATE was silently
    updating rows when it shouldn't.

  mysql-test/t/insert_update.test@1.27, 2007-06-12 01:41:11+04:00, evgen@moonbone.local +16 -0
    Added a test case for the bug#28904: INSERT .. ON DUPLICATE was silently
    updating rows when it shouldn't.

  sql/sql_insert.cc@1.241, 2007-06-12 01:41:09+04:00, evgen@moonbone.local +13 -13
    Bug#28904: INSERT .. ON DUPLICATE was silently updating rows when it shouldn't.
    Now the write_record function updates a row only if new data differs from
    that in the record.

ChangeSet@1.2475.41.3, 2007-06-11 23:06:20+04:00, kaa@polly.local +5 -0
  Fix for bug #29015 "Stack overflow in processing temporary table name when tmpdir path is long"
  
  In create_tmp_table() don't set full table path as a table name. Other code assumes table names to not exceed NAME_LEN bytes.

  mysql-test/r/long_tmpdir.result@1.1, 2007-06-11 23:06:18+04:00, kaa@polly.local +3 -0
    Added testcase for bug #29015 "Stack overflow in processing temporary table name when tmpdir path is long"

  mysql-test/r/long_tmpdir.result@1.0, 2007-06-11 23:06:18+04:00, kaa@polly.local +0 -0

  mysql-test/t/long_tmpdir-master.opt@1.1, 2007-06-11 23:06:18+04:00, kaa@polly.local +1 -0
    Added testcase for bug #29015 "Stack overflow in processing temporary table name when tmpdir path is long"

  mysql-test/t/long_tmpdir-master.opt@1.0, 2007-06-11 23:06:18+04:00, kaa@polly.local +0 -0

  mysql-test/t/long_tmpdir-master.sh@1.1, 2007-06-11 23:06:18+04:00, kaa@polly.local +3 -0
    Added testcase for bug #29015 "Stack overflow in processing temporary table name when tmpdir path is long"

  mysql-test/t/long_tmpdir-master.sh@1.0, 2007-06-11 23:06:18+04:00, kaa@polly.local +0 -0

  mysql-test/t/long_tmpdir.test@1.1, 2007-06-11 23:06:18+04:00, kaa@polly.local +9 -0
    Added testcase for bug #29015 "Stack overflow in processing temporary table name when tmpdir path is long"

  mysql-test/t/long_tmpdir.test@1.0, 2007-06-11 23:06:18+04:00, kaa@polly.local +0 -0

  sql/sql_select.cc@1.515.2.1, 2007-06-11 23:06:18+04:00, kaa@polly.local +12 -8
    In create_tmp_table() don't set full table path as a table name. Other code assumes table names to not exceed NAME_LEN bytes.

ChangeSet@1.2475.13.31, 2007-06-09 18:18:34+05:00, gluh@mysql.com +1 -0
  compiler warning fix

  sql/item_strfunc.cc@1.302, 2007-06-09 18:18:32+05:00, gluh@mysql.com +1 -1
    compiler warning fix

ChangeSet@1.2475.54.2, 2007-06-09 17:46:09+05:00, gluh@mysql.com +4 -0
  Bug#28149 overflow in some "SHOW STATUS"-variables
  changed bytes_received, bytes_sent status variables to longlong

  sql/mysqld.cc@1.609.2.3, 2007-06-09 17:46:08+05:00, gluh@mysql.com +2 -2
    changed bytes_received, bytes_sent status variables to longlong

  sql/sql_class.h@1.335, 2007-06-09 17:46:08+05:00, gluh@mysql.com +2 -2
    changed bytes_received, bytes_sent status variables to longlong

  sql/sql_show.cc@1.350, 2007-06-09 17:46:08+05:00, gluh@mysql.com +2 -0
    changed bytes_received, bytes_sent status variables to longlong

  sql/structs.h@1.59, 2007-06-09 17:46:08+05:00, gluh@mysql.com +2 -1
    changed bytes_received, bytes_sent status variables to longlong

ChangeSet@1.2475.55.1, 2007-06-09 17:13:33+05:00, ramil@mysql.com +2 -0
  Fix for bug #28748: "Select" returning one value too few
  
  Problem: we may get unexpected results comparing [u]longlong values as doubles.
  Fix: adjust the test to use integer comparators.
  Note: it's not a real fix, we have to implement some new comparators 
  to completely solve the original problem (see my comment in the bug report).

  mysql-test/r/func_in.result@1.36, 2007-06-09 17:13:26+05:00, ramil@mysql.com +18 -9
    Fix for bug #28748: "Select" returning one value too few
      - result adjusted.

  mysql-test/t/func_in.test@1.29, 2007-06-09 17:13:27+05:00, ramil@mysql.com +19 -10
    Fix for bug #28748: "Select" returning one value too few
      - test adjusted to use integer comparisons.

ChangeSet@1.2475.54.1, 2007-06-09 16:52:37+05:00, gluh@mysql.com +5 -0
  Bug#28266 IS_UPDATABLE field on VIEWS table in I_S database is wrong
  IS_UPDATABLE flag is set to 'yes' when the view has at least one updatable column and
  the algorithm is not 'temporary'.

  mysql-test/r/information_schema.result@1.122, 2007-06-09 16:52:36+05:00, gluh@mysql.com +11 -0
    test result

  mysql-test/r/view.result@1.206, 2007-06-09 16:52:36+05:00, gluh@mysql.com +13 -0
    test result

  mysql-test/t/information_schema.test@1.91, 2007-06-09 16:52:36+05:00, gluh@mysql.com +15 -0
    test case

  mysql-test/t/view.test@1.187, 2007-06-09 16:52:36+05:00, gluh@mysql.com +4 -0
    test case

  sql/sql_show.cc@1.349, 2007-06-09 16:52:36+05:00, gluh@mysql.com +29 -1
    IS_UPDATABLE flag is set to 'yes' when the view has at least one updatable column and
    the algorithm is not 'temporary'.

ChangeSet@1.1616.3034.3, 2007-06-08 16:10:53-04:00, cmiller@zippy.cornsilk.net +1 -0
  Bug #28984: crasher on connect with out of range password length in \
  	protocol
  
  One could send a malformed packet that caused the server to SEGV.  In 
  recent versions of the password protocol, the client tells the server 
  what length the ciphertext is (almost always 20).  If that length was
  large enough to overflow a signed char, then the number would jump to 
  very large after being casted to unsigned int.
  
  Instead, cast the *passwd char to uchar. 
  

  sql/sql_parse.cc@1.271.134.2, 2007-06-08 16:10:51-04:00, cmiller@zippy.cornsilk.net +4 -1
    Cast *passwd to get rid of the sign, so that sign extension doesn't
    cause the sequence 125, 126, 127, 4294967169, 4294967170.
    

ChangeSet@1.2475.53.1, 2007-06-09 00:39:23+05:00, holyfoot@mysql.com +1 -0
  Bug #28333 Test "flush" tries to create a new thread - on only one platform
  
  on PPC/Debian Linux default stack size for a thread is too big.
  As we use default thread settings in mysqltest, the
  thread creation fails if we create lots of threads (as it
  happens in flush.test). So now stack size is explicitly specified
  for the mysqltest

  client/mysqltest.c@1.292.1.1, 2007-06-09 00:39:21+05:00, holyfoot@mysql.com +11 -1
    Bug #28333 Test "flush" tries to create a new thread - on only one platform
    
    specify appropriate stack size for the 'query' thread

ChangeSet@1.1616.3051.3, 2007-06-08 17:02:48+02:00, joerg@trift2. +1 -0
  Add a cast, needed by some platforms.
  Still part of the fix for bug#27078.

  libmysqld/lib_sql.cc@1.75.1.65, 2007-06-08 17:02:45+02:00, joerg@trift2. +1 -1
    Some platforms need a cast.
    Still part of the fix for bug#27078.

ChangeSet@1.2475.43.13, 2007-06-08 16:20:24+02:00, msvensson@pilot.(none) +1 -0
  Turn off use of bin log when running with embedded server 

  mysql-test/mysql-test-run.pl@1.225.1.1, 2007-06-08 16:20:23+02:00, msvensson@pilot.(none) +3 -0
    Turn off use of bin log when running with embedded server 

ChangeSet@1.2475.52.2, 2007-06-08 13:42:10+03:00, gkodinov@magare.gmz +1 -0
  Bug #28754: RPM builds differ from tar.gz in "ALTER ... RENAME" on views
   When constructing the path to the original .frm file ALTER .. RENAME
   was unnecessary (and incorrectly) lowercasing the whole path when not 
   on a case-insensitive filesystem.
   This path should not be modified because of lower_case_table_names
   as it is already in the correct case according to that setting.
   Fixed by removing the lowercasing.
   Unfortunately testing this would require running the tests on a case
   sensitive filesystem in a directory that has uppercase letters.
   This cannot be guaranteed in all setups so no test case added.

  sql/sql_table.cc@1.347.1.1, 2007-06-08 13:42:09+03:00, gkodinov@magare.gmz +0 -2
    Bug #28754: don't downcase the .frm path

ChangeSet@1.2475.52.1, 2007-06-08 14:42:08+05:00, gluh@mysql.com +3 -0
  Bug#18660 Can't grant any privileges on single table in database with underscore char
  In case of database level grant the database name may be a pattern,
  in case of table|column level grant the database name can not be a pattern.
  We use 'dont_check_global_grants' as a flag to determine
  if it's database level grant command 
  (see SQLCOM_GRANT case, mysql_execute_command() function) and
  set db_is_pattern according to 'dont_check_global_grants' value.

  mysql-test/r/grant2.result@1.35, 2007-06-08 14:42:07+05:00, gluh@mysql.com +18 -0
    test result

  mysql-test/t/grant2.test@1.40, 2007-06-08 14:42:07+05:00, gluh@mysql.com +30 -0
    test case

  sql/sql_parse.cc@1.622.1.1, 2007-06-08 14:42:07+05:00, gluh@mysql.com +11 -1
    In case of database level grant the database name may be a pattern,
    in case of table|column level grant the database name can not be a pattern.
    We use 'dont_check_global_grants' as a flag to determine
    if it's database level grant command 
    (see SQLCOM_GRANT case, mysql_execute_command() function) and
    set db_is_pattern according to 'dont_check_global_grants' value.

ChangeSet@1.2475.43.12, 2007-06-08 11:30:03+02:00, msvensson@pilot.(none) +3 -0
  Bug#28369 rpl test cases fail with binlog disabled
  - Backport include/show_binlog_events.inc from 5.1 and use it to make
  the test output consistent results

  mysql-test/include/show_binlog_events.inc@1.1, 2007-06-08 11:30:02+02:00, msvensson@pilot.(none) +4 -0
    New BitKeeper file ``mysql-test/include/show_binlog_events.inc''

  mysql-test/include/show_binlog_events.inc@1.0, 2007-06-08 11:30:02+02:00, msvensson@pilot.(none) +0 -0

  mysql-test/r/mix_innodb_myisam_binlog.result@1.30.1.1, 2007-06-08 11:30:01+02:00, msvensson@pilot.(none) +15 -15
    Backport include/show_binlog_events.inc from 5.1 and use it to make
    the test output consistent results

  mysql-test/t/mix_innodb_myisam_binlog.test@1.25.1.2, 2007-06-08 11:30:01+02:00, msvensson@pilot.(none) +13 -37
    Backport include/show_binlog_events.inc from 5.1 and use it to make
    the test output consistent results

ChangeSet@1.2475.13.25, 2007-06-07 22:35:31-07:00, igor@olga.mysql.com +3 -0
  Fixed bug #28811: crash for a query containing a subquery with 
  ORDER BY and LIMIT 1. 
  The bug was introduced by the patch for bug 21727. The patch
  erroneously skipped initialization of the array of headers
  for sorted records for non-first evaluations of the subquery.
  
  To fix the problem a new parameter has been added to the
  function make_char_array that performs the initialization.
  Now this function is called for any invocation of the 
  filesort procedure. Yet it allocates the buffer for sorted
  records only if this parameter is NULL.

  mysql-test/r/subselect.result@1.194, 2007-06-07 22:35:28-07:00, igor@olga.mysql.com +26 -0
    Added a test case for bug #28811.

  mysql-test/t/subselect.test@1.156, 2007-06-07 22:35:28-07:00, igor@olga.mysql.com +32 -0
    Added a test case for bug #28811.

  sql/filesort.cc@1.121, 2007-06-07 22:35:28-07:00, igor@olga.mysql.com +11 -8
    Fixed bug #28811: crash for a query containing a subquery with 
    ORDER BY and LIMIT 1. 
    The bug was introduced by the patch for bug 21727. The patch
    erroneously skipped initialization of the array of headers
    for sorted records for non-first evaluations of the subquery.
    
    To fix the problem a new parameter has been added to the
    function make_char_array that performs the initialization.
    Now this function is called for any invocation of the 
    filesort procedure. Yet it allocates the buffer for sorted
    records only if this parameter is NULL.

ChangeSet@1.2475.43.11, 2007-06-08 07:16:36+02:00, msvensson@pilot.(none) +3 -0
  Bug#28369 rpl test cases fail with binlog disabled

  mysql-test/lib/mtr_cases.pl@1.41, 2007-06-08 07:16:35+02:00, msvensson@pilot.(none) +6 -3
    Don't turn off binlog in versions prior to 5.0

  mysql-test/r/binlog.result@1.6.1.1, 2007-06-08 07:16:35+02:00, msvensson@pilot.(none) +2 -2
    Update result after adding "one more select"

  mysql-test/t/binlog.test@1.7.1.2, 2007-06-08 07:16:35+02:00, msvensson@pilot.(none) +2 -2
    Update result after adding "one more select"

ChangeSet@1.2475.13.24, 2007-06-07 15:04:39-07:00, igor@olga.mysql.com +1 -0
  Correction to remove compilee warnings and compiler errors on Windows.

  sql/field.h@1.204.1.2, 2007-06-07 15:04:37-07:00, igor@olga.mysql.com +1 -0
    Correction to remove compilee warnings and compiler errors on Windows.

ChangeSet@1.2475.43.10, 2007-06-07 23:18:19+02:00, msvensson@pilot.(none) +1 -0
  Bug#28718 Running backup testcase fails in mysql testsuite of MySQL-enterprise-5.0.40
   - Fix test to work on OS where backslashes are forward

  mysql-test/include/uses_vardir.inc@1.2, 2007-06-07 23:18:18+02:00, msvensson@pilot.(none) +2 -3
    Make the test work on windows too

ChangeSet@1.1616.3051.2, 2007-06-07 23:05:18+02:00, joerg@trift2. +1 -0
  Do not use the "thd" pointer to identify a thread in the embedded lib,
  but rather use the "thread_id" counter.
  
  Fixes bug#27078:
  Compile error: lib_sql.cc cast from 'THD*' to 'pthread_t' loses precision

  libmysqld/lib_sql.cc@1.75.1.64, 2007-06-07 23:05:16+02:00, joerg@trift2. +1 -1
    Avoid casting a pointer to a (possibly) int, which will not compile on some platforms:
    Do not use the "thd" pointer to identify a thread in the embedded lib,
    but rather use the "thread_id" counter.
    
    Patch is proposed by Monty.  Fixes bug#27078.

ChangeSet@1.2475.51.1, 2007-06-08 00:33:03+04:00, evgen@moonbone.local +5 -0
  Bug#28763: Selecting geometry fields in UNION caused server crash.
  
  This bug was introduced by the fix for the bug#27300. In this fix a section
  of code was added to the Item::tmp_table_field_from_field_type method.
  This section intended to create Field_geom fields for the Item_geometry_func
  class and its descendants. In order to get the geometry type of the current
  item it casted "this" to the Item_geometry_func* type. But the
  Item::tmp_table_field_from_field_type method is also used for creation of
  fields for UNION and in this case this method is called for an object of the
  Item_type_holder class and the cast to the Item_geometry_func* type causes 
  a server crash.
  
  Now the Item::tmp_table_field_from_field_type method correctly works when it's
  called for both the Item_type_holder and the Item_geometry_func classes.
  The new geometry_type variable is added to the Item_type_holder class.
  The new method called get_geometry_type is added to the Item_field
  and the Field classes. It returns geometry type from the field for the
  Item_field and the Field_geom classes and fails an assert for other Field
  descendants.

  mysql-test/r/gis.result@1.44, 2007-06-08 00:32:55+04:00, evgen@moonbone.local +21 -0
    Added a test case for the bug#28763: Selecting geometry fields in UNION caused server crash.

  mysql-test/t/gis.test@1.37, 2007-06-08 00:32:55+04:00, evgen@moonbone.local +13 -0
    Added a test case for the bug#28763: Selecting geometry fields in UNION caused server crash.

  sql/field.h@1.204.1.1, 2007-06-08 00:32:53+04:00, evgen@moonbone.local +6 -1
    Bug#28763: Selecting geometry fields in UNION caused server crash.
    The new method called get_geometry_type is added to the Field class.
    It returns geometry type of the field for the Field_geom class
    and fails an assert for other Field descendants.

  sql/item.cc@1.269.1.1, 2007-06-08 00:32:54+04:00, evgen@moonbone.local +7 -1
    Bug#28763: Selecting geometry fields in UNION caused server crash.
    Now the Item::tmp_table_field_from_field_type method correctly works when it's
    called for both the Item_type_holder and the Item_geometry_func classes.

  sql/item.h@1.230.1.1, 2007-06-08 00:32:55+04:00, evgen@moonbone.local +7 -0
    Bug#28763: Selecting geometry fields in UNION caused server crash.
    The new method called get_geometry_type is added to the Item_field class.
    It returns geometry type from the field.
    The new geometry_type variable is added to the Item_type_holder class.

ChangeSet@1.2475.43.9, 2007-06-07 22:23:47+02:00, msvensson@pilot.(none) +2 -0
  Remove "is_debug_build.inc" and use already existing "have-debug.inc"

  BitKeeper/deleted/.del-is_debug_build.inc@1.2, 2007-06-07 22:23:25+02:00, msvensson@pilot.(none) +0 -0
    Rename: mysql-test/include/is_debug_build.inc -> BitKeeper/deleted/.del-is_debug_build.inc

  mysql-test/t/sp-code.test@1.8, 2007-06-07 22:23:46+02:00, msvensson@pilot.(none) +1 -1
    Remove "is_debug_build.inc" and use already existing "have-debug.inc"

ChangeSet@1.2475.43.8, 2007-06-07 20:25:22+02:00, msvensson@pilot.(none) +4 -0
  Fix typo
  Mark one more test as needing binlog

  mysql-test/include/master-slave.inc@1.15, 2007-06-07 20:25:21+02:00, msvensson@pilot.(none) +1 -1
    Fix typo

  mysql-test/lib/mtr_cases.pl@1.40, 2007-06-07 20:25:21+02:00, msvensson@pilot.(none) +1 -1
    Fix typo

  mysql-test/r/have_log_bin.require@1.1.1.1, 2007-06-07 20:25:21+02:00, msvensson@pilot.(none) +1 -1
    Fix typo

  mysql-test/t/binlog_killed.test@1.8, 2007-06-07 20:25:21+02:00, msvensson@pilot.(none) +1 -0
    Need binlog

ChangeSet@1.2475.49.1, 2007-06-07 19:18:01+02:00, msvensson@pilot.(none) +25 -0
  Bug#28369 rpl test cases fail with binlog disabled
   - Turn on binlog only for tests that need it
   - Skip those tests if --skip-binlog is used

  BitKeeper/deleted/.del-ctype_cp932_notembedded.result@1.4, 2007-06-07 19:17:43+02:00, msvensson@pilot.(none) +0 -0
    Rename: mysql-test/r/ctype_cp932_notembedded.result -> BitKeeper/deleted/.del-ctype_cp932_notembedded.result

  BitKeeper/deleted/.del-ctype_cp932_notembedded.test@1.1.1.1, 2007-06-07 19:17:43+02:00, msvensson@pilot.(none) +0 -0
    Rename: mysql-test/t/ctype_cp932_notembedded.test -> BitKeeper/deleted/.del-ctype_cp932_notembedded.test

  mysql-test/include/master-slave.inc@1.14, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +3 -0
    Need binlog

  mysql-test/lib/mtr_cases.pl@1.39, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +17 -0
    Turn on binlog only for tests that need it
    Skip those tests if --skip-binlog is used

  mysql-test/r/sp_trans.result@1.14, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +0 -20
    Moved to "sp_binlog"

  mysql-test/r/sp_trans_log.result@1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +20 -0
    New BitKeeper file ``mysql-test/r/sp_trans_log.result''

  mysql-test/r/sp_trans_log.result@1.0, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +0 -0

  mysql-test/t/binlog.test@1.7.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -0
    Need binlog

  mysql-test/t/blackhole.test@1.9.2.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -0
    Need binlog

  mysql-test/t/ctype_cp932_binlog.test@1.5.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -0
    Need binlog

  mysql-test/t/ctype_ucs_binlog.test@1.6.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -0
    Need binlog

  mysql-test/t/drop_temp_table.test@1.8.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +2 -2
    Need binlog

  mysql-test/t/flush_block_commit_notembedded.test@1.1.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -1
    Need binlog

  mysql-test/t/innodb.test@1.141, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -0
    Need binlog

  mysql-test/t/insert_select-binlog.test@1.2.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -0
    Need binlog

  mysql-test/t/mix_innodb_myisam_binlog.test@1.25.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -3
    Need binlog

  mysql-test/t/mysqlbinlog-cp932.test@1.2.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -0
    Need binlog

  mysql-test/t/mysqlbinlog.test@1.46.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -2
    Need binlog

  mysql-test/t/mysqlbinlog2.test@1.9.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -2
    Need binlog

  mysql-test/t/mysqldump.test@1.115.2.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -0
    Need binlog

  mysql-test/t/rpl000015.test@1.36, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +2 -0
    Need binlog

  mysql-test/t/rpl000017.test@1.16, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +2 -0
    Need binlog

  mysql-test/t/rpl_rotate_logs.test@1.69, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +2 -0
    Need binlog

  mysql-test/t/sp_trans.test@1.13.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +0 -28
    Moved to "sp_binlog"

  mysql-test/t/sp_trans_log.test@1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +33 -0
    New BitKeeper file ``mysql-test/t/sp_trans_log.test''

  mysql-test/t/sp_trans_log.test@1.0, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +0 -0

  mysql-test/t/user_var-binlog.test@1.4.1.1, 2007-06-07 19:18:00+02:00, msvensson@pilot.(none) +1 -2
    Need binlog

ChangeSet@1.2475.43.6, 2007-06-07 10:14:47-05:00, Reggie@xp. +1 -0
  setting pre-commit to be Unix only line endings so it will work on Windows

  BitKeeper/triggers/pre-commit@1.3, 2007-06-07 09:12:45-05:00, "Reggie"@xp. +0 -0
    Turn off EOLN_NATIVE flag

ChangeSet@1.2475.48.1, 2007-06-07 09:13:56-05:00, "Reggie"@xp. +1 -0
  Bug #24731 Shared memory connections do not work with MySql ran as service on Vista
  
  The events were not being opened in the global namespace.

  sql-common/client.c@1.114, 2007-06-07 07:27:07-05:00, Reggie@xp. +3 -3
    Add Global\\ to the event names so they are opened in the global namespace

ChangeSet@1.2475.47.1, 2007-06-07 14:25:17+02:00, msvensson@pilot.(none) +3 -0
  Bug#28718 Running backup testcase fails in mysql testsuite
   - Skip test if the mysqld to test is not started from MYSQLTEST_VARDIR

  mysql-test/include/uses_vardir.inc@1.1, 2007-06-07 14:25:16+02:00, msvensson@pilot.(none) +15 -0
    New BitKeeper file ``mysql-test/include/uses_vardir.inc''

  mysql-test/include/uses_vardir.inc@1.0, 2007-06-07 14:25:16+02:00, msvensson@pilot.(none) +0 -0

  mysql-test/t/backup.test@1.21, 2007-06-07 14:25:16+02:00, msvensson@pilot.(none) +5 -0
    Skip test if the mysqld to test is not started from MYSQLTEST_VARDIR

  mysql-test/t/blackhole.test@1.10.1.1, 2007-06-07 14:25:16+02:00, msvensson@pilot.(none) +5 -1
    Skip test if the mysqld to test is not started from MYSQLTEST_VARDIR

ChangeSet@1.1616.3051.1, 2007-06-07 12:59:31+02:00, joerg@trift2. +27 -0
  netware/*.def  :  Allocate 128K stack for all executables (bug#23504)

  netware/comp_err.def@1.2.1.1, 2007-06-07 12:59:28+02:00, joerg@trift2. +1 -0
    Allocate 128K stack for all executables (bug#23504)

  netware/isamchk.def@1.5.1.1, 2007-06-07 12:59:28+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/isamlog.def@1.4.1.1, 2007-06-07 12:59:28+02:00, joerg@trift2. +1 -0
    Allocate 128K stack for all executables (bug#23504)

  netware/libmysql.def@1.4.1.2, 2007-06-07 12:59:28+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/my_print_defaults.def@1.4.1.2, 2007-06-07 12:59:28+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/myisam_ftdump.def@1.2.1.1, 2007-06-07 12:59:28+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/myisamchk.def@1.5.1.2, 2007-06-07 12:59:28+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/myisamlog.def@1.5.1.2, 2007-06-07 12:59:28+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/myisampack.def@1.5.1.2, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysql.def@1.4.1.3, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysql_install_db.def@1.4.1.2, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysql_test_run.def@1.4.1.1, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysql_waitpid.def@1.2.1.1, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysqladmin.def@1.4.1.3, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysqlbinlog.def@1.5.1.3, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysqlcheck.def@1.5.1.3, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysqld.def@1.3.1.1, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysqld_safe.def@1.3.1.2, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysqldump.def@1.5.1.3, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysqlimport.def@1.5.1.3, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/mysqlshow.def@1.4.1.2, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -0
    Allocate 128K stack for all executables (bug#23504)

  netware/mysqltest.def@1.4.1.1, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -0
    Allocate 128K stack for all executables (bug#23504)

  netware/pack_isam.def@1.4.1.2, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -0
    Allocate 128K stack for all executables (bug#23504)

  netware/perror.def@1.4.1.2, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/replace.def@1.4.1.1, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -0
    Allocate 128K stack for all executables (bug#23504)

  netware/resolve_stack_dump.def@1.2.1.1, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -1
    Allocate 128K stack for all executables (bug#23504)

  netware/resolveip.def@1.4.1.1, 2007-06-07 12:59:29+02:00, joerg@trift2. +1 -0
    Allocate 128K stack for all executables (bug#23504)

ChangeSet@1.2475.46.1, 2007-06-07 00:59:08-07:00, igor@olga.mysql.com +4 -0
  Fixed bug #28449: a crash may happen at some rare conditions when
  a temporary table has grown out of heap memory reserved for it and 
  the remaining disk space is not big enough to store the table as
  a MyISAM table.
  
  The crash happens because the function create_myisam_from_heap
  does not handle safely the mem_root structure associated 
  with the converted table in the case when an error has occurred.

  mysql-test/r/error_simulation.result@1.1, 2007-06-07 00:59:06-07:00, igor@olga.mysql.com +19 -0
    New BitKeeper file ``mysql-test/r/error_simulation.result''
    
    Added a test case for bug #28449.

  mysql-test/r/error_simulation.result@1.0, 2007-06-07 00:59:06-07:00, igor@olga.mysql.com +0 -0

  mysql-test/t/error_simulation-master.opt@1.1, 2007-06-07 00:59:06-07:00, igor@olga.mysql.com +1 -0
    New BitKeeper file ``mysql-test/t/error_simulation-master.opt''

  mysql-test/t/error_simulation-master.opt@1.0, 2007-06-07 00:59:06-07:00, igor@olga.mysql.com +0 -0

  mysql-test/t/error_simulation.test@1.1, 2007-06-07 00:59:06-07:00, igor@olga.mysql.com +29 -0
    New BitKeeper file ``mysql-test/t/error_simulation.test''
    
    Added a test case for bug #28449.

  mysql-test/t/error_simulation.test@1.0, 2007-06-07 00:59:06-07:00, igor@olga.mysql.com +0 -0

  sql/sql_select.cc@1.529.1.1, 2007-06-07 00:59:06-07:00, igor@olga.mysql.com +5 -2
    Fixed bug #28449: a crash may happen at some rare conditions when
    a temporary table has grown out of heap memory reserved for it and 
    the remaining disk space is not big enough to store the table as
    a MyISAM table.
    
    The crash happens because the function create_myisam_from_heap
    does not handle safely the mem_root structure associated 
    with the converted table in the case when an error has occurred.
    
    As it's hard to create a sitiation that would throw an error 
    a special code has been added that raises an error for a newly 
    created test called error_simulation.

ChangeSet@1.2475.45.1, 2007-06-07 09:48:37+02:00, msvensson@pilot.(none) +1 -0
  Bug#28690 mysql-enterprise-gpl-5.0.40-linux-i686-glibc won't start on Debian Sarge
   - Only use the "hack for bug in NTPL" if using NTPL, by dynamically
     checking the thd_lib_detected flag

  mysys/my_thr_init.c@1.45, 2007-06-07 09:48:36+02:00, msvensson@pilot.(none) +24 -20
    Only start the "dummy thread hack for bug in NPTL" - if using NPTL.
    If the system uses LinuxThreads it's not needed, it actually causes 
    the "pthread manager" to be started as root and thus all subsequent
    threads will also run as root although mysqld drops root privileges, 
    this in turns causes mysqld to deadlock since the mysqlds main thread
    running as <user> can't send signals to a process owned by root.

ChangeSet@1.2475.44.1, 2007-06-07 10:08:44+03:00, gkodinov@magare.gmz +3 -0
  Bug#28878: InnoDB tables with UTF8 character set and indexes cause 
  wrong result for DML
  When making key reference buffers over CHAR fields whitespace (0x20) 
  must be used to fill in the remaining space in the field's buffer.
  This is what Field_string::store() does.
  Fixed Field_string::get_key_image() to do the same.

  mysql-test/r/innodb_mysql.result@1.21.1.1, 2007-06-07 10:08:43+03:00, gkodinov@magare.gmz +36 -0
    Bug#28878: test case

  mysql-test/t/innodb_mysql.test@1.21.1.1, 2007-06-07 10:08:43+03:00, gkodinov@magare.gmz +31 -0
    Bug#28878: test case

  sql/field.cc@1.349.1.2, 2007-06-07 10:08:43+03:00, gkodinov@magare.gmz +2 -1
    Bug#28878: Fill with space instead of binary zeros.

ChangeSet@1.2475.13.20, 2007-06-07 00:30:00+04:00, evgen@moonbone.local +2 -0
  Bug#28505: mysql_affected_rows() may return wrong result if CLIENT_FOUND_ROWS
  flag is set.
  
  When the CLIENT_FOUND_ROWS flag is set then the server should return
  found number of rows independently whether they were updated or not.
  But this wasn't the case for the INSERT statement which always returned
  number of rows that were actually changed thus providing wrong info to
  the user.
  
  Now the select_insert::send_eof method and the mysql_insert function
  are sending the number of touched rows if the CLIENT_FOUND_ROWS flag is set.

  sql/sql_insert.cc@1.240, 2007-06-07 00:29:51+04:00, evgen@moonbone.local +10 -4
    Bug#28505: mysql_affected_rows() may return wrong result if CLIENT_FOUND_ROWS
    flag is set.
    Now the select_insert::send_eof method and the mysql_insert function
    are sending the number of touched rows if the CLIENT_FOUND_ROWS flag is set.

  tests/mysql_client_test.c@1.228, 2007-06-07 00:29:48+04:00, evgen@moonbone.local +64 -0
    Added a test case for the bug#28505: mysql_affected_rows() may return wrong result
    if CLIENT_FOUND_ROWS flag is set.

ChangeSet@1.2475.13.19, 2007-06-06 18:55:21+05:00, gluh@mysql.com +4 -0
  after merge fix

  mysql-test/r/subselect.result@1.193, 2007-06-06 18:55:20+05:00, gluh@mysql.com +0 -3
    after merge fix

  mysql-test/r/subselect_notembedded.result@1.2, 2007-06-06 18:55:20+05:00, gluh@mysql.com +2 -0
    after merge fix

  mysql-test/t/subselect.test@1.155, 2007-06-06 18:55:20+05:00, gluh@mysql.com +0 -8
    after merge fix

  mysql-test/t/subselect_notembedded.test@1.2, 2007-06-06 18:55:20+05:00, gluh@mysql.com +4 -3
    after merge fix

ChangeSet@1.1616.3049.1, 2007-06-06 18:29:15+05:00, gluh@mysql.com +3 -0
  Bug#28553 mysqld crash in "purge master log before(select time from information_schema)"
  forbid the use of subselect in PURGE LOGS BEFORE command

  mysql-test/r/subselect.result@1.67.1.122, 2007-06-06 18:29:14+05:00, gluh@mysql.com +2 -0
    test result

  mysql-test/t/subselect.test@1.58.1.107, 2007-06-06 18:29:14+05:00, gluh@mysql.com +4 -3
    test case

  sql/sql_yacc.yy@1.203.1.202, 2007-06-06 18:29:14+05:00, gluh@mysql.com +5 -3
    forbid the use of subselect in PURGE LOGS BEFORE command

ChangeSet@1.1616.3048.1, 2007-06-06 15:22:06+02:00, joerg@mysql.com +1 -0
  Raise version number after cloning 4.1.23

  configure.in@1.201.74.1, 2007-06-06 15:21:55+02:00, joerg@mysql.com +2 -2
    Raise version number after cloning 4.1.23

ChangeSet@1.2475.13.17, 2007-06-06 00:25:06+04:00, evgen@moonbone.local +3 -0
  Bug#28778: Wrong result of BETWEEN when comparing a DATETIME field with an
  integer constants.
  
  This bug is introduced by the fix for bug#16377. Before the fix the 
  Item_func_between::fix_length_and_dec method converted the second and third
  arguments to the type of the first argument if they were constant and the first
  argument is of the DATE/DATETIME type. That approach worked well for integer
  constants and sometimes produced bad result for string constants. The fix for
  the bug#16377 wrongly removed that code at all and as a result of this the
  comparison of a DATETIME field and an integer constant was carried out in a
  wrong way and sometimes led to wrong result sets.
  
  Now the Item_func_between::fix_length_and_dec method converts the second and
  third arguments to the type of the first argument if they are constant, the
  first argument is of the DATE/DATETIME type and the DATETIME comparator isn't
  applicable.

  mysql-test/r/type_datetime.result@1.46, 2007-06-06 00:25:01+04:00, evgen@moonbone.local +16 -0
    Added a test case for the bug#28778: Wrong result of BETWEEN when comparing a DATETIME
    field with an integer constants.

  mysql-test/t/type_datetime.test@1.32, 2007-06-06 00:25:02+04:00, evgen@moonbone.local +11 -0
    Added a test case for the bug#28778: Wrong result of BETWEEN when comparing a DATETIME
    field with an integer constants.

  sql/item_cmpfunc.cc@1.253.1.2, 2007-06-06 00:24:11+04:00, evgen@moonbone.local +17 -0
    Bug#28778: Wrong result of BETWEEN when comparing a DATETIME field with an
    integer constants.
    Now the Item_func_between::fix_length_and_dec method converts the second and
    third arguments to the type of the first argument if they are constant, the
    first argument is of the DATE/DATETIME type and the DATETIME comparator isn't
    applicable.

ChangeSet@1.2475.41.2, 2007-06-05 22:18:07+04:00, kaa@polly.local +2 -0
  Fix for bug #28895 "Test 'information_schema_db' fails on i5/OS 32 bit".
  
  In acl_getroot_no_password(), use a separate variable for traversing the acl_users list so that the last entry is not used when no matching entries are found.

  mysql-test/r/view_grant.result@1.25, 2007-06-05 22:17:58+04:00, kaa@polly.local +2 -2
    Fixed the testcase for bug #14875 which relied on broken behavior. sctx->master_access and sctx->priv_user were being set to the last entry in the acl_users list. That does not happen after the patch for bug #28895, so we get a different warning message.

  sql/sql_acl.cc@1.219.1.1, 2007-06-05 22:17:58+04:00, kaa@polly.local +7 -6
    In acl_getroot_no_password(), use a separate variable for traversing the acl_users list so that the last entry is not used when no matching entries are found.

ChangeSet@1.1616.3047.1, 2007-06-04 16:42:42+02:00, msvensson@pilot.(none) +2 -0
  Bug#10218 Command line recall rolls into Segmentation Fault(coredump)'
   - Declare 'tgoto' if not already declared in system header files. 

  cmd-line-utils/libedit/el_term.h@1.2, 2007-06-04 16:42:35+02:00, msvensson@pilot.(none) +10 -0
    Declare 'tgoto' if not already declared in system header files. Failing
    to declare it will cause the pointer returned to be truncated
    to 32-bit integer which is no a valid pointer - in most cases. 

  configure.in@1.201.73.1, 2007-06-04 16:42:35+02:00, msvensson@pilot.(none) +13 -0
    Add check to see if 'tgoto' is declared in system header files

ChangeSet@1.2475.26.8, 2007-06-04 14:12:31+02:00, df@pippilotta.erinye.com +1 -0
  BUG#28860 USE_TLS not defined for mysqlclient.lib

  client/CMakeLists.txt@1.8, 2007-06-04 14:12:30+02:00, df@pippilotta.erinye.com +4 -0
    Bug#28860 Define USE_TLS for mysqlclient.lib

ChangeSet@1.2475.38.4, 2007-06-03 15:56:48+04:00, evgen@moonbone.local +3 -0
  user_var.result:
    Corrected test case result for the bug#28494.
  item_func.h, item_func.cc:
    Corrected function names after fix for the bug#28494.

  mysql-test/r/user_var.result@1.48, 2007-06-03 15:21:20+04:00, evgen@moonbone.local +6 -6
    Corrected test case result for the bug#28494.

  sql/item_func.cc@1.347, 2007-06-03 15:21:53+04:00, evgen@moonbone.local +2 -2
    Corrected function names after fix for the bug#28494.

  sql/item_func.h@1.172, 2007-06-03 15:21:32+04:00, evgen@moonbone.local +2 -2
    Corrected function names after fix for the bug#28494.

ChangeSet@1.2475.38.3, 2007-06-03 14:46:09+04:00, evgen@moonbone.local +2 -0
  user_var.result, user_var.test:
    Extended test case for the bug#28494.

  mysql-test/r/user_var.result@1.47, 2007-06-03 14:43:04+04:00, evgen@moonbone.local +23 -2
    Extended test case for the bug#28494.

  mysql-test/t/user_var.test@1.42, 2007-06-03 14:42:34+04:00, evgen@moonbone.local +8 -2
    Extended test case for the bug#28494.

ChangeSet@1.2475.40.1, 2007-06-03 09:40:00+03:00, gkodinov@macbook.gmz +6 -0
  Bug #26162: Trigger DML ignores low_priority_updates setting
    
  The value of "low-priority-updates" option and the LOW PRIORITY
  prefix was taken into account at parse time.
  This caused triggers (among others) to ignore this flag (if
  supplied for the DML statement).
  Moved reading of the LOW_PRIORITY flag at run time.
  Fixed an incosistency when handling
  SET GLOBAL LOW_PRIORITY_UPDATES : now it is in effect for
  delayed INSERTs.
  Tested by checking the effect of LOW_PRIORITY flag via a 
  trigger.

  include/thr_lock.h@1.20, 2007-06-03 09:38:52+03:00, gkodinov@macbook.gmz +5 -0
    Bug #26162: moved reading of the LOW PRIORITY flag at run time

  mysql-test/r/trigger.result@1.58.1.1, 2007-06-03 09:38:56+03:00, gkodinov@macbook.gmz +24 -0
    Bug #26162: test case

  mysql-test/t/trigger.test@1.65.1.1, 2007-06-03 09:39:03+03:00, gkodinov@macbook.gmz +55 -0
    Bug #26162: test case

  sql/set_var.cc@1.185.1.1, 2007-06-03 09:39:09+03:00, gkodinov@macbook.gmz +5 -1
    Bug #26162: fixed the handling of the "low-priority-updates" option

  sql/sql_base.cc@1.380.1.2, 2007-06-03 09:39:15+03:00, gkodinov@macbook.gmz +7 -0
    Bug #26162: moved reading of the LOW PRIORITY flag at run time

  sql/sql_yacc.yy@1.519.2.1, 2007-06-03 09:39:22+03:00, gkodinov@macbook.gmz +6 -6
    Bug #26162: moved reading of the LOW PRIORITY flag at run time

ChangeSet@1.2475.38.2, 2007-06-03 01:24:56+04:00, evgen@moonbone.local +1 -0
  item_func.cc:
    Post fix for bug#28494.
    The Item_func_set_user_var::check method now silently doesn't use result_field
    if it isn't defined.

  sql/item_func.cc@1.346, 2007-06-03 01:21:14+04:00, evgen@moonbone.local +2 -2
    Post fix for bug#28494.
    The Item_func_set_user_var::check method now silently doesn't use result_field
    if it isn't defined.

ChangeSet@1.2475.38.1, 2007-06-02 23:17:46+04:00, evgen@moonbone.local +4 -0
  Bug#28494: Grouping by Item_func_set_user_var produces incorrect result.
  
  This is an additional fix.
  Item::val_xxx methods are supposed to use original data source and
  Item::val_xxx_result methods to use the item's result field. But for the
  Item_func_set_user_var class val_xxx_result methods were mapped to val_xxx
  methods. This leads, in particular, to producing bad sort keys and thus
  wrong order of the result set of queries with group by/order by clauses.
  
  The set of val_xxx_result methods is added to the Item_func_set_user_var
  class. It's the same as the val_xxx set of method but uses the result_field
  to return a value.

  mysql-test/r/user_var.result@1.46, 2007-06-02 23:17:40+04:00, evgen@moonbone.local +11 -3
    Corrected test case for hte bug#28494.

  mysql-test/t/user_var.test@1.41, 2007-06-02 23:17:38+04:00, evgen@moonbone.local +3 -2
    Corrected test case for hte bug#28494.

  sql/item_func.cc@1.345, 2007-06-02 23:17:40+04:00, evgen@moonbone.local +34 -0
    Bug#28494: Grouping by Item_func_set_user_var produces incorrect result.
    The set of val_xxx_result methods is added to the Item_func_set_user_var
    class. It's the same as the val_xxx set of method but uses the result_field
    to return a value.

  sql/item_func.h@1.171, 2007-06-02 23:17:40+04:00, evgen@moonbone.local +4 -0
    Bug#28494: Grouping by Item_func_set_user_var produces incorrect result.
    The set of val_xxx_result methods is added to the Item_func_set_user_var
    class.

ChangeSet@1.2475.13.11, 2007-06-02 11:44:16-07:00, igor@olga.mysql.com +3 -0
  Fixed bug #28728: a crash when executing EXPLAIN EXTENDED for a query
  using a derived table over a grouping subselect.
  
  This crash happens only when materialization of the derived tables 
  requires creation of auxiliary temporary table, for example when
  a grouping operation is carried out with usage of a temporary table.
  
  The crash happened because EXPLAIN EXTENDED when printing the query
  expression made an attempt to use the objects created in the mem_root
  of the temporary table which has been already freed by the moment
  when printing is called.
  
  This bug appeared after the method Item_field::print() had been 
  introduced.    

  mysql-test/r/subselect.result@1.191, 2007-06-02 11:44:11-07:00, igor@olga.mysql.com +10 -0
    Added a test case for bug #28728.

  mysql-test/t/subselect.test@1.153, 2007-06-02 11:44:11-07:00, igor@olga.mysql.com +14 -0
    Added a test case for bug #28728.

  sql/sql_select.cc@1.529, 2007-06-02 11:44:12-07:00, igor@olga.mysql.com +11 -0
    Fixed bug #28728: a crash when executing EXPLAIN EXTENDED for a query
    using a derived table over a grouping subselect.
    The crash happened because EXPLAIN EXTENDED when printing the query
    expression made an attempt to use the objects created in the mem_root
    of the temporary table which has been already freed by the moment
    when printing is accomplished.
    The fix in JOIN::exec() ensures using existing objects when printing 
    subselects for a derived tables by EXPLAIN EXTENDED.
      

ChangeSet@1.2475.13.10, 2007-06-01 17:58:46-07:00, igor@olga.mysql.com +1 -0
  Post-merge fix.

  sql/sql_view.cc@1.113, 2007-06-01 17:58:44-07:00, igor@olga.mysql.com +7 -102
    Post-merge fix.

ChangeSet@1.2475.37.1, 2007-06-01 16:48:23-04:00, iggy@amd64.(none) +2 -0
  Bug #24732 Executables do not include Vista manifests
  - Cleanup typo.
  - Make sure to only embedded four part numberic version.

  CMakeLists.txt@1.13.1.1, 2007-06-01 16:48:22-04:00, iggy@amd64.(none) +1 -1
    Bug #24732 Executables do not include Vista manifests
    - Correct typo in manifest detection logic.

  win/create_manifest.js@1.3, 2007-06-01 16:48:22-04:00, iggy@amd64.(none) +5 -1
    Bug #24732 Executables do not include Vista manifests
    - Remove -* from the end of version string before embedding
    into manifest.

ChangeSet@1.1616.3046.3, 2007-06-01 19:57:26+02:00, msvensson@pilot.(none) +1 -0
  Move code after variable delcaration

  client/mysqltest.c@1.92.21.68, 2007-06-01 19:57:26+02:00, msvensson@pilot.(none) +1 -1
    Move code after variable delcaration

ChangeSet@1.2475.36.1, 2007-06-01 22:53:50+05:00, ramil@mysql.com +3 -0
  Fix for bug #28652: MySQL (with-debug=full) asserts when alter table operations
  
  Problem: we may create a deadlock committing changes in the mysql_alter_table() when 
  LOCK_open is set. Moreover, "in some variants of the ALTER TABLE commit
  happens earlier, outside of LOCK_open, in other later - inside. It's no good, a storage 
  engine code that is called in between could expect a consistency - either there is a 
  transaction or there is not".
  Fix: move the commit to happen earlier and outside of the LOCK_open.

  mysql-test/r/innodb_mysql.result@1.22, 2007-06-01 22:53:49+05:00, ramil@mysql.com +8 -0
    Fix for bug #28652: MySQL (with-debug=full) asserts when alter table operations
      - test result.

  mysql-test/t/innodb_mysql.test@1.22, 2007-06-01 22:53:49+05:00, ramil@mysql.com +8 -0
    Fix for bug #28652: MySQL (with-debug=full) asserts when alter table operations
      - test case.

  sql/sql_table.cc@1.343.2.1, 2007-06-01 22:53:49+05:00, ramil@mysql.com +9 -12
    Fix for bug #28652: MySQL (with-debug=full) asserts when alter table operations
      - commit moved to happen earlier in the mysql_alter_table(), 
        now we commit changes at the same time as in case when a temporary 
        table is used.

ChangeSet@1.2475.19.14, 2007-06-01 20:05:34+04:00, kostja@bodhi.(none) +2 -0
  Fix more mysqltest warnings.

  mysql-test/t/mysqltest.test@1.56.3.2, 2007-06-01 20:05:32+04:00, kostja@bodhi.(none) +3 -8
    Fix more mysqltest warnings.

  mysql-test/t/strict.test@1.29.1.1, 2007-06-01 20:05:33+04:00, kostja@bodhi.(none) +0 -2
    Fix more mysqltest warnings.

ChangeSet@1.2475.19.13, 2007-06-01 18:06:40+04:00, kostja@bodhi.(none) +1 -0
  Do not ignore mysqltest language interpreter warnings.

  BitKeeper/etc/ignore@1.248, 2007-06-01 18:06:37+04:00, kostja@bodhi.(none) +0 -1
    Do not ignore mysqltest language interpreter warnings.

ChangeSet@1.2475.19.12, 2007-06-01 18:04:25+04:00, kostja@bodhi.(none) +2 -0
  Fix a typo in the test case.

  mysql-test/r/rpl_loaddata.result@1.34, 2007-06-01 18:04:23+04:00, kostja@bodhi.(none) +1 -1
    Update result.

  mysql-test/t/rpl_loaddata.test@1.26, 2007-06-01 18:04:23+04:00, kostja@bodhi.(none) +1 -3
    Fix a typo in the test file.

ChangeSet@1.2475.19.11, 2007-06-01 17:49:01+04:00, kostja@bodhi.(none) +7 -0
  Fix some mysqltest warnings.

  mysql-test/r/sp.result@1.227.2.1, 2007-06-01 17:48:59+04:00, kostja@bodhi.(none) +11 -0
    Update results.

  mysql-test/t/mysql.test@1.30, 2007-06-01 17:49:00+04:00, kostja@bodhi.(none) +1 -1
    Fix a typo.

  mysql-test/t/mysqltest.test@1.56.3.1, 2007-06-01 17:49:00+04:00, kostja@bodhi.(none) +1 -1
    Fix a typo.

  mysql-test/t/order_by.test@1.49, 2007-06-01 17:49:00+04:00, kostja@bodhi.(none) +2 -2
    Fix a typo.

  mysql-test/t/row.test@1.25, 2007-06-01 17:49:00+04:00, kostja@bodhi.(none) +0 -2
    Remove an unsupported command.

  mysql-test/t/sp.test@1.218.1.1, 2007-06-01 17:49:00+04:00, kostja@bodhi.(none) +1 -1
    Fix a typo.

  mysql-test/t/subselect3.test@1.10.1.1, 2007-06-01 17:49:00+04:00, kostja@bodhi.(none) +2 -2
    Fix  mysqltest warnings - now it warns when sees some suspicious --
    comment

ChangeSet@1.2475.17.4, 2007-06-01 13:39:54+02:00, msvensson@pilot.(none) +2 -0
  Add missing semicolon after connect command

  mysql-test/t/grant.test@1.57, 2007-06-01 13:39:53+02:00, msvensson@pilot.(none) +1 -1
    Add missing semicolon after connect command

  mysql-test/t/rpl_packet.test@1.5, 2007-06-01 13:39:53+02:00, msvensson@pilot.(none) +1 -1
    Add missing semicolon after connect command

ChangeSet@1.2475.17.3, 2007-06-01 12:38:41+02:00, msvensson@pilot.(none) +1 -0
  Turn query_logging back on to avoid sideeffects in folloing test section

  mysql-test/t/mysqltest.test@1.56.2.2, 2007-06-01 12:38:40+02:00, msvensson@pilot.(none) +1 -0
    Turn query_logging back on to avoid sideeffects in folloing test section

ChangeSet@1.1616.3043.2, 2007-06-01 12:01:42+02:00, msvensson@pilot.(none) +3 -0
  Bug#28497 wait_for_slave_to_stop can cause random replication mysql-test failures
   - Add funtion "query_get_value to allow reading a fields value
     into a $variable

  client/mysqltest.c@1.92.21.67, 2007-06-01 12:01:42+02:00, msvensson@pilot.(none) +205 -34
    - Add function "let $var= query_get_value(<query>,<colname>,<row>)"
      making it possible to read a value from a specific field in a query 
      into a $variable.

  mysql-test/r/mysqltest.result@1.3.1.25, 2007-06-01 12:01:42+02:00, msvensson@pilot.(none) +39 -0
    Add test cases for "query_get_value"

  mysql-test/t/mysqltest.test@1.3.1.30, 2007-06-01 12:01:42+02:00, msvensson@pilot.(none) +121 -0
    Add test cases for "query_get_value"

ChangeSet@1.2475.34.1, 2007-06-01 02:25:11+05:00, gshchepa@gleb.loc +1 -0
  sql_view.cc:
    Additional patch for bug #28244 to workaround valgrind warnings.

  sql/sql_view.cc@1.110.1.3, 2007-06-01 02:22:20+05:00, gshchepa@gleb.loc +1 -1
    Additional patch for bug #28244 to workaround valgrind warnings.

ChangeSet@1.2475.33.1, 2007-06-01 01:17:14+04:00, evgen@moonbone.local +4 -0
  Bug#28494: Grouping by Item_func_set_user_var produces incorrect result.
  
  The end_update() function uses the Item::save_org_in_field() function to
  save original values of items into the group buffer. But for the 
  Item_func_set_user_var this method was mapped to the save_in_field method.
  The latter function wrongly decides to use the result_field. This leads to
  saving incorrect value in the grouping buffer and wrong result of the whole
  query.
  
  The can_use_result_field argument of the bool type is added to the
  Item_func_set_user_var::save_in_field() function. If it is set to FALSE
  then the item's result field won't be used. Otherwise it will be detected
  whether the result field will be used (old behaviour).
  Two wrapping functions for the function above are added to the 
  Item_func_set_user_var class:
  the save_in_field(Field *field, bool no_conversions) - it calls the above
  function with the can_use_result_field set to TRUE.
  the save_org_in_field(Field *field) - same, but the can_use_result_field
  is set to FALSE.

  mysql-test/r/user_var.result@1.45, 2007-06-01 01:17:03+04:00, evgen@moonbone.local +7 -0
    Added a test case for the bug#28494: Grouping by Item_func_set_user_var
    produces incorrect result.

  mysql-test/t/user_var.test@1.40, 2007-06-01 01:17:01+04:00, evgen@moonbone.local +8 -0
    Added a test case for the bug#28494: Grouping by Item_func_set_user_var
    produces incorrect result.

  sql/item_func.cc@1.344, 2007-06-01 01:17:03+04:00, evgen@moonbone.local +4 -2
    Bug#28494: Grouping by Item_func_set_user_var produces incorrect result.
    The can_use_result_field argument of the bool type is added to the
    Item_func_set_user_var::save_in_field() function. If it is set to FALSE
    then the item's result field won't be used. Otherwise it will be detected
    whether the result field will be used (old behaviour).

  sql/item_func.h@1.170, 2007-06-01 01:17:03+04:00, evgen@moonbone.local +7 -1
    Bug#28494: Grouping by Item_func_set_user_var produces incorrect result.
    The can_use_result_field argument of the bool type is added to the
    Item_func_set_user_var::save_in_field() function.
    Two wrapping functions for the function above are added to the 
    Item_func_set_user_var class:
    the save_in_field(Field *field, bool no_conversions) - it calls the above
    function with the can_use_result_field set to TRUE.
    the save_org_in_field(Field *field) - same, but the can_use_result_field
    is set to FALSE.

ChangeSet@1.2469.51.1, 2007-06-01 02:15:40+05:00, gshchepa@gleb.loc +4 -0
  Fixed bug #27827.
  ON conditions from JOIN expression were ignored at CHECK OPTION
  check when updating a multi-table view with CHECK OPTION.
  
  The st_table_list::prep_check_option function has been
  modified to to take into account ON conditions at CHECK OPTION check
  It was also changed to build the check option condition only once
  for any update used in PS/SP.

  mysql-test/r/view.result@1.200.2.1, 2007-06-01 02:14:21+05:00, gshchepa@gleb.loc +61 -0
    Updated test case for bug #27827.

  mysql-test/t/view.test@1.183.2.1, 2007-06-01 02:14:20+05:00, gshchepa@gleb.loc +52 -0
    Updated test case for bug #27827.

  sql/table.cc@1.251, 2007-06-01 02:14:18+05:00, gshchepa@gleb.loc +62 -17
    Fixed bug #27827.
    The st_table_list::prep_check_option function has been
    modified to to take into account ON conditions at CHECK OPTION check
    It was also changed to build the check option condition only once
    for any update used in PS/SP.

  sql/table.h@1.144, 2007-06-01 02:14:03+05:00, gshchepa@gleb.loc +2 -0
    Fixed bug #27827.
    The st_table_list::check_option_processed variable has been added
    to build the check option condition only once for any update used
    in PS/SP.

ChangeSet@1.2475.31.2, 2007-05-31 19:06:30+05:00, gshchepa@gleb.loc +1 -0
  sql_view.cc:
    Patch to eliminate compilation warning.

  sql/sql_view.cc@1.110.1.2, 2007-05-31 19:05:02+05:00, gshchepa@gleb.loc +1 -1
    Patch to eliminate warning.

ChangeSet@1.2475.32.1, 2007-05-31 15:58:22+02:00, msvensson@pilot.(none) +2 -0
  Bug#28373 mysqltest test case fails with binlog disabled
   - Update tests to be independent how the mysqld was started

  mysql-test/r/mysqltest.result@1.48, 2007-05-31 15:58:21+02:00, msvensson@pilot.(none) +0 -1
    Update result file

  mysql-test/t/mysqltest.test@1.56.1.1, 2007-05-31 15:58:21+02:00, msvensson@pilot.(none) +2 -4
    The purpose of these three test is to check that "sync_with_master"
    detects illegal parameters, the parameter checking is done before
    sending any command to the server and the "save_master_pos" can be
    removed in two cases to make the tests independent of mysqld.
    The thirs test is removed since it's a syntax check that is done
    after the command has been executed and is done for all comands in
    mysqltest - it's tested elsewhere and is not specific to "sync_with_master"  

ChangeSet@1.2469.20.24, 2007-05-31 17:30:56+05:00, gshchepa@gleb.loc +3 -0
  Fixed bug #28244.
  When the same VIEW was created at the master side twice,
  malformed (truncated after the word 'AS') query string 
  was forwarded to client side, so error messages on the
  master and client was different, and replication was
  broken.
  
  The mysql_register_view function call failed
  too early: fields of `view' output argument of this 
  function was not filled yet with correct data required
  for query replication.
  The mysql_register_view function also copied pointers to 
  local buffers into a memory allocated by the caller.

  mysql-test/r/rpl_view.result@1.9, 2007-05-31 17:29:11+05:00, gshchepa@gleb.loc +6 -0
    Updated test case for bug #28244.

  mysql-test/t/rpl_view.test@1.7, 2007-05-31 17:29:10+05:00, gshchepa@gleb.loc +12 -0
    Updated test case for bug #28244.

  sql/sql_view.cc@1.110.1.1, 2007-05-31 17:16:28+05:00, gshchepa@gleb.loc +72 -57
    Fixed bug #28244.
    Checking of existence of VIEW .frm file has been
    moved down to the place, when `view' argument is
    completely filled with proper data.
    view->query.str and view->query.md5 pointers has been
    set to the NULL before return from the mysql_register_view
    function.

ChangeSet@1.2469.50.1, 2007-05-31 14:22:21+02:00, mhansson@dl145s.mysql.com +2 -0
  bug#27741: udf test fails on AIX < 5.3
  
  problem #1: udf_example.so does not get built on AIX
  
  solution#1: build it yourself using
  cd sql; gcc  -g -I ../include/ -I /usr/include/ -lpthread  \
  -shared -o udf_example.so udf_example.c; mv udf_example.so \
  .libs/ 
  
  problem#2 (the bug): udf_example fails because it does not
  recognize the variable LD_LIBRARY_PATH when doing dl_open(),
  it looks at LIBPATH
  
  solution#2: add the library path to LIBPATH
  
  problem#3: udf_example returns the wrong result length since 
  it relies on strmov to return a pointer to the end of the 
  string that it copies. On AIX builds, where m_string.h is not
  included (m_string defines a macro expanding strmov to stpcpy),
  there is a macro expanding strmov to strcpy, which returns a 
  pointer to the first character.
  
  solution#3: define strmov as stpcpy.
  
  problem#4: #2 applies on hp-ux as well, but this platform
  looks at SHLIB_PATH
  
  solution#4: added the library path to SHLIB_PATH

  mysql-test/mysql-test-run.pl@1.218.3.1, 2007-05-31 14:22:19+02:00, mhansson@dl145s.mysql.com +11 -0
    bug#27741: Added library paths to LIBPATH ( shared library 
    path environment variable used on AIX) and
    SHLIB_PATH (ditto on hp-ux)

  sql/udf_example.c@1.35, 2007-05-31 14:22:19+02:00, mhansson@dl145s.mysql.com +2 -1
    bug#27741: define strmov as stpcpy rather than strcpy and 
    include string.h. The definition for strmov in the standalone 
    case was not maintained properly

ChangeSet@1.2475.28.3, 2007-05-31 14:05:07+02:00, df@pippilotta.erinye.com +2 -0
  fix test case

  mysql-test/r/binlog.result@1.7, 2007-05-31 14:05:06+02:00, df@pippilotta.erinye.com +2 -2
    transaction ids increased by one due to have_log_bin.inc

  mysql-test/t/binlog.test@1.9, 2007-05-31 14:05:06+02:00, df@pippilotta.erinye.com +2 -2
    transaction ids for ps-protocol increased by one due to have_log_bin.inc

ChangeSet@1.2475.26.6, 2007-05-31 13:53:44+02:00, georg@bing.mysql.com +1 -0
  fixed not matching if/endif (cmake)

  CMakeLists.txt@1.14, 2007-05-31 13:53:39+02:00, georg@bing.mysql.com +1 -1
    Fixed not matching if/endif (cmake)

ChangeSet@1.2475.29.1, 2007-05-31 14:54:44+04:00, kaa@polly.local +8 -0
  Fix for bug #27643 "query failed : 1114 (The table '' is full)
  
  Problem:
  
  HASH indexes on VARCHAR columns with binary collations did not ignore trailing spaces from strings before comparisons. This could result in duplicate records being successfully inserted into a MEMORY table with unique key constraints.
  
  As a direct consequence of the above, internal MEMORY tables used for GROUP BY calculation in testcases for bug #27643 contained duplicate rows which resulted in duplicate key errors when converting those temporary tables to MyISAM. Additionally, that error was incorrectly converted to the 'table is full' error.
  
  Solution:
  
  - ignore trailing spaces in VARCHAR fields with binary collations when calculating hashes.
  - return a proper error from create_myisam_from_heap() when conversion fails.

  mysql-test/r/ctype_ucs2_def.result@1.4, 2007-05-31 14:54:37+04:00, kaa@polly.local +8 -0
    Added a testcase for bug #27643.

  mysql-test/r/heap_hash.result@1.21, 2007-05-31 14:54:37+04:00, kaa@polly.local +16 -0
    Added a testcase for bug #27643.

  mysql-test/t/ctype_ucs2_def.test@1.5, 2007-05-31 14:54:37+04:00, kaa@polly.local +16 -0
    Added a testcase for bug #27643.

  mysql-test/t/heap_hash.test@1.12, 2007-05-31 14:54:37+04:00, kaa@polly.local +24 -1
    Added a testcase for bug #27643.

  sql/sql_select.cc@1.515.1.1, 2007-05-31 14:54:37+04:00, kaa@polly.local +1 -1
    Return an appropriate error instead of 'table is full' when conversion from MEMORY to MyISAM fails.

  strings/ctype-bin.c@1.75, 2007-05-31 14:54:38+04:00, kaa@polly.local +24 -1
    Added my_hash_sort_8bit_bin() which ignores trailing spaces when calculating hashes, and is now used for VARCHAR columns instead of my_hash_sort_bin().

  strings/ctype-mb.c@1.56, 2007-05-31 14:54:38+04:00, kaa@polly.local +7 -0
    Ignore trailing spaces when calculating a string hash in my_hash_sort_mb_bin().

  strings/ctype-ucs2.c@1.66, 2007-05-31 14:54:38+04:00, kaa@polly.local +4 -1
    Ignore trailing spaces when calculating a string hash in my_hash_sort_ucs2_bin().

ChangeSet@1.2475.28.2, 2007-05-31 12:21:55+02:00, df@pippilotta.erinye.com +1 -0
  fix test case broken for ps-protocol by previous push

  mysql-test/t/mix_innodb_myisam_binlog.test@1.27, 2007-05-31 12:21:48+02:00, df@pippilotta.erinye.com +10 -10
    have_log_bin.inc increases transaction count by one, modify ps-protocol substitutions accordingly

ChangeSet@1.2469.24.4, 2007-05-31 09:34:24+02:00, df@pippilotta.erinye.com +16 -0
  some test cases cannot run with --skip-log-bin

  mysql-test/t/ctype_cp932_notembedded.test@1.2, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +1 -0
    test requires binlog for now

  mysql-test/r/mix_innodb_myisam_binlog.result@1.31, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +15 -15
    have_log_bin.inc increases transaction count by onw

  mysql-test/t/binlog.test@1.8, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +1 -0
    test obviously requires binlog

  mysql-test/t/blackhole.test@1.9.1.1, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +1 -0
    test requires binlog for now

  mysql-test/t/ctype_cp932_binlog.test@1.4.1.1, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +1 -0
    test requires binlog

  mysql-test/t/ctype_ucs_binlog.test@1.7, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +1 -0
    test requires binlog

  mysql-test/t/drop_temp_table.test@1.9, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +1 -0
    test requires binlog for now

  mysql-test/t/flush_block_commit_notembedded.test@1.2, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +2 -0
    test requires binlog for now

  mysql-test/t/insert_select-binlog.test@1.3, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +1 -0
    test requires binlog

  mysql-test/t/mix_innodb_myisam_binlog.test@1.26, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +1 -1
    test requires binlog

  mysql-test/t/mysqlbinlog-cp932.test@1.3, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +2 -1
    test requires binlog

  mysql-test/t/mysqlbinlog.test@1.47, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +2 -0
    test requires binlog

  mysql-test/t/mysqlbinlog2.test@1.10, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +2 -0
    test requires binlog

  mysql-test/t/mysqltest.test@1.55.1.1, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +2 -0
    test requires binlog for now

  mysql-test/t/sp_trans.test@1.12.1.1, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +1 -0
    test requires binlog for now

  mysql-test/t/user_var-binlog.test@1.5, 2007-05-31 09:34:22+02:00, df@pippilotta.erinye.com +1 -0
    test requires binlog for now

ChangeSet@1.2475.27.1, 2007-05-31 12:10:21+05:00, gshchepa@gleb.loc +3 -0
  Fixed bug #28598.
  mysqld crashed when a long-running explain query was killed from
  another connection.
  
  When the current thread caught a kill signal executing the function
  best_extension_by_limited_search it just silently returned to  
  the calling function greedy_search without initializing elements of
  the join->best_positions array.
  However, the greedy_search function ignored thd->killed status
  after a calls to the best_extension_by_limited_search function, and
  after several calls the greedy_search function used an uninitialized
  data from the join->best_positions[idx] to search position in the
  join->best_ref array. 
  That search failed, and greedy_search tried to call swap_variables
  function with NULL argument - that caused a crash.

  mysql-test/r/kill.result@1.18, 2007-05-31 12:10:09+05:00, gshchepa@gleb.loc +2 -0
    Updated test case for bug #28598.

  mysql-test/t/kill.test@1.26, 2007-05-31 12:10:08+05:00, gshchepa@gleb.loc +53 -0
    Updated test case for bug #28598.

  sql/sql_select.cc@1.526.1.1, 2007-05-31 12:09:53+05:00, gshchepa@gleb.loc +53 -40
    Fixed bug #28598.
    choose_plan(), greedy_search(), best_extension_by_limited_search()
    and find_best() functions have been changed to return TRUE in case
    of fatal error.

ChangeSet@1.2475.1.29, 2007-05-31 00:40:56+02:00, tsmith@quadxeon.mysql.com +1 -0
  mysqldump.c:
    Fix harmless typo (caught thanks to warning)

  client/mysqldump.c@1.265, 2007-05-31 00:40:37+02:00, tsmith@quadxeon.mysql.com +3 -3
    Fix harmless typo (caught thanks to warning)

ChangeSet@1.1616.2877.104, 2007-05-30 22:11:53+02:00, kent@mysql.com +2 -0
  Makefile.am, configure.in:
    Added --with-mysqld-libs configure flag

  configure.in@1.201.64.28, 2007-05-30 22:11:44+02:00, kent@mysql.com +6 -0
    Added --with-mysqld-libs configure flag

  sql/Makefile.am@1.77.1.42, 2007-05-30 22:11:44+02:00, kent@mysql.com +2 -1
    Added --with-mysqld-libs configure flag

ChangeSet@1.2475.19.9, 2007-05-30 22:29:15+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +1 -0
  bug#22725 
  
  refining the test because of Bug #28786 'reset master' does not reset binlogging on embeded server

  mysql-test/t/binlog_killed.test@1.7, 2007-05-30 22:29:13+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +1 -1
    the test can not pass on embedded server. Setting the include-guard.

ChangeSet@1.2475.21.8, 2007-05-30 23:28:14+04:00, evgen@moonbone.local +3 -0
  Bug#28729: Field_enum wrongly reported an error while storing an empty string.
  
  ENUM fields internally store their values as integers and may use integer
  values as indexes to their values. Invalid values are mapped to zero value.
  When storing an empty string the ENUM field fails to find an appropriate value
  and tries to convert the provided string to integer. The conversion also
  fails and error is returned even if the thd->count_cuted_fields is set to
  CHECK_FIELD_IGNORE. This makes the range optimizer wrongly decide that an
  impossible range is present.
  
  Now the Field_enum::store() returns error while storing an empty string only
  if the thd->count_cuted_fields isn't set to CHECK_FIELD_IGNORE.

  mysql-test/r/type_enum.result@1.30, 2007-05-30 23:27:52+04:00, evgen@moonbone.local +7 -0
    Added a test case for the bug#28729: Field_enum wrongly reported an error
    while storing an empty string.

  mysql-test/t/type_enum.test@1.18, 2007-05-30 23:28:00+04:00, evgen@moonbone.local +8 -0
    Added a test case for the bug#28729: Field_enum wrongly reported an error
    while storing an empty string.

  sql/field.cc@1.349.1.1, 2007-05-30 23:27:51+04:00, evgen@moonbone.local +2 -0
    Bug#28729: Field_enum wrongly reported an error while storing an empty string.
    Now the Field_enum::store() returns error while storing an empty string only
    if the thd->count_cuted_fields isn't set to CHECK_FIELD_IGNORE.

ChangeSet@1.2475.22.2, 2007-05-30 22:47:52+04:00, kaa@polly.local +3 -0
  Got rid of log_01[], because we don't really need it. Division and log_10[] can always be used instead, which is also a more precise way.
  
  This is for bug #28121.

  include/m_string.h@1.42, 2007-05-30 22:47:50+04:00, kaa@polly.local +0 -1
    Got rid of log_01[], because we don't really need it.

  sql/item_cmpfunc.cc@1.255, 2007-05-30 22:47:50+04:00, kaa@polly.local +1 -1
    Got rid of log_01[], because we don't really need it.

  strings/strtod.c@1.25.1.5, 2007-05-30 22:47:50+04:00, kaa@polly.local +1 -37
    Got rid of log_01[], because we don't really need it.

ChangeSet@1.2377.51.13, 2007-05-30 17:25:22+02:00, tomas@whalegate.ndb.mysql.com +6 -0
  Bug #28443
  - correction of merge error

  ndb/src/common/transporter/Packer.cpp@1.7.1.1, 2007-05-30 17:25:19+02:00, tomas@whalegate.ndb.mysql.com +5 -0
    Bug #28443
    - correction of merge error

  ndb/src/common/transporter/TCP_Transporter.hpp@1.5.1.2, 2007-05-30 17:25:19+02:00, tomas@whalegate.ndb.mysql.com +4 -0
    Bug #28443
    - correction of merge error

  ndb/src/common/transporter/TransporterRegistry.cpp@1.61.1.2, 2007-05-30 17:25:19+02:00, tomas@whalegate.ndb.mysql.com +22 -19
    Bug #28443
    - correction of merge error

  ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp@1.28.3.1, 2007-05-30 17:25:19+02:00, tomas@whalegate.ndb.mysql.com +17 -0
    Bug #28443
    - correction of merge error

  ndb/test/ndbapi/testNdbApi.cpp@1.24.1.1, 2007-05-30 17:25:19+02:00, tomas@whalegate.ndb.mysql.com +34 -0
    Bug #28443
    - correction of merge error

  ndb/test/run-test/daily-basic-tests.txt@1.46.1.3, 2007-05-30 17:25:19+02:00, tomas@whalegate.ndb.mysql.com +4 -0
    Bug #28443
    - correction of merge error

ChangeSet@1.2475.23.2, 2007-05-30 17:04:04+05:00, gluh@mysql.com +19 -0
  backport of Bug#11491 Misleading error message if not NULL column set to NULL, SQL mode TRADITIONAL

  mysql-test/r/auto_increment.result@1.40, 2007-05-30 17:04:02+05:00, gluh@mysql.com +2 -2
    result fix

  mysql-test/r/create.result@1.128, 2007-05-30 17:04:02+05:00, gluh@mysql.com +1 -1
    result fix

  mysql-test/r/insert.result@1.29, 2007-05-30 17:04:02+05:00, gluh@mysql.com +1 -1
    result fix

  mysql-test/r/insert_select.result@1.47, 2007-05-30 17:04:02+05:00, gluh@mysql.com +2 -2
    result fix

  mysql-test/r/insert_update.result@1.27, 2007-05-30 17:04:02+05:00, gluh@mysql.com +2 -2
    result fix

  mysql-test/r/key.result@1.38, 2007-05-30 17:04:02+05:00, gluh@mysql.com +2 -2
    result fix

  mysql-test/r/null.result@1.36, 2007-05-30 17:04:02+05:00, gluh@mysql.com +9 -9
    result fix

  mysql-test/r/null_key.result@1.38, 2007-05-30 17:04:02+05:00, gluh@mysql.com +1 -1
    result fix

  mysql-test/r/ps_2myisam.result@1.49, 2007-05-30 17:04:02+05:00, gluh@mysql.com +1 -1
    result fix

  mysql-test/r/ps_3innodb.result@1.52, 2007-05-30 17:04:02+05:00, gluh@mysql.com +1 -1
    result fix

  mysql-test/r/ps_4heap.result@1.48, 2007-05-30 17:04:02+05:00, gluh@mysql.com +1 -1
    result fix

  mysql-test/r/ps_5merge.result@1.49, 2007-05-30 17:04:02+05:00, gluh@mysql.com +2 -2
    result fix

  mysql-test/r/ps_6bdb.result@1.52, 2007-05-30 17:04:02+05:00, gluh@mysql.com +1 -1
    result fix

  mysql-test/r/ps_7ndb.result@1.52, 2007-05-30 17:04:02+05:00, gluh@mysql.com +1 -1
    result fix

  mysql-test/r/strict.result@1.36, 2007-05-30 17:04:02+05:00, gluh@mysql.com +9 -9
    result fix

  mysql-test/r/view.result@1.201.2.1, 2007-05-30 17:04:03+05:00, gluh@mysql.com +1 -1
    result fix

  mysql-test/r/warnings.result@1.41, 2007-05-30 17:04:03+05:00, gluh@mysql.com +3 -3
    result fix

  mysql-test/t/strict.test@1.30, 2007-05-30 17:04:03+05:00, gluh@mysql.com +4 -4
    test fix

  sql/field_conv.cc@1.66, 2007-05-30 17:04:03+05:00, gluh@mysql.com +1 -2
    backport of Bug#11491 Misleading error message if not NULL column set to NULL, SQL mode TRADITIONAL

ChangeSet@1.2475.25.2, 2007-05-30 16:39:25+05:00, gshchepa@gleb.loc +1 -0
  sql_update.cc:
    Fixed bug #28716: additional patch to eliminate compilation
    error under Windows.

  sql/sql_update.cc@1.217.1.2, 2007-05-30 16:37:36+05:00, gshchepa@gleb.loc +3 -2
    Fixed bug #28716: additional patch to eliminate compilation
    error under Windows.

ChangeSet@1.2377.51.12, 2007-05-30 12:29:19+02:00, tomas@whalegate.ndb.mysql.com +1 -0
  Bug #28770 file already opened error when corrupt schema file
  - make sure we close the first file, before opening the next

  ndb/src/kernel/blocks/dbdict/Dbdict.cpp@1.71.1.4, 2007-05-30 12:29:17+02:00, tomas@whalegate.ndb.mysql.com +7 -1
    Bug #28770 file already opened error when corrupt schema file
    - make sure we close the first file, before opening the next

ChangeSet@1.2475.19.8, 2007-05-30 10:56:18+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +2 -0
  bug#22725
  
  test comments correction

  mysql-test/r/binlog_killed.result@1.6, 2007-05-30 10:54:48+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +1 -1
    changed

  mysql-test/t/binlog_killed.test@1.6, 2007-05-30 10:54:49+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +3 -3
    wrong comments (but important ones) left;
    little refinement in result calc

ChangeSet@1.2475.16.5, 2007-05-30 11:53:50+04:00, anozdrin@ibm. +1 -0
  Disable IM-tests.

  mysql-test/t/disabled.def@1.46.1.4, 2007-05-30 11:53:48+04:00, anozdrin@ibm. +3 -0
    Disable IM-tests.

ChangeSet@1.2469.49.1, 2007-05-30 12:21:39+05:00, gshchepa@gleb.loc +4 -0
  Fixed bug #28716.
  The result of the CHECK OPTION condition evaluation over an
  updated record and records of merged tables was arbitrary and
  dependant on the order of records in the merged tables during
  the execution of SELECT statement.
  
  The CHECK OPTION expression was evaluated over expired record
  buffers (with arbitrary data in the fields).
  
  Rowids of tables used in the CHECK OPTION expression were
  added to temporary table rows. The multi_update::do_updates()
  method was modified to restore necessary record buffers
  before evaluation of the CHECK OPTION condition.

  mysql-test/r/view.result@1.200.1.1, 2007-05-30 12:21:12+05:00, gshchepa@gleb.loc +17 -0
    Updated test case for bug #28716.

  mysql-test/t/view.test@1.183.1.1, 2007-05-30 12:21:09+05:00, gshchepa@gleb.loc +16 -0
    Updated test case for bug #28716.

  sql/sql_class.h@1.331.1.1, 2007-05-30 12:18:49+05:00, gshchepa@gleb.loc +5 -0
    Fixed bug #29716.
    The multi_update::unupdatable_check_opt_tables variable
    has been added.

  sql/sql_update.cc@1.217.1.1, 2007-05-30 12:18:58+05:00, gshchepa@gleb.loc +112 -29
    Fixed bug #29716.
    Rowids of tables used in the CHECK OPTION expression were
    added to temporary table rows. The multi_update::do_updates()
    method was modified to restore necessary record buffers
    before evaluation of the CHECK OPTION condition.

ChangeSet@1.2475.12.12, 2007-05-30 09:00:50+02:00, tomas@whalegate.ndb.mysql.com +1 -0
  Bug #28749    MaxNoOfOpenFiles offset by 1

  ndb/src/kernel/blocks/ndbfs/Ndbfs.cpp@1.21, 2007-05-30 09:00:48+02:00, tomas@whalegate.ndb.mysql.com +1 -1
    Bug #28749    MaxNoOfOpenFiles offset by 1

ChangeSet@1.2475.24.1, 2007-05-30 09:55:38+03:00, gkodinov@magare.gmz +8 -0
  Bug #28492: subselect returns LONG in >5.0.24a and LONGLONG in <=5.0.24a
  
  Integer values with 10 digits may or may not fit into an int column 
  (e.g. 2147483647 vs 6147483647).
  Thus when creating a temp table column for such an int we must
  use bigint instead.
  Fixed to use bigint.
  Also subsituted a "magic number" with a named constant.

  mysql-test/r/analyse.result@1.28, 2007-05-30 09:55:36+03:00, gkodinov@magare.gmz +12 -12
    Bug #28492: Adjusted the results after having fixed the bug

  mysql-test/r/metadata.result@1.16, 2007-05-30 09:55:36+03:00, gkodinov@magare.gmz +11 -0
    Bug #28492: test case

  mysql-test/r/olap.result@1.39, 2007-05-30 09:55:36+03:00, gkodinov@magare.gmz +2 -2
    Bug #28492: Adjusted the results after having fixed the bug

  mysql-test/r/sp.result@1.227.1.1, 2007-05-30 09:55:36+03:00, gkodinov@magare.gmz +1 -1
    Bug #28492: Adjusted the results after having fixed the bug

  mysql-test/r/view.result@1.202, 2007-05-30 09:55:36+03:00, gkodinov@magare.gmz +1 -1
    Bug #28492: Adjusted the results after having fixed the bug

  mysql-test/t/metadata.test@1.7, 2007-05-30 09:55:36+03:00, gkodinov@magare.gmz +11 -0
    Bug #28492: test case

  sql/field.h@1.204, 2007-05-30 09:55:36+03:00, gkodinov@magare.gmz +1 -1
    Bug #28492: Replaced a magic number with a constant

  sql/sql_select.cc@1.527, 2007-05-30 09:55:36+03:00, gkodinov@magare.gmz +7 -2
    Bug #28492: Treat integers with 10 and more digits as 
    bigint.

ChangeSet@1.2475.19.7, 2007-05-30 00:22:24+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +2 -0
  bug#22725
  
  combining the final result variable in such way that either option of the test execution
  will yield zero.

  mysql-test/r/binlog_killed.result@1.5, 2007-05-30 00:22:22+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +3 -15
    results changed

  mysql-test/t/binlog_killed.test@1.5, 2007-05-30 00:22:22+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +12 -16
    there are two options for the test passing:
    1. no rows inserted and the INSERT gets killed, then there is no INSERT query in binlog
    2. all rows inserted, then INSERT gets to binlog and error_code is zero

ChangeSet@1.2475.23.1, 2007-05-30 00:33:12+04:00, evgen@moonbone.local +4 -0
  Bug#28450: The Item_date_add_interval in select list may fail the field 
  type assertion.
  
  The bug was introduced by the patch for bug #16377.
  The "+ INTERVAL" (Item_date_add_interval) function detects its result type
  by the type of its first argument. But in some cases it returns STRING
  as the result type. This happens when, for example, the first argument is a 
  DATE represented as string. All this makes the get_datetime_value()
  function misinterpret such result and return wrong DATE/DATETIME value.
  To avoid such cases in the fix for #16377 the code that detects correct result
  field type on the first execution was added to the
  Item_date_add_interval::get_date() function. Due to this the result
  field type of the Item_date_add_interval item stored by the send_fields()
  function differs from item's result field type at the moment when
  the item is actually sent. It causes an assertion failure.
  
  Now the get_datetime_value() detects that the DATE value is returned by
  some item not only by checking the result field type but also by comparing
  the returned value with the 100000000L constant - any DATE value should be
  less than this value.
  Removed result field type adjusting code from the
  Item_date_add_interval::get_date() function.

  mysql-test/r/func_date_add.result@1.11, 2007-05-30 00:32:57+04:00, evgen@moonbone.local +11 -0
    Added a test case for the bug#28450: The Item_date_add_interval in select list may fail the field
    type assertion.

  mysql-test/t/func_date_add.test@1.10, 2007-05-30 00:32:58+04:00, evgen@moonbone.local +10 -0
    Added a test case for the bug#28450: The Item_date_add_interval in select list may fail the field
    type assertion.

  sql/item_cmpfunc.cc@1.253.1.1, 2007-05-30 00:32:55+04:00, evgen@moonbone.local +6 -1
    Bug#28450: The Item_date_add_interval in select list may fail the field 
    type assertion.
    Now the get_datetime_value() detects that the DATE value is returned by
    some item not only by checking the result field type but also by comparing
    the returned value with the 100000000L constant - any DATE value should be
    less than this value.

  sql/item_timefunc.cc@1.144, 2007-05-30 00:32:57+04:00, evgen@moonbone.local +0 -21
    Bug#28450: The Item_date_add_interval in select list may fail the field 
    type assertion.
    Removed result field type adjusting code from the
    Item_date_add_interval::get_date() function.

ChangeSet@1.2475.19.6, 2007-05-29 23:16:50+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +2 -0
  bug#22725
  
  tests refining, see binlog_killed.test file for details

  mysql-test/r/binlog_killed.result@1.4, 2007-05-29 23:16:47+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +2 -3
    results changed

  mysql-test/t/binlog_killed.test@1.4, 2007-05-29 23:16:47+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +20 -2
    killer conn waits for the first row to appear;
    log-disabling kill query since prey's id is not deterministic;
    correcting pattern to search in binlog for insert query;

ChangeSet@1.2475.19.5, 2007-05-29 21:05:08+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +1 -0
  bug#22725
  
  refining the test.

  mysql-test/t/binlog_killed.test@1.3, 2007-05-29 21:05:06+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +1 -0
    due to killing reap may catch an error though it's indeterministic.

ChangeSet@1.2475.19.4, 2007-05-29 18:38:47+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +1 -0
  bug#22725
  
  result file updated

  mysql-test/r/binlog_killed.result@1.3, 2007-05-29 18:38:45+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +6 -3
    results updated

ChangeSet@1.2475.19.3, 2007-05-29 16:27:55+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +3 -0
  Bug#22725 Replication outages from ER_SERVER_SHUTDOWN (1053) set in replication events
    
  Refining the tests since pb revealed the older version's fragality - the error from SF() due to killed
  may be different on different env:s.
  DBUG_ASSERT instead of assert.

  mysql-test/r/binlog_killed.result@1.2, 2007-05-29 16:27:52+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +5 -89
    new result file

  mysql-test/t/binlog_killed.test@1.2, 2007-05-29 16:27:52+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +48 -22
    regression for bug#22725 simplified. tests for bug27563, BUG#27565 made inactive.

  sql/sql_insert.cc@1.239, 2007-05-29 16:27:53+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +1 -1
    DBUG_ASSERT

ChangeSet@1.2475.22.1, 2007-05-29 16:35:55+04:00, kaa@polly.local +1 -0
  Moved size_of() from Field_double to Field_real in order to properly clone Field_float and Field_double. This is to fix PushBuild failures introduced by the patch for bug #28121.

  sql/field.h@1.202.1.2, 2007-05-29 16:35:52+04:00, kaa@polly.local +1 -1
    Moved size_of() from Field_double to Field_real in order to properly clone Field_float and Field_double.

ChangeSet@1.2475.21.1, 2007-05-29 14:45:30+03:00, gkodinov@magare.gmz +3 -0
  Bug #28605: SHOW CREATE VIEW with views using stored_procedures no 
   longer showing SP names.
  SHOW CREATE VIEW uses Item::print() methods to reconstruct the 
  statement text from the parse tree.
  The print() method for stored procedure calls needs allocate 
  space to print the function's quoted name.
  It was incorrectly calculating the length of the buffer needed 
  (was too short).
  Fixed to reflect the actual space needed.

  mysql-test/r/sp.result@1.228, 2007-05-29 14:45:29+03:00, gkodinov@magare.gmz +11 -0
    Bug #28605: test case

  mysql-test/t/sp.test@1.219, 2007-05-29 14:45:29+03:00, gkodinov@magare.gmz +20 -0
    Bug #28605: test case

  sql/item_func.cc@1.342, 2007-05-29 14:45:29+03:00, gkodinov@magare.gmz +3 -2
    Bug #28605: fixed the string length calculation

ChangeSet@1.2475.13.7, 2007-05-29 14:36:21+03:00, gkodinov@magare.gmz +1 -0
  Bug #28366: multiple load_file('a: ... ') causes entire mysqld process to hang
  
  When a Windows console application that has an open console (e.g. mysqld-nt 
  started with the --console option) encounters certain type of errors 
  (like no floppy disk in a floppy drive) the OS will pop-up an 
  "abort/retry/ignore" dialog and block the application (depending on a 
  registry setting : see http://msdn2.microsoft.com/en-us/embedded/aa731206.aspx
  for details).
  Fixed by disabling the dialog popups for every error except a GPF and
  alignment errors. This is safe to do as the actual error gets reported
  (and handled) to mysqld.

  sql/mysqld.cc@1.609.3.1, 2007-05-29 14:36:20+03:00, gkodinov@magare.gmz +5 -0
    Bug #28366: disable the system error messageboxes.

ChangeSet@1.1616.3045.1, 2007-05-29 12:23:49+02:00, df@pippilotta.erinye.com +1 -0
  BUG#17707 check-cpu script doesn't include Turion

  BUILD/check-cpu@1.12.1.4, 2007-05-29 12:23:48+02:00, df@pippilotta.erinye.com +6 -0
    BUG#17707 add Turion (and Opteron)

ChangeSet@1.2475.19.2, 2007-05-28 22:20:22+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +7 -0
  Bug#22725 Replication outages from ER_SERVER_SHUTDOWN (1053) set in replication events
    
  The reason for the bug was that replaying of a query on slave could not be possible since its event
  was recorded with the killed error. Due to the specific of handling INSERT, which per-row-while-loop is 
  unbreakable to killing, the query on transactional table should have not appeared in binlog unless
  there was  a call to a stored routine that got interrupted with killing (and then there must be an error
  returned out of the loop).
     
  The offered solution added the following rule for binlogging of INSERT that accounts the above
  specifics:
  For INSERT on transactional-table if the error was not set the only raised flag
  is harmless and is ignored via masking out on time of creation of binlog event.
     
  For both table types the combination of raised error and KILLED flag indicates that there
  was potentially partial execution on master and consistency is under the question.
  In that case the code continues to binlog an event with an appropriate killed error.
   
  The fix relies on the specified behaviour of stored routine that must propagate the error 
  to the top level query handling if the thd->killed flag was raised in the routine execution.
     
  The patch adds an arg with the default killed-status-unset value to Query_log_event::Query_log_event.

  mysql-test/r/binlog_killed.result@1.1, 2007-05-28 22:20:19+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +106 -0
    new result file

  mysql-test/r/binlog_killed.result@1.0, 2007-05-28 22:20:19+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +0 -0

  mysql-test/t/binlog_killed.test@1.1, 2007-05-28 22:20:19+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +206 -0
    regression tests also apply for bug27563, BUG#27565

  mysql-test/t/binlog_killed.test@1.0, 2007-05-28 22:20:19+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +0 -0

  sql/log_event.cc@1.233, 2007-05-28 22:20:18+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +24 -5
    killed_status as the value of thd->killed can be passed as an arg to the constructor.
    if the value is different from the default the arg is set to the current thd->killed value.
    A caller might need to masquerade thd->killed with THD::NOT_KILLED.
    So far only mysql_insert() uses such explicit way to tell the constructor about killing status.

  sql/log_event.h@1.135, 2007-05-28 22:20:19+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +2 -1
    default arg to the constructor with meaning of killed status of the query. 
    if the arg is not explicitly provided the status of thd->killed will be snapshot 
    inside of the constuctor, which is potentially incorrect (see bug#27571)

  sql/sql_class.h@1.333, 2007-05-28 22:20:19+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +10 -2
    extending killed_state with no-state member.

  sql/sql_insert.cc@1.238, 2007-05-28 22:20:19+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +27 -1
    ignore the KILLED flag incl KILL_BAD_DATA when the INSERT query event 
    is created without an `error';

  sql/sql_update.cc@1.218, 2007-05-28 22:20:19+03:00, aelkin@dsl-hkibras1-ff5dc300-70.dhcp.inet.fi +31 -0
    Suggestion how to fix bug#27571 as comments.

ChangeSet@1.2475.20.3, 2007-05-28 21:43:31+04:00, kaa@polly.local +1 -0
  Don't use log_01[] in my_strtod() to avoid loss of precision.
  
  This is for bug #28121.

  strings/strtod.c@1.25.1.4, 2007-05-28 21:43:27+04:00, kaa@polly.local +2 -2
    Don't use log_01[] in my_strtod() to avoid loss of precision.

ChangeSet@1.1616.3044.1, 2007-05-28 18:03:24+02:00, msvensson@pilot.(none) +1 -0
  Bug #26397  	mysql-test-run.pl --start-dirty removes binary logs
   - Don't delete anything if starting dirty

  mysql-test/mysql-test-run.pl@1.8.24.1, 2007-05-28 18:03:23+02:00, msvensson@pilot.(none) +6 -0
    Don't delete anything if starting dirty

ChangeSet@1.2377.51.11, 2007-05-28 16:31:31+02:00, tomas@whalegate.ndb.mysql.com +1 -0
  print user and system time at watchdog check

  ndb/src/kernel/vm/WatchDog.cpp@1.7, 2007-05-28 16:31:29+02:00, tomas@whalegate.ndb.mysql.com +8 -0
    print user and system time at watchdog check

ChangeSet@1.2377.51.10, 2007-05-28 16:18:04+02:00, tomas@whalegate.ndb.mysql.com +1 -0
  make memeber public

  ndb/test/include/NdbRestarter.hpp@1.6.1.1, 2007-05-28 16:18:02+02:00, tomas@whalegate.ndb.mysql.com +2 -1
    make memeber public

ChangeSet@1.2377.51.9, 2007-05-28 15:59:02+02:00, tomas@whalegate.ndb.mysql.com +5 -0
  bug#28717, make sure only master updates activeStatus
    so that othernodes dont get confused after having recevied status from master
    and then tries to update it self

  ndb/src/kernel/blocks/ERROR_codes.txt@1.25.1.1, 2007-05-28 15:59:00+02:00, tomas@whalegate.ndb.mysql.com +6 -1
    error 1001, delay node_failrep

  ndb/src/kernel/blocks/dbdih/DbdihMain.cpp@1.66.1.2, 2007-05-28 15:59:00+02:00, tomas@whalegate.ndb.mysql.com +7 -1
    bug#28717, make sure only master updates activeStatus
      so that othernodes dont get confused after having recevied status from master
      and then tries to update it self

  ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp@1.34.4.1, 2007-05-28 15:59:00+02:00, tomas@whalegate.ndb.mysql.com +7 -0
    error 1001, delay node_failrep

  ndb/test/ndbapi/testNodeRestart.cpp@1.26.1.1, 2007-05-28 15:59:01+02:00, tomas@whalegate.ndb.mysql.com +81 -0
    testcase

  ndb/test/run-test/daily-basic-tests.txt@1.46.1.2, 2007-05-28 15:59:01+02:00, tomas@whalegate.ndb.mysql.com +4 -0
    testcase

ChangeSet@1.2469.48.1, 2007-05-28 13:50:33+02:00, thek@adventure.(none) +2 -0
  Bug#24988 FLUSH PRIVILEGES causes brief unavailability
  - A race condition caused brief unavailablility when trying to acccess
    a table.
  - The unprotected variable 'grant_option' wasn't intended to alternate
    during normal execution. Variable initialization moved to grant_init
    a lines responsible for the alternation are removed. 

  sql/mysqld.cc@1.607.2.1, 2007-05-28 13:50:31+02:00, thek@adventure.(none) +9 -1
    - Added documentation to describe grant_option flag.

  sql/sql_acl.cc@1.220, 2007-05-28 13:50:31+02:00, thek@adventure.(none) +4 -7
    - This patch removes lines which causes grant_option to alternate and moves
      variable initialization to the grant_init()-function.

ChangeSet@1.2475.20.2, 2007-05-28 15:33:22+04:00, kaa@polly.local +3 -0
  Some Windows-related fixes to make Microsoft compilers happy. This is for bug #28128.

  include/m_string.h@1.41, 2007-05-28 15:33:17+04:00, kaa@polly.local +2 -2
    Reduced the number of elements in log_10[] and log_01[] to not exceed DBL_MAX.

  sql/field.cc@1.351, 2007-05-28 15:33:17+04:00, kaa@polly.local +1 -1
    Avoid the warning on Windows.

  strings/strtod.c@1.25.1.3, 2007-05-28 15:33:17+04:00, kaa@polly.local +2 -2
    Reduced the number of elements in log_10[] and log_01[] to not exceed DBL_MAX.

ChangeSet@1.2475.12.7, 2007-05-28 13:23:11+02:00, tomas@whalegate.ndb.mysql.com +3 -0
  Bug #28719: multi pk update ignore corrupts data
  - check multi update as well as update
  - this bug is not present in 5.0, but execution patch is wrong, so there are probably other bugs

  mysql-test/r/ndb_basic.result@1.38, 2007-05-28 13:23:09+02:00, tomas@whalegate.ndb.mysql.com +71 -0
    Bug #28719: multi pk update ignore corrupts data
    - add test + backport some tests from 5.1

  mysql-test/t/ndb_basic.test@1.40, 2007-05-28 13:23:09+02:00, tomas@whalegate.ndb.mysql.com +40 -0
    Bug #28719: multi pk update ignore corrupts data
    - add test + backport some tests from 5.1

  sql/ha_ndbcluster.cc@1.315, 2007-05-28 13:23:09+02:00, tomas@whalegate.ndb.mysql.com +2 -1
    Bug #28719: multi pk update ignore corrupts data
    - check multi update as well as update
    - this bug is not present in 5.0, but execution patch is wrong, so there are probably other bugs

ChangeSet@1.2475.12.6, 2007-05-28 12:56:48+02:00, tomas@whalegate.ndb.mysql.com +2 -0
  Bug #28653    Fast GCP + high load + high RedoBuffer causes ndbrequire
  - correction, backport to 5.0

  ndb/src/kernel/blocks/dblqh/DblqhInit.cpp@1.20, 2007-05-28 12:56:46+02:00, tomas@whalegate.ndb.mysql.com +5 -0
    Bug #28653    Fast GCP + high load + high RedoBuffer causes ndbrequire
    - correction, backport to 5.0

  ndb/src/kernel/blocks/dblqh/DblqhMain.cpp@1.108, 2007-05-28 12:56:46+02:00, tomas@whalegate.ndb.mysql.com +0 -5
    Bug #28653    Fast GCP + high load + high RedoBuffer causes ndbrequire
    - correction, backport to 5.0

ChangeSet@1.2469.47.1, 2007-05-28 12:44:59+04:00, kaa@polly.local +10 -0
  Fix for bug #28121 "INSERT or UPDATE into DOUBLE(200,0) field being truncated to 31 digits"
  
  When storing a large number to a FLOAT or DOUBLE field with fixed length, it could be incorrectly truncated if the field's length was greater than 31.
  
  This patch also does some code cleanups to be able to reuse code which is common between Field_float::store() and Field_double::store().

  include/m_string.h@1.40, 2007-05-28 12:44:57+04:00, kaa@polly.local +4 -0
    Added declarations for log_10 and log_01 from strtod.c

  mysql-test/r/type_float.result@1.51, 2007-05-28 12:44:57+04:00, kaa@polly.local +33 -0
    Added the testcase for bug #28121 "INSERT or UPDATE into DOUBLE(200,0) field being truncated to 31 digits"

  mysql-test/t/type_float.test@1.33, 2007-05-28 12:44:57+04:00, kaa@polly.local +20 -0
    Added the testcase for bug #28121 "INSERT or UPDATE into DOUBLE(200,0) field being truncated to 31 digits"

  sql/field.cc@1.347.2.1, 2007-05-28 12:44:57+04:00, kaa@polly.local +60 -91
    Moved common code from Field_float::store() and Field_double:store() to Field_real::truncate()
    Fixed the algorithm to not truncate large input numbers if the field length is greater than 31.
    Fixed rounding to not depend on FLT_MAX/DBL_MAX constants.

  sql/field.h@1.201.2.1, 2007-05-28 12:44:57+04:00, kaa@polly.local +9 -10
    Moved not_fixed member from Field_double to Field_real to allow code reuse between Field_float::store() and Field_double::store()
    Added truncate() method to Field_real which is used by both Field_float and Field_double

  sql/init.cc@1.20, 2007-05-28 12:44:57+04:00, kaa@polly.local +0 -13
    log_10[] and log_01[] are now defined as statical arrays in strtod.c, no need to pre-computed them.

  sql/item_cmpfunc.cc@1.248.2.1, 2007-05-28 12:44:57+04:00, kaa@polly.local +1 -1
    log_01[] now starts from 1e0, not from 1e-1 for consistency.

  sql/mysql_priv.h@1.447.3.1, 2007-05-28 12:44:57+04:00, kaa@polly.local +0 -2
    Moved log_10[] and log_01[] from mysqld.cc to libmystrings.

  sql/mysqld.cc@1.607.1.1, 2007-05-28 12:44:57+04:00, kaa@polly.local +0 -2
    Moved log_10[] and log_01[] from mysqld.cc to libmystrings.

  strings/strtod.c@1.25.2.1, 2007-05-28 12:44:58+04:00, kaa@polly.local +72 -15
    Define and use log_10[] and log_01[] as static arrays of constants instead of values pre-computed at startup.

ChangeSet@1.2475.13.6, 2007-05-27 20:14:50-07:00, igor@olga.mysql.com +1 -0
  Post-merge fix.

  sql/sql_table.cc@1.346, 2007-05-27 20:14:46-07:00, igor@olga.mysql.com +2 -1
    Post-merge fix.

ChangeSet@1.2475.1.26, 2007-05-27 11:50:10-04:00, dkatz@damien-katzs-computer.local +1 -0
  Bug #24733  	RESET MASTER run before dump with --delete-master-logs
    
    fixed by using flush logs, dumping, then doing PURGE MASTER LOGS TO 'binfile', instead
  of deleting the log files at the beginning.
    
    NOTE: previously the delete-master-logs  would reset the log names back to
  filename.00001. Now the trailing number doesn't get reset. This may need to be
  documented. 

  client/mysqldump.c@1.264, 2007-05-27 11:50:07-04:00, dkatz@damien-katzs-computer.local +53 -4
    changed the code the --delete-master-logs option is used from this:
        
        take locks
        delete bin logs
        do dump (if this is a lock-based dump)
        release locks
        do dump (if this is a consistent-read-dump)
        
     to this:
        
        take locks
        flush logs
        remember the name of the new log
        do dump (if this is a lock-based dump)
        release locks
        do dump (if this is a consistent-read-dump)
        fflush output sql file if specified, to ensure the backup is commited to disk
        --- yes, dump succeeded ---
        do PURGE MASTER LOGS TO up to the new log

ChangeSet@1.2469.20.23, 2007-05-26 13:19:36-07:00, igor@olga.mysql.com +1 -0
  Avoided warnings on Windows.

  sql/sql_select.cc@1.526, 2007-05-26 13:19:34-07:00, igor@olga.mysql.com +5 -5
    Avoided warnings on Windows.

ChangeSet@1.2469.46.1, 2007-05-26 10:33:01-07:00, igor@olga.mysql.com +3 -0
  Fixed bug #28571. Outer join queries with ON conditions over
  constant outer tables did not return null complemented
  rows when conditions were evaluated to FALSE.
  Wrong results were returned because the conditions over constant
  outer tables, when being pushed down, were erroneously enclosed 
  into the guard function used for WHERE conditions.

  mysql-test/r/join_outer.result@1.55, 2007-05-26 10:32:59-07:00, igor@olga.mysql.com +15 -0
    Added a test case for bug #28571.

  mysql-test/t/join_outer.test@1.41, 2007-05-26 10:32:59-07:00, igor@olga.mysql.com +16 -0
    Added a test case for bug #28571.

  sql/sql_select.cc@1.525, 2007-05-26 10:32:59-07:00, igor@olga.mysql.com +29 -25
    Fixed bug #28571. Outer join queries with ON conditions over
    constant outer tables did not return null complemented
    rows when conditions were evaluated to FALSE.
    Wrong results were returned because the conditions over constant
    outer tables, when being pushed down, were erroneously enclosed 
    into the guard function used for WHERE conditions.
    The problem is fixed in the function make_join_select. Now the
    conditions over constant tables from ON expressions are pushed
    down after the conditions from WHERE has been pushed down.

ChangeSet@1.2475.16.3, 2007-05-25 16:17:20-06:00, malff@weblab.(none) +1 -0
  Code review comments

  sql/sql_lex.cc@1.223, 2007-05-25 16:17:18-06:00, malff@weblab.(none) +2 -2
    Fixed parenthese typo, found during code review

ChangeSet@1.2475.16.2, 2007-05-25 14:36:01-06:00, malff@weblab.(none) +5 -0
  Bug#27876 (SF with cyrillic variable name fails during execution (regression))
  
  The root cause of this bug is related to the function skip_rear_comments,
  in sql_lex.cc
  
  Recent code changes in skip_rear_comments changed the prototype from
  "const uchar*" to "const char*", which had an unforseen impact on this test:
    (endp[-1] < ' ')
  With unsigned characters, this code filters bytes of value [0x00 - 0x20]
  With *signed* characters, this also filters bytes of value [0x80 - 0xFF].
  
  This caused the regression reported, considering cyrillic characters in the
  parameter name to be whitespace, and truncated.
  Note that the regression is present both in 5.0 and 5.1.
  
  With this fix:
  - [0x80 - 0xFF] bytes are no longer considered whitespace.
  This alone fixes the regression.
  
  In addition, filtering [0x00 - 0x20] was found bogus and abusive,
  so that the code now filters uses my_isspace when looking for whitespace.
  
  Note that this fix is only addressing the regression affecting UTF-8
  in general, but does not address a more fundamental problem with
  skip_rear_comments: parsing a string *backwards*, starting at end[-1],
  is not safe with multi-bytes characters, so that end[-1] can confuse the
  last byte of a multi-byte characters with a characters to filter out.
  
  The only known impact of this remaining issue affects objects that have to
  meet all the conditions below:
  
  - the object is a FUNCTION / PROCEDURE / TRIGGER / EVENT / VIEW
  - the body consist of only *1* instruction, and does *not* contain a
    BEGIN-END block
  - the instruction ends, lexically, with <ident> <whitespace>* ';'?
    For example, "select <ident>;" or "return <ident>;"
  - The last character of <ident> is a multi-byte character
  - the last byte of this character is ';' '*', '/' or whitespace
  
  In this case, the body of the object will be truncated after parsing,
  and stored in an invalid format.
  
  This last issue has not been fixed in this patch, since the real fix
  will be implemented by Bug 25411 (trigger code truncated), which is caused
  by the very same code.
  The real problem is that the function skip_rear_comments is only a
  work-around, and should be removed entirely: see the proposed patch for
  bug 25411 for details.

  sql/sp_head.cc@1.246.1.1, 2007-05-25 14:35:58-06:00, malff@weblab.(none) +1 -1
    In skip_rear_comments,
    Filter out only whitespace, not other (non ascii or control) valid characters

  sql/sql_lex.cc@1.222, 2007-05-25 14:35:58-06:00, malff@weblab.(none) +5 -3
    In skip_rear_comments,
    Filter out only whitespace, not other (non ascii or control) valid characters

  sql/sql_lex.h@1.247, 2007-05-25 14:35:58-06:00, malff@weblab.(none) +1 -1
    In skip_rear_comments,
    Filter out only whitespace, not other (non ascii or control) valid characters

  sql/sql_view.cc@1.111, 2007-05-25 14:35:58-06:00, malff@weblab.(none) +2 -1
    In skip_rear_comments,
    Filter out only whitespace, not other (non ascii or control) valid characters

  tests/mysql_client_test.c@1.227, 2007-05-25 14:35:58-06:00, malff@weblab.(none) +64 -0
    Bug#27876 (SF with cyrillic variable name fails during execution (regression))

ChangeSet@1.2469.20.21, 2007-05-26 00:44:13+05:00, gshchepa@gleb.loc +1 -0
  field.h:
    Warnings elimination.

  sql/field.h@1.201.1.2, 2007-05-26 00:43:36+05:00, gshchepa@gleb.loc +1 -1
    Warnings elimination.

ChangeSet@1.2475.18.1, 2007-05-25 20:52:01+04:00, kaa@polly.local +1 -0
  Fix for bug #24611 "mysqld crashes when connecting from remote host, and compiled from source".
  
  On some Linux distributions with both LinuxThreads and NPTL glibc versions available, statically built binaries can crash, because linker defaults to LinuxThreads when linking statically, but calls to external libraries (like libnss) are resolved to NPTL versions.
  
  Since there is nothing we can do in the code to work that around, just give user an advice on how to fix that, if a crash happened on such a binary/OS combination.

  sql/mysqld.cc@1.610, 2007-05-25 20:51:57+04:00, kaa@polly.local +10 -0
    Advise a user on possible solutions in case of a crash in a statically built binary on a system with both LinuxThreads and NPTL available.

ChangeSet@1.2475.1.25, 2007-05-25 16:47:43+02:00, msvensson@pilot.blaudden +1 -0
  Bug#26664 test suite times out on OS X 64bit
   - Add checks to make sure net has a vio assigned
   - For example bootstrap will create a fake "net" with vio
     set to 0 

  sql/net_serv.cc@1.102, 2007-05-25 16:47:40+02:00, msvensson@pilot.blaudden +4 -2
    Add checks to make sure net has a vio assigned

ChangeSet@1.2469.45.1, 2007-05-25 17:24:17+05:00, gshchepa@gleb.loc +3 -0
  Fixed bug #28522:
  sometimes `mysqldump --hex-blob' overruned output buffer by '\0' byte.
  
  The dump_table() function has been fixed to reserve 1 byte more for the
  last '\0' byte of dumped string.

  client/mysqldump.c@1.262.1.1, 2007-05-25 17:21:06+05:00, gshchepa@gleb.loc +5 -2
    Fixed bug #28522.
    The dump_table() function has been fixed to reserve 1 byte more for the
    last '\0' byte of dumped string.

  mysql-test/r/mysqldump.result@1.123.1.1, 2007-05-25 17:21:20+05:00, gshchepa@gleb.loc +11 -0
    Updated test case for bug #28522.

  mysql-test/t/mysqldump.test@1.115.1.1, 2007-05-25 17:21:18+05:00, gshchepa@gleb.loc +7 -0
    Updated test case for bug #28522.

ChangeSet@1.2475.1.24, 2007-05-25 11:38:23+02:00, msvensson@pilot.blaudden +1 -0
  Bug #26664  	test suite times out on OS X 64bit
   - Make the two "my_net_set*" function only visible when included
     from my_global.h

  include/mysql_com.h@1.114, 2007-05-25 11:38:19+02:00, msvensson@pilot.blaudden +2 -0
    Make the two "my_net_set*" functions only
    visible when included from my_global.h

ChangeSet@1.2475.12.5, 2007-05-24 21:02:01+02:00, tomas@whalegate.ndb.mysql.com +3 -0
  Bug #28653    Fast GCP + high load + high RedoBuffer causes ndbrequire
  - correction, use recomputed _actual_ redobuffer

  ndb/src/kernel/blocks/dblqh/Dblqh.hpp@1.48, 2007-05-24 21:01:59+02:00, tomas@whalegate.ndb.mysql.com +3 -2
    Bug #28653    Fast GCP + high load + high RedoBuffer causes ndbrequire
    - correction, use recomputed _actual_ redobuffer

  ndb/src/kernel/blocks/dblqh/DblqhInit.cpp@1.19, 2007-05-24 21:01:59+02:00, tomas@whalegate.ndb.mysql.com +2 -2
    Bug #28653    Fast GCP + high load + high RedoBuffer causes ndbrequire
    - correction, use recomputed _actual_ redobuffer

  ndb/src/kernel/blocks/dblqh/DblqhMain.cpp@1.107, 2007-05-24 21:01:59+02:00, tomas@whalegate.ndb.mysql.com +5 -0
    Bug #28653    Fast GCP + high load + high RedoBuffer causes ndbrequire
    - correction, use recomputed _actual_ redobuffer

ChangeSet@1.2475.15.1, 2007-05-24 15:35:43+05:00, ramil@mysql.com +6 -0
  Fix for
  bug #26842: master binary log contains invalid queries - replication fails
  bug #12826: Possible to get inconsistent slave using SQL syntax Prepared Statements
  
  Problem:  
  binlogging PS' we may produce syntacticly incorrect queries in the binlog replacing 
  some parameters with variable names (instead of variable values).
  E.g. in the reported case of "limit ?" clause: replacing "?" with "@var"
  produces "limit @var" which is not a correct SQL syntax. 
  Also it may lead to different query execution on slave if we
  set and use a variable in the same statement, e.g.
  "insert into t1 values (@x:=@x+1, ?)"
  
  Fix: make the stored statement string created upon its execution use variable values
  (instead of names) to fill placeholders.

  mysql-test/r/ctype_cp932_notembedded.result@1.3, 2007-05-24 15:35:42+05:00, ramil@mysql.com +1 -2
    Fix for
    bug #26842: master binary log contains invalid queries - replication fails
    bug #12826: Possible to get inconsistent slave using SQL syntax Prepared Statements
      - result adjusted.

  mysql-test/r/ctype_cp932_binlog.result@1.8, 2007-05-24 15:35:42+05:00, ramil@mysql.com +7 -8
    Fix for
    bug #26842: master binary log contains invalid queries - replication fails
    bug #12826: Possible to get inconsistent slave using SQL syntax Prepared Statements
      - result adjusted.

  mysql-test/r/rpl_user_variables.result@1.19, 2007-05-24 15:35:42+05:00, ramil@mysql.com +37 -3
    Fix for
    bug #26842: master binary log contains invalid queries - replication fails
    bug #12826: Possible to get inconsistent slave using SQL syntax Prepared Statements
      - test result.

  mysql-test/t/ctype_cp932_binlog.test@1.5, 2007-05-24 15:35:42+05:00, ramil@mysql.com +1 -1
    Fix for
    bug #26842: master binary log contains invalid queries - replication fails
    bug #12826: Possible to get inconsistent slave using SQL syntax Prepared Statements
      - test adjusted.

  mysql-test/t/rpl_user_variables.test@1.16, 2007-05-24 15:35:42+05:00, ramil@mysql.com +39 -6
    Fix for
    bug #26842: master binary log contains invalid queries - replication fails
    bug #12826: Possible to get inconsistent slave using SQL syntax Prepared Statements
      - test case.

  sql/sql_prepare.cc@1.203, 2007-05-24 15:35:42+05:00, ramil@mysql.com +12 -25
    Fix for
    bug #26842: master binary log contains invalid queries - replication fails
    bug #12826: Possible to get inconsistent slave using SQL syntax Prepared Statements
      - set val to the variable's value (escaped if needed) then insert it into the query
        string in the position of the placeholder. We don't need to call
        get_var_with_binlog() here as there is no trace of the variable's name in the binlog.

ChangeSet@1.2425.74.1, 2007-05-24 11:21:27+02:00, msvensson@pilot.blaudden +13 -0
  Bug#26664 test suite times out on OS X 64bit
   - The "mysql client in mysqld"(which is used by
     replication and federated) should use alarms instead of setting
     socket timeout value if the rest of the server uses alarm. By
     always calling 'my_net_set_write_timeout'
     or 'my_net_set_read_timeout' when changing the timeout value(s), the
     selection whether to use alarms or timeouts will be handled by
     ifdef's in those two functions. 
   - Move declaration of 'vio_timeout' into "vio_priv.h"

  include/mysql_com.h@1.113, 2007-05-24 11:21:20+02:00, msvensson@pilot.blaudden +3 -0
    Move the net_set_*_timeout function declarations to mysql_com.h and
    rename to my_net_set_*_timeout to avoid name clashes

  include/violite.h@1.51, 2007-05-24 11:21:22+02:00, msvensson@pilot.blaudden +0 -1
    Move declaration of 'vio_timeout' to vio_priv.h (to make
    the function as private as possible)

  libmysql/libmysql.c@1.254.1.1, 2007-05-24 11:21:23+02:00, msvensson@pilot.blaudden +2 -4
    Use my_net_read_timeout or my_net_write_timeout when setting
    the timeouts. Move the global variables for my_net_read/my_write_timeout
    into the only place where they are used. Thus removing them...

  server-tools/instance-manager/mysql_connection.cc@1.20, 2007-05-24 11:21:23+02:00, msvensson@pilot.blaudden +2 -2
    Use my_net_read_timeout or my_net_write_timeout when setting the timeouts

  sql-common/client.c@1.111.1.1, 2007-05-24 11:21:24+02:00, msvensson@pilot.blaudden +2 -4
    Use my_net_read_timeout or my_net_write_timeout when setting the timeouts

  sql/mysql_priv.h@1.440.5.1, 2007-05-24 11:21:24+02:00, msvensson@pilot.blaudden +0 -3
    Move the net_set_*_timeout function declarations to mysql_com.h

  sql/net_serv.cc@1.99.1.1, 2007-05-24 11:21:24+02:00, msvensson@pilot.blaudden +8 -8
    No need to cast the net->write_timeout value from "uint" to "uint"

  sql/set_var.cc@1.181.3.1, 2007-05-24 11:21:24+02:00, msvensson@pilot.blaudden +2 -2
    Rename net_set_*_timeout to my_net_set_*_timeout

  sql/sql_client.cc@1.9, 2007-05-24 11:21:24+02:00, msvensson@pilot.blaudden +5 -2
    Use my_net_read_timeout or my_net_write_timeout when setting the timeouts

  sql/sql_parse.cc@1.612.4.1, 2007-05-24 11:21:24+02:00, msvensson@pilot.blaudden +6 -6
    Rename net_set_*_timeout to my_net_set_*_timeout

  sql/sql_repl.cc@1.159.1.1, 2007-05-24 11:21:24+02:00, msvensson@pilot.blaudden +2 -2
    Rename net_set_*_timeout to my_net_set_*_timeout

  vio/vio_priv.h@1.9, 2007-05-24 11:21:24+02:00, msvensson@pilot.blaudden +1 -0
    Move declaration of 'vio_timeout' to vio_priv.h

  vio/viosocket.c@1.45, 2007-05-24 11:21:24+02:00, msvensson@pilot.blaudden +27 -15
    Cleanup 'vio_timeout'
     - Use "const void*" on POSIX and "const char*" on windows for
       setsockopt
     - Add DBUG_PRINT's
     - Add comment about why we don't have an implementation of
      vio_timeout for platforms not supporting SO_SNDTIMEO or SO_RCVTIMEO  

ChangeSet@1.2469.44.1, 2007-05-23 19:04:12-07:00, igor@olga.mysql.com +3 -0
  Fixed bug #28561: assertion abort for update on multi-table view with
  CHECK OPTION and a subquery in WHERE condition.
  The abort was triggered by setting the value of join->tables for
  subqueries in the function JOIN::cleanup. This function was called
  after an invocation of the JOIN::join_free method for subqueries
  used in WHERE condition.

  mysql-test/r/view.result@1.201, 2007-05-23 19:04:09-07:00, igor@olga.mysql.com +10 -0
    Added a test case for bug #28561.

  mysql-test/t/view.test@1.184, 2007-05-23 19:04:09-07:00, igor@olga.mysql.com +19 -0
    Added a test case for bug #28561.

  sql/sql_select.cc@1.524, 2007-05-23 19:04:10-07:00, igor@olga.mysql.com +0 -1
    Fixed bug #28561: assertion abort for update on multi-table view with
    CHECK OPTION and a subquery in WHERE condition.
    The abort was triggered by setting the value of join->tables for
    subqueries in the function JOIN::cleanup. This function was called
    after an invocation of the JOIN::join_free method for subqueries
    used in WHERE condition.
    Setting the value of join->tables to for a subquery created serious
    problems for checking WHERE condition after update of the multi-table
    view as this check is performed in the do_select function right
    after a call of the JOIN::join_free method.
    In fact setting join->tables to 0 in JOIN::cleanup is not needed 
    anywhere in the current code.

ChangeSet@1.2469.23.10, 2007-05-23 23:24:16+04:00, evgen@moonbone.local +5 -0
  Bug#27563: Stored functions and triggers wasn't throwing an error when killed.
  
  If a stored function or a trigger was killed it had aborted but no error
  was thrown. This allows the caller statement to continue without a notice.
  This may lead to a wrong data being inserted/updated to/deleted as in such
  cases the correct result of a stored function isn't guaranteed. In the case
  of triggers it allows the caller statement to ignore kill signal and to
  waste time because of re-evaluation of triggers that always will fail
  because thd->killed flag is still on.
  
  Now the Item_func_sp::execute() and the sp_head::execute_trigger() functions
  check whether a function or a trigger were killed during execution and
  throws an appropriate error if so.
  Now the fill_record() function stops filling record if an error was reported
  through thd->net.report_error.

  mysql-test/r/kill.result@1.17, 2007-05-23 23:23:33+04:00, evgen@moonbone.local +82 -0
    Added a test case for the bug#27563: Stored functions and triggers wasn't
    throwing an error when killed.

  mysql-test/t/kill.test@1.25, 2007-05-23 23:23:43+04:00, evgen@moonbone.local +132 -0
    Added a test case for the bug#27563: Stored functions and triggers wasn't
    throwing an error when killed.

  sql/item_func.cc@1.336.6.1, 2007-05-23 23:23:12+04:00, evgen@moonbone.local +2 -0
    Bug#27563: Stored functions and triggers wasn't throwing an error when killed.
    Now the Item_func_sp::execute() function checks whether a trigger was killed
    during execution and throws an appropriate error if so.

  sql/sp_head.cc@1.242.1.1, 2007-05-23 23:23:20+04:00, evgen@moonbone.local +3 -0
    Bug#27563: Stored functions and triggers wasn't throwing an error when killed.
    Now the sp_head::execute_trigger() function checks whether a function was
    killed during execution and throws an appropriate error if so.

  sql/sql_base.cc@1.377.4.1, 2007-05-23 23:23:26+04:00, evgen@moonbone.local +1 -1
    Bug#27563: Stored functions and triggers wasn't throwing an error when killed.
    Now the fill_record() function stops filling record if an error was reported
    through thd->net.report_error.

ChangeSet@1.2469.43.1, 2007-05-23 14:43:06+02:00, mhansson@dl145s.mysql.com +2 -0
  Bug #28250: Run-Time Check Failure #3 - The variable 'value' is 
  being used without being def
  
  Inside method Item_func_unsigned::val_int, the variable value 
  can be returned without being initialized when the CAST argument
  is of type DECIMAL and has a NULL value. This gives a run-time 
  error when building debug binaries using Visual C++ 2005.
  
  Solution: Initialize value to 0

  mysql-test/t/cast.test@1.36, 2007-05-23 14:43:02+02:00, mhansson@dl145s.mysql.com +7 -1
    bug#28250: There is no need for an extra test case, but we
    recognize that this one catches the bug.

  sql/item_func.cc@1.336.5.1, 2007-05-23 14:43:04+02:00, mhansson@dl145s.mysql.com +2 -0
    bug#28250: initialization of value.

ChangeSet@1.2433.12.4, 2007-05-23 17:32:40+05:00, bar@mysql.com +1 -0
  Bug#27636 mysqlbinlog-cp932 and ctype_cp932 tests fails if LC_* variables set to *_*.UTF-8
  
  As MySQL character set tests can print results in many character sets
  (latin1, utf8-8, sjis, cp932 and others) - its output can be incompatible
  with the current locale settings, which makes PERL confuse.
  
  Fix: reset LC_ALL and LC_CTYPE to "C", which is compatible with
  any character set.

  mysql-test/mysql-test-run.pl@1.213.1.1, 2007-05-23 17:32:39+05:00, bar@mysql.com +12 -0
    Ignore current locale settings, because "mysqltest" output
    can be not compatible with the locale.

ChangeSet@1.2469.25.7, 2007-05-23 15:22:13+04:00, dlenev@mockturtle.local +7 -0
  5.0 version of fix for:
   Bug #23667 "CREATE TABLE LIKE is not isolated from alteration
               by other connections"
   Bug #18950 "CREATE TABLE LIKE does not obtain LOCK_open"
  As well as:
   Bug #25578 "CREATE TABLE LIKE does not require any privileges
               on source table".
  
  The first and the second bugs resulted in various errors and wrong
  binary log order when one tried to execute concurrently CREATE TABLE LIKE
  statement and DDL statements on source table or DML/DDL statements on its
  target table.
  
  The problem was caused by incomplete protection/table-locking against
  concurrent statements implemented in mysql_create_like_table() routine.
  We solve it by simply implementing such protection in proper way (see
  comment for sql_table.cc for details).
  
  The third bug allowed user who didn't have any privileges on table create
  its copy and therefore circumvent privilege check for SHOW CREATE TABLE.
  
  This patch solves this problem by adding privilege check, which was missing.
  
  Finally it also removes some duplicated code from mysql_create_like_table().
  
  Note that, altough tests covering concurrency-related aspects of CREATE TABLE
  LIKE behaviour will only be introduced in 5.1, they were run manually for
  this patch as well.

  mysql-test/r/grant2.result@1.34, 2007-05-23 15:22:09+04:00, dlenev@mockturtle.local +24 -0
    Added test for bug#25578 "CREATE TABLE LIKE does not require any privileges
    on source table".

  mysql-test/t/grant2.test@1.39, 2007-05-23 15:22:09+04:00, dlenev@mockturtle.local +44 -0
    Added test for bug#25578 "CREATE TABLE LIKE does not require any privileges
    on source table".

  sql/handler.h@1.184, 2007-05-23 15:22:09+04:00, dlenev@mockturtle.local +1 -0
    Introduced new flag for HA_CREATE_INFO::options in order to be able to
    distinguish CREATE TABLE ... LIKE from other types of CREATE TABLE.

  sql/mysql_priv.h@1.451.1.1, 2007-05-23 15:22:09+04:00, dlenev@mockturtle.local +2 -3
    mysql_create_like_table() now takes source table name not as a
    Table_ident object but as regular table list element.

  sql/sql_parse.cc@1.622, 2007-05-23 15:22:09+04:00, dlenev@mockturtle.local +29 -8
    CREATE TABLE ... LIKE implementation now uses statement's table list
    for storing information about the source table. We also use flag
    in LEX::create_info.options for distinguishing it from other types
    of CREATE TABLE.
    Finally CREATE TABLE ... LIKE now requires the same privileges on
    the source tables as SHOW CREATE TABLE. Moved this privilege check
    to check_show_create_table_access() function.

  sql/sql_table.cc@1.343.1.1, 2007-05-23 15:22:09+04:00, dlenev@mockturtle.local +42 -49
    mysql_create_like_table():
     - Provided proper protection from concurrent statements.
       This is achieved by keeping name-lock on the source table and holding
       LOCK_open mutex during whole operation. This gives protection against
       concurrent DDL on source table. Also holding this mutex makes copying
       of .frm file, call to ha_create_table() and binlogging atomic against
       concurrent DML and DDL operations on target table.
     - Get rid of duplicated code related to source database/table name
       handling. All these operations are already done in
       st_select_lex::add_table_to_list(), so we achieve the same effect
       by including source table into the statement's table list.

  sql/sql_yacc.yy@1.520, 2007-05-23 15:22:09+04:00, dlenev@mockturtle.local +4 -17
    Now we use special flag in LEX::create_info::options for distinguishing
    CREATE TABLE ... LIKE from other types of CREATE TABLE and store name
    of source table as regular element in statement's table list.

ChangeSet@1.1616.3016.2, 2007-05-23 12:13:49+02:00, msvensson@shellback.(none) +1 -0
  Bug#27396 Wrong check for root priveledge
   - Check that filemode was set to 0000

  mysql-test/mysql-test-run.pl@1.8.23.1, 2007-05-23 12:13:37+02:00, msvensson@shellback.(none) +10 -3
    Checking for "running as root" should also read the filemode to see it 
    was properly set to 0000

ChangeSet@1.2475.12.3, 2007-05-23 07:53:16+02:00, tomas@whalegate.ndb.mysql.com +1 -0
  remove some not used code

  sql/ha_ndbcluster.cc@1.314, 2007-05-23 07:53:14+02:00, tomas@whalegate.ndb.mysql.com +0 -20
    remove some not used code

ChangeSet@1.2469.40.2, 2007-05-22 17:21:22+02:00, joerg@trift2. +1 -0
  Add the "row_lock" test suite to the (to be) release build test run.

  Makefile.am@1.105, 2007-05-22 17:21:19+02:00, joerg@trift2. +2 -0
    Add the "row_lock" test suite to the (to be) release build test run.

ChangeSet@1.2469.40.1, 2007-05-22 17:06:47+02:00, joerg@trift2. +1 -0
  scripts/make_binary_distribution.sh  :
  Include all the additional test suites in the binary packages ("tar.gz").
  This is the tar.gz part of the fixes for bug#26609; for RPMs it is already done.

  scripts/make_binary_distribution.sh@1.126, 2007-05-22 17:06:44+02:00, joerg@trift2. +40 -32
    Include all the additional test suites (for now: "funcs_1", "funcs_2", "row_lock")
    in the binary packages ("tar.gz").
    Take them "as is", without any file filtering (except for the BK subdirectories "SCCS").
    
    This is the tar.gz part of the fixes for bug#26609; for RPMs it is already done.
    
    Use this opportunity to correct the language in some comments.

ChangeSet@1.2469.38.1, 2007-05-22 15:58:30+03:00, gkodinov@magare.gmz +7 -0
  Bug #28476: force index on a disabled myisam index gives error 124
  When processing the USE/FORCE index hints
  the optimizer was not checking if the indexes 
  specified are enabled (see ALTER TABLE).
  Fixed by:
   Backporting the fix for bug 20604 to 5.0

  mysql-test/r/key.result@1.37, 2007-05-22 15:58:29+03:00, gkodinov@magare.gmz +8 -0
    Test for BUG 20604.
    The important part of the test is the explain output that 
    tests what indexes are used.

  mysql-test/r/myisam.result@1.100, 2007-05-22 15:58:29+03:00, gkodinov@magare.gmz +26 -0
    Bug #28476: test cases

  mysql-test/t/key.test@1.30, 2007-05-22 15:58:29+03:00, gkodinov@magare.gmz +12 -0
    Bug 20604: 
    The minimal test case that reveals the bug. The optimizer for 
    aggregates relies on keys disabled with ALTER TABLE ... DISABLE KEYS
    not being in the set TABLE::keys_in_use_for_query.
    When the execution engine tries to use a disabled index, MyISAM
    returns an error.

  mysql-test/t/myisam.test@1.80, 2007-05-22 15:58:29+03:00, gkodinov@magare.gmz +16 -0
    Bug #28476: test cases

  sql/sql_base.cc@1.377.3.1, 2007-05-22 15:58:29+03:00, gkodinov@magare.gmz +6 -1
    Bug #28476: 
     - Ignore disabled indexes in USE/FORCE index

  sql/sql_select.cc@1.521.1.1, 2007-05-22 15:58:29+03:00, gkodinov@magare.gmz +4 -3
    Bug 20604 : The intersection operation between table->s->keys_in_use 
    and table->keys_in_use_for_query is no longer necessary.
    We can trust that the latter is a subset of the former.

  sql/table.h@1.141.1.1, 2007-05-22 15:58:29+03:00, gkodinov@magare.gmz +21 -2
    Bug 20604:
    Added comments to TABLE_SHARE::keys_in_use and
    TABLE::keys_in_use_for_query.

ChangeSet@1.2475.11.3, 2007-05-22 11:16:29+05:00, ramil@mysql.com +1 -0
  Fix for bug #21476: stack overflow crashes server; error-message stack reservation too small
  
  Increase STACK_BUFF_ALLOC to avoid execution_constants test failure on the hpita2.

  sql/mysql_priv.h@1.453, 2007-05-22 11:16:28+05:00, ramil@mysql.com +1 -1
    Fix for bug #21476: stack overflow crashes server; error-message stack reservation too small
      - due to the failing execution_constants test on the hpita2, 
        increase STACK_BUFF_ALLOC, that is used in the Item_func::fix_fields() to 
        allocate on the stack a "dummy" buffer large enough for the corresponding exec.

ChangeSet@1.2469.20.15, 2007-05-21 16:44:36-07:00, igor@olga.mysql.com +1 -0
  Added initializations to avoid compiler warnings.

  sql/sql_table.cc@1.345, 2007-05-21 16:44:34-07:00, igor@olga.mysql.com +2 -2
    Added initializations to avoid compiler warnings.

ChangeSet@1.2469.20.14, 2007-05-22 00:22:53+04:00, evgen@moonbone.local +3 -0
  Bug#27507: Wrong DATETIME value was allowed by ALTER TABLE in the NO_ZERO_DATE
  mode.
  
  When a new DATE/DATETIME field without default value is being added by the
  ALTER TABLE the '0000-00-00' value is used as the default one. But it wasn't
  checked whether such value was allowed by the set sql mode. Due to this
  '0000-00-00' values was allowed for DATE/DATETIME fields even in the
  NO_ZERO_DATE mode.
  
  Now the mysql_alter_table() function checks whether the '0000-00-00' value
  is allowed for DATE/DATETIME fields by the set sql mode.
  The new error_if_not_empty flag is used in the mysql_alter_table() function
  to indicate that it should abort if the table being altered isn't empty.
  The new new_datetime_field field is used in the mysql_alter_table() function
  for error throwing purposes. 
  The new error_if_not_empty parameter is added to the copy_data_between_tables()
  function to indicate the it should return error if the source table isn't empty.

  mysql-test/r/alter_table.result@1.66, 2007-05-22 00:20:29+04:00, evgen@moonbone.local +19 -0
    Added a test case for the bug#27507: Wrong DATETIME value was allowed by
    ALTER TABLE in the NO_ZERO_DATE mode.

  mysql-test/t/alter_table.test@1.53, 2007-05-22 00:18:34+04:00, evgen@moonbone.local +22 -0
    Added a test case for the bug#27507: Wrong DATETIME value was allowed by
    ALTER TABLE in the NO_ZERO_DATE mode.

  sql/sql_table.cc@1.344, 2007-05-22 00:21:13+04:00, evgen@moonbone.local +69 -3
    Bug#27507: Wrong DATETIME value was allowed by ALTER TABLE in the NO_ZERO_DATE
    mode.
    Now the mysql_alter_table() function checks whether the '0000-00-00' value
    is allowed for DATE/DATETIME fields by the set sql mode.
    The new error_if_not_empty flag is used in the mysql_alter_table() function
    to indicate that it should abort if the table being altered isn't empty.
    The new new_datetime_field field is used in the mysql_alter_table() function
    for error throwing purposes. 
    The new error_if_not_empty parameter is added to the copy_data_between_tables()
    function to indicate the it should return error if the source table isn't empty.

ChangeSet@1.2469.36.1, 2007-05-21 22:22:47+05:00, holyfoot@mysql.com +3 -0
  Bug #27984 Long Decimal Maths produces truncated results.
  decimal_round failed to perform a correct rounding 
  of a decimal number if its first nine digits were '9'.
  It just sets those digits to 0.

  mysql-test/r/type_newdecimal.result@1.46.1.1, 2007-05-21 22:22:46+05:00, holyfoot@mysql.com +3 -0
    Bug #27984 Long Decimal Maths produces truncated results.
    test result

  mysql-test/t/type_newdecimal.test@1.44.1.1, 2007-05-21 22:22:46+05:00, holyfoot@mysql.com +5 -0
    Bug #27984 Long Decimal Maths produces truncated results.
    test case

  strings/decimal.c@1.80, 2007-05-21 22:22:46+05:00, holyfoot@mysql.com +2 -1
    Bug #27984 Long Decimal Maths produces truncated results.
    when to == from we break the data if we do to->buf[0]=0
    So now doing this after the data is moved and only
    if we really need to set to->buf[0] to zero

ChangeSet@1.2469.35.2, 2007-05-21 17:53:55+05:00, holyfoot@mysql.com +1 -0
  test result fixed

  mysql-test/r/ps_6bdb.result@1.48.1.1, 2007-05-21 17:53:54+05:00, holyfoot@mysql.com +16 -16
    test result fixed

ChangeSet@1.2475.1.19, 2007-05-21 11:33:58+02:00, msvensson@pilot.blaudden +2 -0
  Bug#27438  rpl_rotate_logs fails on Windows
   - Fix test case to work also when filesystem time differs
     from mysqld' time. I.e when running with data files on a
     network share.

  mysql-test/r/rpl_rotate_logs.result@1.73, 2007-05-21 11:33:57+02:00, msvensson@pilot.blaudden +4 -1
    Update result file

  mysql-test/t/rpl_rotate_logs.test@1.68, 2007-05-21 11:33:57+02:00, msvensson@pilot.blaudden +12 -3
    Calculate time to use in "purge master logs before" by taking
    last modification time of t2 and adding 1 second
    This is done in order to handle the case where file system time differs
    from mysqld's time

ChangeSet@1.2469.13.10, 2007-05-21 10:27:33+02:00, mhansson@dl145s.mysql.com +6 -0
  bug#23856

  mysql-test/r/func_gconcat.result@1.68.1.1, 2007-05-21 10:27:30+02:00, mhansson@dl145s.mysql.com +47 -0
    bug#23856

  mysql-test/t/func_gconcat.test@1.55.1.1, 2007-05-21 10:27:31+02:00, mhansson@dl145s.mysql.com +32 -0
    bug#23856

  sql/field.h@1.201.1.1, 2007-05-21 10:27:31+02:00, mhansson@dl145s.mysql.com +5 -0
    bug#23856

  sql/field_conv.cc@1.65, 2007-05-21 10:27:31+02:00, mhansson@dl145s.mysql.com +14 -0
    bug#23856

  sql/item_sum.cc@1.206.1.1, 2007-05-21 10:27:31+02:00, mhansson@dl145s.mysql.com +10 -4
    bug#23856

  sql/sql_select.cc@1.520.1.1, 2007-05-21 10:27:31+02:00, mhansson@dl145s.mysql.com +3 -2
    bug#23856

ChangeSet@1.2469.35.1, 2007-05-21 13:02:03+05:00, holyfoot@mysql.com +5 -0
  Bug #28361 Buffer overflow in DECIMAL code on Windows 
  result max length changed for the 'decimal' fields
  so test results have to be fixed

  mysql-test/r/ps_2myisam.result@1.46.1.1, 2007-05-21 13:02:01+05:00, holyfoot@mysql.com +16 -16
    Bug #28361 Buffer overflow in DECIMAL code on Windows 
    test result fixed

  mysql-test/r/ps_3innodb.result@1.49.1.1, 2007-05-21 13:02:01+05:00, holyfoot@mysql.com +16 -16
    Bug #28361 Buffer overflow in DECIMAL code on Windows 
    test result fixed

  mysql-test/r/ps_4heap.result@1.45.1.1, 2007-05-21 13:02:01+05:00, holyfoot@mysql.com +16 -16
    Bug #28361 Buffer overflow in DECIMAL code on Windows 
    test result fixed

  mysql-test/r/ps_5merge.result@1.46.1.1, 2007-05-21 13:02:01+05:00, holyfoot@mysql.com +32 -32
    Bug #28361 Buffer overflow in DECIMAL code on Windows 
    test result fixed

  mysql-test/r/ps_7ndb.result@1.49.1.1, 2007-05-21 13:02:01+05:00, holyfoot@mysql.com +16 -16
    Bug #28361 Buffer overflow in DECIMAL code on Windows 
    test result fixed

ChangeSet@1.2469.20.9, 2007-05-20 21:22:57+05:00, holyfoot@mysql.com +3 -0
  bug #28361 Buffer overflow in DECIMAL code on Windows
  
  my_decimal in some cases can contain more decimal digits than
  is officially supported (DECIMAL_MAX_PRECISION), so we need to
  prepare bigger buffer for the resulting string.

  mysql-test/r/type_newdecimal.result@1.47, 2007-05-20 21:22:55+05:00, holyfoot@mysql.com +3 -0
    bug #28361 Buffer overflow in DECIMAL code on Windows
    test result

  mysql-test/t/type_newdecimal.test@1.45, 2007-05-20 21:22:55+05:00, holyfoot@mysql.com +8 -0
    bug #28361 Buffer overflow in DECIMAL code on Windows
    test case
    This test case doesn't fall in most cases even without the fix
    Still valgrind shows the problemn

  sql/my_decimal.h@1.16.1.1, 2007-05-20 21:22:55+05:00, holyfoot@mysql.com +7 -3
    bug #28361 Buffer overflow in DECIMAL code on Windows
    DECIMAL_MAX_POSSIBLE_PRECISION introduced to be used in places,
    when we need to check for the number of digits technicaly possible
    in my_decimal.
    DECIMAL_MAX_STR_LENGTH fixed as it has to fit for the MAX_POSSIBLE_PRECISION

ChangeSet@1.2475.9.2, 2007-05-19 18:15:08+02:00, msvensson@pilot.blaudden +3 -0
  Bug #28401 mysql_upgrade Failed with STRICT_ALL_TABLES, ANSI_QUOTES and NO_ZERO_DATE
   - The SQL commands used by mysql_upgrade are written to be run
      with sql_mode set to '' - thus the scripts should change sql_mode
      for the session to make sure the SQL is legal.

  mysql-test/r/mysql_upgrade.result@1.6, 2007-05-19 18:15:07+02:00, msvensson@pilot.blaudden +19 -0
    Update test result

  mysql-test/t/mysql_upgrade.test@1.8, 2007-05-19 18:15:07+02:00, msvensson@pilot.blaudden +13 -0
    The SQL commands used by mysql_upgrade are written to be run
    with sql_mode set to '' - thus the scripts should change sql_mode
    for the session to make sure the SQL is legal.

  scripts/mysql_system_tables_fix.sql@1.45, 2007-05-19 18:15:07+02:00, msvensson@pilot.blaudden +1 -0
    Set sql_mode to '' before running the SQL commands
    to fix system tables - backport from 5.1

ChangeSet@1.2469.34.1, 2007-05-18 17:48:44+02:00, serg@sergbook.mysql.com +4 -0
  added cleanup to some tests

  mysql-test/r/sp_trans.result@1.13, 2007-05-18 17:48:39+02:00, serg@sergbook.mysql.com +1 -2
    added cleanup

  mysql-test/r/strict.result@1.33.1.1, 2007-05-18 17:48:39+02:00, serg@sergbook.mysql.com +1 -1
    added cleanup

  mysql-test/t/sp_trans.test@1.13, 2007-05-18 17:48:40+02:00, serg@sergbook.mysql.com +3 -6
    added cleanup

  mysql-test/t/strict.test@1.29, 2007-05-18 17:48:40+02:00, serg@sergbook.mysql.com +1 -1
    added cleanup

ChangeSet@1.2475.10.1, 2007-05-18 18:16:51+05:00, ramil@mysql.com +3 -0
  Fox for bug #28509: strange behaviour: passing a decimal value to PS
  
  Set parameter's type to Item::DECIMAL_ITEM assigning a decimal value.

  mysql-test/r/ps.result@1.89.2.1, 2007-05-18 18:16:49+05:00, ramil@mysql.com +9 -0
    Fox for bug #28509: strange behaviour: passing a decimal value to PS
      - test result.

  mysql-test/t/ps.test@1.89.2.1, 2007-05-18 18:16:49+05:00, ramil@mysql.com +8 -0
    Fox for bug #28509: strange behaviour: passing a decimal value to PS
      - test case.

  sql/item.cc@1.265.3.1, 2007-05-18 18:16:49+05:00, ramil@mysql.com +2 -4
    Fox for bug #28509: strange behaviour: passing a decimal value to PS
      - set Item_param::item_type to Item::DECIMAL_ITEM in case of DECIMAL_RESULT variable.
      - removed redundant item_result_type assignments as it's set before.

ChangeSet@1.1616.2877.99, 2007-05-18 12:50:23+02:00, msvensson@pilot.blaudden +3 -0
  WL#2247 mysqltest: add option for sorting results
   - Final touchups

  client/mysqltest.c@1.92.21.66, 2007-05-18 12:50:22+02:00, msvensson@pilot.blaudden +4 -4
    Final touch ups, rename sorted_results to sorted_result

  mysql-test/r/mysqltest.result@1.3.1.24, 2007-05-18 12:50:22+02:00, msvensson@pilot.blaudden +48 -6
    Update test result

  mysql-test/t/mysqltest.test@1.3.1.29, 2007-05-18 12:50:22+02:00, msvensson@pilot.blaudden +76 -26
    Update results with additional subtests for empty result set,
    NULL values and 1024 rows

ChangeSet@1.1616.2765.20, 2007-05-18 11:34:57+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#28443
    review comment 2, atleast 1 signal need for test prg

  ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp@1.15.1.10, 2007-05-18 11:34:56+02:00, jonas@perch.ndb.mysql.com +1 -1
    review comment, atleast 1 signal need

ChangeSet@1.1616.2765.19, 2007-05-18 11:06:03+02:00, jonas@perch.ndb.mysql.com +1 -0
  ndb - bug#28443
    review comment
    if some tcp-transporter has data, then do select with timeout 0

  ndb/src/common/transporter/TransporterRegistry.cpp@1.19.1.11, 2007-05-18 11:06:01+02:00, jonas@perch.ndb.mysql.com +18 -16
    review comment
    if some tcp-transporter has data, then do select with timeout 0

ChangeSet@1.2469.25.6, 2007-05-18 12:29:06+04:00, kostja@vajra.(none) +7 -0
  Bug #27907 "Misleading error message when opening/locking tables"
  
  Adjust the check that defines the error message to be returned.

  mysql-test/r/sp-error.result@1.113, 2007-05-18 12:29:02+04:00, kostja@vajra.(none) +3 -3
    Update results (more accurate error code)

  mysql-test/r/sp-prelocking.result@1.6, 2007-05-18 12:29:02+04:00, kostja@vajra.(none) +13 -0
    Update results (more accurate error code)

  mysql-test/r/trigger.result@1.59, 2007-05-18 12:29:02+04:00, kostja@vajra.(none) +2 -2
    Update results (more accurate error code)

  mysql-test/t/sp-error.test@1.114, 2007-05-18 12:29:02+04:00, kostja@vajra.(none) +3 -3
    ER_NOT_LOCKED -> ER_NO_SUCH_TABLE

  mysql-test/t/sp-prelocking.test@1.7, 2007-05-18 12:29:02+04:00, kostja@vajra.(none) +31 -0
    Add a test case for Bug#27907

  mysql-test/t/trigger.test@1.66, 2007-05-18 12:29:02+04:00, kostja@vajra.(none) +2 -2
    ER_NOT_LOCKED -> ER_NO_SUCH_TABLE

  sql/sql_base.cc@1.379.1.1, 2007-05-18 12:29:03+04:00, kostja@vajra.(none) +10 -3
    Adjust the check for where-we-are for a better error message.

ChangeSet@1.1616.2765.18, 2007-05-18 09:48:52+02:00, jonas@perch.ndb.mysql.com +6 -0
  ndb - bug#28443
    Make sure that data can not e left lingering in receive buffer

  ndb/src/common/transporter/Packer.cpp@1.5.1.1, 2007-05-18 09:48:50+02:00, jonas@perch.ndb.mysql.com +5 -0
    test, make MAX_RECEIVED_SIGNALS an variable

  ndb/src/common/transporter/TCP_Transporter.hpp@1.3.1.2, 2007-05-18 09:48:51+02:00, jonas@perch.ndb.mysql.com +4 -0
    add new method for checking of data in receive buffer

  ndb/src/common/transporter/TransporterRegistry.cpp@1.19.1.10, 2007-05-18 09:48:51+02:00, jonas@perch.ndb.mysql.com +21 -18
    Make sure that 
    1) poll_TCP return true if any transporter has data in receiveBuffer
       (previously only if socket had data)
    2) performReceive executes signals if TCP transporter has data in receiveBuffer
       (previously only if data was recevied)

  ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp@1.15.1.9, 2007-05-18 09:48:51+02:00, jonas@perch.ndb.mysql.com +17 -0
    test, make MAX_RECEIVED_SIGNALS an variable

  ndb/test/ndbapi/testNdbApi.cpp@1.9.2.2, 2007-05-18 09:48:51+02:00, jonas@perch.ndb.mysql.com +34 -0
    testcase

  ndb/test/run-test/daily-basic-tests.txt@1.13.2.16, 2007-05-18 09:48:51+02:00, jonas@perch.ndb.mysql.com +4 -0
    testcase

ChangeSet@1.2475.8.1, 2007-05-18 12:08:07+05:00, ramil@mysql.com +5 -0
  Fix for bug #28464: a string argument to 'limit ?' PS - replication fails
  
  Problem: we may get syntactically incorrect queries in the binary log 
  if we use a string value user variable executing a PS which 
  contains '... limit ?' clause, e.g.
  prepare s from "select 1 limit ?"; 
  set @a='qwe'; execute s using @a;
    
  Fix: raise an error in such cases.

  mysql-test/r/limit.result@1.12, 2007-05-18 12:08:05+05:00, ramil@mysql.com +11 -0
    Fix for bug #28464: a string argument to 'limit ?' PS - replication fails
      - test result

  mysql-test/t/limit.test@1.14, 2007-05-18 12:08:05+05:00, ramil@mysql.com +17 -0
    Fix for bug #28464: a string argument to 'limit ?' PS - replication fails
      - test case

  sql/item.cc@1.265.2.2, 2007-05-18 12:08:05+05:00, ramil@mysql.com +3 -0
    Fix for bug #28464: a string argument to 'limit ?' PS - replication fails
      - if Item_param::strict_type is set, check given and required types,
        return an error if not equal.

  sql/item.h@1.228.1.2, 2007-05-18 12:08:05+05:00, ramil@mysql.com +8 -1
    Fix for bug #28464: a string argument to 'limit ?' PS - replication fails
      - bool strict_type introduced, which indicates that a parameter value must be of 
        the required_result_type type.
      - set_strict_type() function introduced to set required type.

  sql/sql_yacc.yy@1.514.2.1, 2007-05-18 12:08:05+05:00, ramil@mysql.com +3 -0
    Fix for bug #28464: a string argument to 'limit ?' PS - replication fails
      - as we accept only INTs in the 'limit' clause set parameter's required type.

ChangeSet@1.2475.7.1, 2007-05-18 06:14:37+02:00, tsmith@quadxeon.mysql.com +1 -0
  my_time.c:
    in number_to_datetime(), zero out the MYSQL_TIME structure
    before setting values, to ensure that all fields are initialized; in
    particular, ensure that ->neg is set to zero (fixes valgrind warning
    "Conditional jump ... depends on uninitialised value" in make_date_time)

  sql-common/my_time.c@1.37, 2007-05-18 06:13:24+02:00, tsmith@quadxeon.mysql.com +1 -0
    in number_to_datetime(), zero out the MYSQL_TIME structure
    before setting values, to ensure that all fields are initialized; in
    particular, ensure that ->neg is set to zero (fixes valgrind warning
    "Conditional jump ... depends on uninitialised value" in make_date_time)

ChangeSet@1.2475.1.15, 2007-05-17 20:45:33-04:00, dkatz@damien-katzs-computer.local +1 -0
  Bug #27119  	server crash with integer division by zero during filesort on huge result
  
  Fixed a problem and compiler warning on 64bit platforms so that they only allocated UINT_MAX number of BUFFPEKS.

  sql/filesort.cc@1.120, 2007-05-17 20:45:28-04:00, dkatz@damien-katzs-computer.local +2 -2
     Fixed a problem and compiler warning on 64bit platforms so that they only allocated UINT_MAX number of BUFFPEKS.

ChangeSet@1.2475.6.1, 2007-05-17 17:54:31-04:00, dkatz@damien-katzs-computer.local +1 -0
  Bug #27119  	server crash with integer division by zero during filesort on huge result
  
  Fixed a compiler warning on platforms where uint != ulong from the first pushed fix.

  sql/filesort.cc@1.119, 2007-05-17 17:54:27-04:00, dkatz@damien-katzs-computer.local +1 -1
    fixed a compiler warning on platforms where uint != ulong

ChangeSet@1.2469.33.1, 2007-05-17 23:09:45+04:00, evgen@moonbone.local +3 -0
  Bug#28261: Wrong DATETIME comparison result when the GET_USER_VAR function
  is involved.
  
  The Arg_comparator::compare_datetime() comparator caches its arguments if
  they are constants i.e. const_item() returns true. The
  Item_func_get_user_var::const_item() returns true or false based on
  the current query_id and the query_id where the variable was created.
  Thus even if a query can change its value its const_item() still will return
  true. All this leads to a wrong comparison result when an object of the
  Item_func_get_user_var class is involved.
  
  Now the Arg_comparator::can_compare_as_dates() and the
  get_datetime_value() functions never cache result of the GET_USER_VAR()
  function (the Item_func_get_user_var class).

  mysql-test/r/type_datetime.result@1.44, 2007-05-17 23:08:24+04:00, evgen@moonbone.local +24 -0
    A test case is added for the bug#28261: Wrong DATETIME comparison result when the GET_USER_VAR function
    is involved.

  mysql-test/t/type_datetime.test@1.30, 2007-05-17 23:07:55+04:00, evgen@moonbone.local +12 -0
    A test case is added for the bug#28261: Wrong DATETIME comparison result when the GET_USER_VAR function
    is involved.

  sql/item_cmpfunc.cc@1.252, 2007-05-17 23:08:45+04:00, evgen@moonbone.local +13 -2
    Bug#28261: Wrong DATETIME comparison result when the GET_USER_VAR function
    is involved.
    Now the Arg_comparator::can_compare_as_dates() and the
    get_datetime_value() functions never cache result of the GET_USER_VAR()
    function (the Item_func_get_user_var class).

ChangeSet@1.2475.5.1, 2007-05-17 12:55:59-06:00, tsmith@siva.hindu.god +1 -0
  ps_6bdb.result:
    Fix bad merge of test results

  mysql-test/r/ps_6bdb.result@1.50, 2007-05-17 12:55:52-06:00, tsmith@siva.hindu.god +1 -1
    Fix bad merge of test results

ChangeSet@1.2425.73.1, 2007-05-17 19:38:34+03:00, gkodinov@macbook.gmz +3 -0
  Bug#22855:
  Conversion errors when constructing the condition for an
  IN predicates were treated as if the affected column contains
  NULL. If such a IN predicate is inside NOT we get wrong 
  results.
  Corrected the handling of conversion errors in an IN predicate 
  that is resolved by unique_subquery (through 
  subselect_uniquesubquery_engine).

  mysql-test/r/subselect3.result@1.7.1.1, 2007-05-17 19:38:26+03:00, gkodinov@macbook.gmz +18 -0
    Bug#22855: test case

  mysql-test/t/subselect3.test@1.7.1.1, 2007-05-17 19:38:27+03:00, gkodinov@macbook.gmz +18 -0
    Bug#22855: test case

  sql/item_subselect.cc@1.154.1.1, 2007-05-17 19:38:27+03:00, gkodinov@macbook.gmz +74 -7
    Bug#22855: corrected the handling of conversion errors and
    NULL key values in IN predicate that is resolved by index
    lookup.

ChangeSet@1.1616.3025.9, 2007-05-17 15:23:59+05:00, svoj@mysql.com +1 -0
  Addition to fix for
  BUG#25712 - insert delayed and check table run together report crashed
              tables
  Fixed wrongly applied patch.

  mysys/my_seek.c@1.11.3.2, 2007-05-17 15:23:58+05:00, svoj@mysql.com +1 -1
    Addition to fix for
    BUG#25712 - insert delayed and check table run together report crashed
                tables
    Fixed wrongly applied patch.

ChangeSet@1.1616.3025.8, 2007-05-17 12:43:52+05:00, svoj@mysql.com +1 -0
  Addition to fix for
  BUG#25712 - insert delayed and check table run together report
              crashed tables
  
  Let MY_THREADSAFE have distinct value. Some functions call my_seek
  passing MyFlags argument directly to it. This may cause unnecessary
  locks, which may finally lead to a dead-lock (specifically see my_lock).

  include/my_sys.h@1.116.5.1, 2007-05-17 12:43:51+05:00, svoj@mysql.com +1 -1
    Addition to fix for
    BUG#25712 - insert delayed and check table run together report
                crashed tables
    
    Let MY_THREADSAFE have distinct value. Some functions call my_seek
    passing MyFlags argument directly to it. This may cause unnecessary
    locks, which may finally lead to a dead-lock (specifically see my_lock).
    
    Also it doesn't affect my_pread/my_pwrite in any way. So the comment was
    updated.

ChangeSet@1.2469.32.1, 2007-05-16 23:42:10-07:00, igor@olga.mysql.com +3 -0
  Fixed bug #28337: wrong results for grouping queries with correlated
  subqueries in WHERE conditions.
  This bug was introduced by the patch for bug 27321.

  mysql-test/r/subselect.result@1.190, 2007-05-16 23:42:08-07:00, igor@olga.mysql.com +30 -0
    Added a test case for bug #28337.

  mysql-test/t/subselect.test@1.152, 2007-05-16 23:42:08-07:00, igor@olga.mysql.com +24 -0
    Added a test case for bug #28337.

  sql/item.cc@1.265.1.2, 2007-05-16 23:42:09-07:00, igor@olga.mysql.com +2 -1
    Fixed bug #28337: wrong results for grouping queries with correlated
    subqueries in WHERE conditions.
    This bug was introduced by the patch for bug 27321.
    
    Now in the Item_field::fix_outer_field function we create an Item_outer_ref
    object for an outer reference only if it is used in the SELECT list or
    in the HAVING clause of the subquery against which the reference is resolved.

ChangeSet@1.1616.3040.1, 2007-05-16 17:09:49-04:00, iggy@amd64.(none) +1 -0
  Bug#24400 Source files for Server: Visual Studio Workspace contains a small config bug
  - Correct bad path in project files.

  VC++Files/sql/mysqld.dsp@1.17.1.21, 2007-05-16 17:09:48-04:00, iggy@amd64.(none) +1 -1
    Bug#24400 Source files for Server: Visual Studio Workspace contains a small config bug
    - Correct bad path.

ChangeSet@1.2475.1.10, 2007-05-16 16:14:13-04:00, dkatz@damien-katzs-computer.local +2 -0
  Bug #27119  	server crash with integer division by zero during filesort on huge result
  
  Added checks to detect integer overflow and fixed other bugs on the error path.

  myisam/sort.c@1.62, 2007-05-16 16:14:08-04:00, dkatz@damien-katzs-computer.local +2 -1
    Replaced a break statement with a goto statement so that a failure will instead break

  sql/filesort.cc@1.118, 2007-05-16 16:14:09-04:00, dkatz@damien-katzs-computer.local +15 -6
    Fixed an allocation routine to detect integer overflow, and as an optimization a check that prevents the number of buffpeks being larger than can possibly fit into memory.
        
    Fixed several unchecked error codes.
        
    Changed an index variable from int to uint to the match the type of the variable it's
    being compared with.
        
        Replaced a break statement with a goto statement so that a failure will instead break
    out of the higher level while-loop, instead of just the nested for-loop.

ChangeSet@1.1616.3025.7, 2007-05-16 23:42:32+05:00, svoj@mysql.com +2 -0
  BUG#25712 - insert delayed and check table run together report crashed
              tables
  
  In case system doesn't have native pread/pwrite calls (e.g. Windows)
  and there is CHECK TABLE runs concurrently with another statement that
  reads from a table, the table may be reported as crashed.
  
  This is fixed by locking file descriptor when my_seek is executed on
  MyISAM index file and emulated pread/pwrite may be executed concurrently.
  
  Affects MyISAM tables on platforms that do not have native
  pread/pwrite calls (e.g. Windows).
  
  No deterministic test case for this bug.

  myisam/mi_check.c@1.105.1.58, 2007-05-16 23:42:31+05:00, svoj@mysql.com +7 -6
    Key file descriptor is shared among threads and mixed set of
    my_pread/my_pwrite and my_seek calls is possible. This is not
    a problem on systems that have native pread/pwrite calls.
    
    In case system doesn't have native pread/pwrite calls (e.g. Windows)
    we must ensure that my_pread/my_pwrite are not executed at the same
    time with my_seek. This is done by passing MY_THREADSAFE flag to
    my_seek.

  mysys/my_seek.c@1.11.3.1, 2007-05-16 23:42:31+05:00, svoj@mysql.com +13 -2
    On platforms that do not have native pread/pwrite calls (e.g. Windows)
    these calls are emulated as follow: lock fd, lseek, read, unlock fd.
    
    In case file descriptor is shared among threads, where one thread
    executes my_pread and another thread executes my_seek, we may read
    from a wrong position. This may happen because my_seek doesn't lock
    fd and thus may be executed by another thread after emulated pread
    has done lseek and before it has done read.
    
    To fix problem mentioned above we introduce new flag MY_THREADSAFE to
    my_seek, which is meaningful only in case pread/pwrite calls are
    emulated. If this flag is set, lseek operation is performed as follow:
    lock fd, seek, unlock fd.

ChangeSet@1.1616.2877.98, 2007-05-16 17:51:28+02:00, msvensson@pilot.blaudden +1 -0
  Bug#28473 Does mysql-test-run.pl handle LD_LIBRARY_PATH wrong ?
   - Fix spelling error

  mysql-test/mysql-test-run.pl@1.8.20.11, 2007-05-16 17:51:28+02:00, msvensson@pilot.blaudden +1 -1
    Fix spelling error

ChangeSet@1.1616.2877.97, 2007-05-16 17:19:36+02:00, msvensson@pilot.blaudden +3 -0
  WL#2247 mysqltest: add option for sorting results
   - Change from "query_sorted <query>" to "sorted_results"

  client/mysqltest.c@1.92.21.65, 2007-05-16 17:19:35+02:00, msvensson@pilot.blaudden +12 -6
    Replace "query_sorted <query>" with the ability to turn
    on "one shot result sorting" with the command "sorted_results" 

  mysql-test/r/mysqltest.result@1.3.1.23, 2007-05-16 17:19:35+02:00, msvensson@pilot.blaudden +52 -0
    Update test and result

  mysql-test/t/mysqltest.test@1.3.1.28, 2007-05-16 17:19:35+02:00, msvensson@pilot.blaudden +64 -7
    Update test and result

ChangeSet@1.1616.2877.96, 2007-05-16 16:30:26+02:00, msvensson@pilot.blaudden +1 -0
  Bug#28470 mysqltest scripts need to know protocol

  client/mysqltest.c@1.92.21.64, 2007-05-16 16:30:25+02:00, msvensson@pilot.blaudden +5 -0
    Make it possible for test scripts to know what protocol is being used

ChangeSet@1.2469.28.1, 2007-05-16 14:25:38+02:00, thek@adventure.(none) +2 -0
  Bug#27415 Text Variables in stored procedures
   - Problem was reported as a SP variable using itself as 
     right value inside SUBSTR caused corruption of data. 
   - This bug could not be verified in either 5.0bk or 5.1bk
   - Added test case to prevent future regressions.

  mysql-test/r/sp-vars.result@1.8, 2007-05-16 14:25:37+02:00, thek@adventure.(none) +41 -0
    Added test case for a reported regression which couldn't be
    verified.

  mysql-test/t/sp-vars.test@1.6, 2007-05-16 14:25:37+02:00, thek@adventure.(none) +44 -0
    Added test case for a reported regression which couldn't be
    verified.

ChangeSet@1.2475.1.8, 2007-05-16 14:00:47+02:00, msvensson@pilot.blaudden +1 -0
  Bug#21103: "DATE column not compared as DATE"
  BDB results fixed (not p/o 5.1 fix)

  mysql-test/r/ps_6bdb.result@1.49, 2007-05-16 14:00:46+02:00, msvensson@pilot.blaudden +7 -0
    Now we get a note when we insert a datetime value into a date column

ChangeSet@1.2475.4.1, 2007-05-16 10:44:59+02:00, msvensson@pilot.blaudden +38 -0
  Backport of TIME->MYSQL_TIME / Y2K fixset
     
  Made year 2000 handling more uniform
  Removed year 2000 handling out from calc_days()
  The above removes some bugs in date/datetimes with year between 0 and 200
  Now we get a note when we insert a datetime value into a date column
  For default values to CREATE, don't give errors for warning level NOTE
  Fixed some compiler failures
  Added library ws2_32 for windows compilation (needed if we want to compile with IOCP support)
  Removed duplicate typedef TIME and replaced it with MYSQL_TIME
  
  Better (more complete) fix for: Bug#21103 "DATE column not compared as DATE"
  Fixed properly Bug#18997 "DATE_ADD and DATE_SUB perform year2K autoconversion magic on 4-digit year value"
  Fixed Bug#23093 "Implicit conversion of 9912101 to date does not match cast(9912101 as date)"
   

  include/my_time.h@1.21, 2007-05-16 10:44:32+02:00, msvensson@pilot.blaudden +1 -0
    Removed not used define YY_MAGIC_BELOW
    Added prototype for year_2000_handling()

  mysql-test/r/date_formats.result@1.34, 2007-05-16 10:44:34+02:00, msvensson@pilot.blaudden +16 -2
    Updated results (fixed bug in date_format() with year < 99

  mysql-test/r/func_sapdb.result@1.21, 2007-05-16 10:44:34+02:00, msvensson@pilot.blaudden +6 -0
    Added more testing of make_date()

  mysql-test/r/ps_2myisam.result@1.47, 2007-05-16 10:44:34+02:00, msvensson@pilot.blaudden +7 -0
    Now we get a note when we insert a datetime value into a date column

  mysql-test/r/ps_3innodb.result@1.50, 2007-05-16 10:44:34+02:00, msvensson@pilot.blaudden +7 -0
    Now we get a note when we insert a datetime value into a date column

  mysql-test/r/ps_4heap.result@1.46, 2007-05-16 10:44:35+02:00, msvensson@pilot.blaudden +7 -0
    Now we get a note when we insert a datetime value into a date column

  mysql-test/r/ps_5merge.result@1.47, 2007-05-16 10:44:35+02:00, msvensson@pilot.blaudden +14 -0
    Now we get a note when we insert a datetime value into a date column

  mysql-test/r/ps_7ndb.result@1.50, 2007-05-16 10:44:36+02:00, msvensson@pilot.blaudden +7 -0
    Now we get a note when we insert a datetime value into a date column

  mysql-test/r/strict.result@1.34, 2007-05-16 10:44:36+02:00, msvensson@pilot.blaudden +2 -0
    zero-year in str_to_date() throws warning in strict

  mysql-test/r/type_date.result@1.17, 2007-05-16 10:44:36+02:00, msvensson@pilot.blaudden +26 -0
    Added test for date conversions

  mysql-test/r/type_datetime.result@1.38.1.1, 2007-05-16 10:44:37+02:00, msvensson@pilot.blaudden +35 -0
    Added testcase for datetime to date conversion.

  mysql-test/t/date_formats.test@1.26, 2007-05-16 10:44:37+02:00, msvensson@pilot.blaudden +2 -0
    Added testing of dates < 200

  mysql-test/t/func_sapdb.test@1.15, 2007-05-16 10:44:37+02:00, msvensson@pilot.blaudden +2 -0
    More testing of makedate()

  mysql-test/t/type_date.test@1.15, 2007-05-16 10:44:37+02:00, msvensson@pilot.blaudden +13 -0
    Added test for date conversions

  mysql-test/t/type_datetime.test@1.24.1.1, 2007-05-16 10:44:37+02:00, msvensson@pilot.blaudden +25 -0
    Added testcase for datetime to date conversion

  sql-common/my_time.c@1.36, 2007-05-16 10:44:44+02:00, msvensson@pilot.blaudden +33 -1
    Added year_2000_handling()
    Removed year 2000 handling from calc_daynr()

  sql/field.cc@1.347.1.1, 2007-05-16 10:44:38+02:00, msvensson@pilot.blaudden +75 -49
    Give note if we insert a datetime value in a date field
    Don't give notes if we are doing internal test conversions (like from convert_constant_item())
    More documentation (store functions can now return '3' to inform that the function did return a NOTE (not warning or error))
    Revert some changes in Field_newdate::store() to get more optimal code
    Field::set_warning() will now ignore notes if CHECK_FIELD_IGNORE is set.
    New parameters to make_truncated_value_warning()

  sql/field.h@1.202, 2007-05-16 10:44:38+02:00, msvensson@pilot.blaudden +15 -15
    Give note if we insert a datetime value in a date field
    Don't give notes if we are doing internal test conversions (like from convert_constant_item())
    More documentation (store functions can now return '3' to inform that the function did return a NOTE (not warning or error))
    Revert some changes in Field_newdate::store() to get more optimal code
    Field::set_warning() will now ignore notes if CHECK_FIELD_IGNORE is set.
    New parameters to make_truncated_value_warning()

  sql/item.cc@1.265.2.1, 2007-05-16 10:44:39+02:00, msvensson@pilot.blaudden +46 -27
    Give note if we insert a datetime value in a date field
    Don't give notes if we are doing internal test conversions (like from convert_constant_item())
    More documentation (store functions can now return '3' to inform that the function did return a NOTE (not warning or error))
    Revert some changes in Field_newdate::store() to get more optimal code
    Field::set_warning() will now ignore notes if CHECK_FIELD_IGNORE is set.
    New parameters to make_truncated_value_warning()

  sql/item.h@1.228.1.1, 2007-05-16 10:44:39+02:00, msvensson@pilot.blaudden +13 -13
    TIME -> MYSQL_TIME

  sql/item_cmpfunc.cc@1.248.1.1, 2007-05-16 10:44:39+02:00, msvensson@pilot.blaudden +6 -2
    Don't print notes in convert_constant_item()

  sql/item_func.h@1.165.1.1, 2007-05-16 10:44:39+02:00, msvensson@pilot.blaudden +2 -2
    TIME -> MYSQL_TIME

  sql/item_timefunc.cc@1.143, 2007-05-16 10:44:40+02:00, msvensson@pilot.blaudden +124 -95
    New parameters to make_truncated_value_warning()
    Moved year 2000 handling out from calc_days()

  sql/item_timefunc.h@1.75, 2007-05-16 10:44:40+02:00, msvensson@pilot.blaudden +24 -24
    TIME -> MYSQL_TIME

  sql/my_decimal.cc@1.15, 2007-05-16 10:44:40+02:00, msvensson@pilot.blaudden +1 -1
    TIME -> MYSQL_TIME

  sql/my_decimal.h@1.13.2.1, 2007-05-16 10:44:40+02:00, msvensson@pilot.blaudden +1 -1
    TIME -> MYSQL_TIME

  sql/mysql_priv.h@1.447.2.1, 2007-05-16 10:44:41+02:00, msvensson@pilot.blaudden +19 -13
    Added error level to make_truncated_value_warning()

  sql/protocol.cc@1.122, 2007-05-16 10:44:41+02:00, msvensson@pilot.blaudden +6 -6
    TIME -> MYSQL_TIME

  sql/protocol.h@1.37, 2007-05-16 10:44:41+02:00, msvensson@pilot.blaudden +9 -9
    TIME -> MYSQL_TIME

  sql/sp.cc@1.129.1.1, 2007-05-16 10:44:41+02:00, msvensson@pilot.blaudden +1 -1
    TIME -> MYSQL_TIME

  sql/sql_base.cc@1.377.2.1, 2007-05-16 10:44:42+02:00, msvensson@pilot.blaudden +1 -1
    Make testing of result value of save_in_field() uniform

  sql/sql_class.h@1.328.2.1, 2007-05-16 10:44:42+02:00, msvensson@pilot.blaudden +1 -1
    TIME -> MYSQL_TIME

  sql/sql_show.cc@1.348, 2007-05-16 10:44:42+02:00, msvensson@pilot.blaudden +2 -2
    TIME -> MYSQL_TIME

  sql/structs.h@1.58, 2007-05-16 10:44:42+02:00, msvensson@pilot.blaudden +1 -2
    TIME -> MYSQL_TIME

  sql/time.cc@1.67, 2007-05-16 10:44:42+02:00, msvensson@pilot.blaudden +20 -18
    Added error level to make_truncated_value_warning()

  sql/tztime.cc@1.42, 2007-05-16 10:44:42+02:00, msvensson@pilot.blaudden +44 -44
    TIME -> MYSQL_TIME

  sql/tztime.h@1.16, 2007-05-16 10:44:43+02:00, msvensson@pilot.blaudden +5 -5
    TIME -> MYSQL_TIME

  sql/unireg.cc@1.85, 2007-05-16 10:44:43+02:00, msvensson@pilot.blaudden +3 -1
    For default values to CREATE, don't give errors for warning level NOTE
    (Fixed failed CREATE when we give a datetime value to a date field)

ChangeSet@1.2475.3.1, 2007-05-16 10:14:29+02:00, msvensson@pilot.blaudden +2 -0
  Bug#28223: mysqldump --compact --routines restores from @OLD_SQL_MODE w/o ever setting it
    - mysqldump generated output that set OLD_SQL_MODE twice, to different values
      (for triggers), or not at all (for routines) in some cases.

  client/mysqldump.c@1.263, 2007-05-16 10:14:28+02:00, msvensson@pilot.blaudden +8 -2
    Only save SQL_MODE in dump_triggers if in --compact mode. Otherwise,
    it's already been saved in write_header(). Likewise for dumpe_routines,
    where it was never saved.

  mysql-test/r/mysqldump.result@1.124, 2007-05-16 10:14:28+02:00, msvensson@pilot.blaudden +4 -4
    mysqldump output has subtly changed. Adjust test-results. This also shows
    OLD_SQL_MODE is always set exactly once now

ChangeSet@1.2475.2.3, 2007-05-16 10:10:02+02:00, msvensson@pilot.blaudden +4 -0
  Fix for bug #28240: "isinf()" cannot be used in C++ for lack of prototype
  - Since isinf() portability across various platforms and
    compilers is a complicated question, we should not use
    it directly. Instead, the my_isinf() macro should be used,
    which is defined as an alias to the system-defined isinf()
    if it is safe to use, or a workaround implementation otherwise

  configure.in@1.441.3.1, 2007-05-16 10:10:01+02:00, msvensson@pilot.blaudden +13 -5
    Added a check to define HAVE_ISINF only if it can be used
    in C++ code as well.

  include/my_global.h@1.140.1.1, 2007-05-16 10:10:01+02:00, msvensson@pilot.blaudden +5 -6
    Define my_isinf() as an alias to isinf(), if it is available
    in both C and C++ code. Otherwise, define it to a workaround
    implementation.

  sql/item_func.cc@1.336.4.1, 2007-05-16 10:10:01+02:00, msvensson@pilot.blaudden +2 -2
    Replaced isinf() with my_isinf().

  strings/strtod.c@1.25.1.1, 2007-05-16 10:10:01+02:00, msvensson@pilot.blaudden +1 -1
    Replaced isinf() with my_isinf().

ChangeSet@1.2469.25.4, 2007-05-16 11:49:15+04:00, kostja@vajra.(none) +1 -0
  Fix a failing assert.

  sql/sql_insert.cc@1.237, 2007-05-16 11:49:11+04:00, kostja@vajra.(none) +1 -1
    Do not access delayed thread memory without a mutex.

ChangeSet@1.2469.27.1, 2007-05-16 09:51:05+04:00, kostja@vajra.(none) +6 -0
  A fix and a test case for 
  Bug#21483 "Server abort or deadlock on INSERT DELAYED with another
  implicit insert"
  Also fixes and adds test cases for bugs:
  20497 "Trigger with INSERT DELAYED causes Error 1165"
  21714 "Wrong NEW.value and server abort on INSERT DELAYED to a
  table with a trigger".
  Post-review fixes.
  
  Problem:
  In MySQL INSERT DELAYED is a way to pipe all inserts into a
  given table through a dedicated thread. This is necessary for
  simplistic storage engines like MyISAM, which do not have internal
  concurrency control or threading and thus can not
  achieve efficient INSERT throughput without support from SQL layer.
  DELAYED INSERT works as follows:
  For every distinct table, which can accept DELAYED inserts and has
  pending data to insert, a dedicated thread is created to write data
  to disk. All user connection threads that attempt to
  delayed-insert into this table interact with the dedicated thread in
  producer/consumer fashion: all records to-be inserted are pushed
  into a queue of the dedicated thread, which fetches the records and 
  writes them.
  In this design, client connection threads never open or lock
  the delayed insert table.
  This functionality was introduced in version 3.23 and does not take 
  into account existence of triggers, views, or pre-locking.
  E.g. if INSERT DELAYED is called from a stored function, which,
  in turn, is called from another stored function that uses the delayed
  table, a deadlock can occur, because delayed locking by-passes
  pre-locking. Besides:
   * the delayed thread works directly with the subject table through
     the storage engine API and does not invoke triggers
   * even if it was patched to invoke triggers, if triggers,
     in turn, used other tables, the delayed thread would
     have to open and lock involved tables (use pre-locking).
   * even if it was patched to use pre-locking, without deadlock
     detection the delayed thread could easily lock out user 
     connection threads in case when the same table is used both
     in a trigger and on the right side of the insert query: 
     the delayed thread would not release locks until all inserts 
     are complete, and user connection can not complete inserts 
     without having locks on the tables used on the right side of the
     query.
  
  Solution:
  
  These considerations suggest two general alternatives for the
  future of INSERT DELAYED:
   * it is considered a full-fledged alternative to normal INSERT
   * it is regarded as an optimisation that is only relevant 
     for simplistic engines.
  Since we missed our chance to provide complete support of new
  features when 5.0 was in development, the first alternative
  currently renders infeasible.
  However, even the second alternative, which is to detect
  new features and convert DELAYED insert into a normal insert, 
  is not easy to implement.
  The catch-22 is that we don't know if the subject table has triggers
  or is a view before we open it, and we only open it in the
  delayed thread. We don't know if the query involves pre-locking
  until we have opened all tables, and we always first create
  the delayed thread, and only then open the remaining tables.
  This patch detects the problematic scenarios and converts
  DELAYED INSERT to a normal INSERT using the following approach:
   * if the statement is executed under pre-locking (e.g. from
     within a stored function or trigger) or the right
     side may require pre-locking, we detect the situation
     before creating a delayed insert thread and convert the statement
     to a conventional INSERT.
    * if the subject table is a view or has triggers, we shutdown
     the delayed thread and convert the statement to a conventional
     INSERT.

  mysql-test/r/insert.result@1.28, 2007-05-16 09:51:03+04:00, kostja@vajra.(none) +116 -0
    Update test results.

  mysql-test/t/insert.test@1.26, 2007-05-16 09:51:03+04:00, kostja@vajra.(none) +139 -0
    Add a test case for Bug#21483, Bug#20497, Bug#21714 (INSERT DELAYED
    and stored routines, triggers).

  sql/sp_head.cc@1.244.1.1, 2007-05-16 09:51:03+04:00, kostja@vajra.(none) +8 -0
    Upgrade lock type to TL_WRITE when computing the pre-locking set.

  sql/sql_base.cc@1.377.1.1, 2007-05-16 09:51:03+04:00, kostja@vajra.(none) +2 -2
    Use a new method.

  sql/sql_insert.cc@1.232.1.1, 2007-05-16 09:51:03+04:00, kostja@vajra.(none) +171 -81
    INSERT DELAYED and pre-locking:
    - if  under pre-locking, upgrade the lock type to TL_WRITE
    and proceed as a normal write
    - if DELAYED table has triggers, also request a lock upgrade.
    - make sure errors in the delayed thread are propagated
    correctly

  sql/sql_lex.h@1.244.1.1, 2007-05-16 09:51:03+04:00, kostja@vajra.(none) +6 -0
    Add a method to check if a parsed tree refers to stored
    routines.

ChangeSet@1.2469.13.9, 2007-05-16 10:12:49+05:00, holyfoot@mysql.com +3 -0
  bug #8663 cant use bigint unsigned as input to cast
  in the case of the overflow in the decimal->integer conversion
  we didn't return the proper boundary value, but just the result
  of the conversion we calculated on the moment of the error

  mysql-test/r/bigint.result@1.35, 2007-05-16 10:12:48+05:00, holyfoot@mysql.com +10 -0
    bug #8663 cant use bigint unsigned as input to cast
    test result fixed

  mysql-test/t/bigint.test@1.30, 2007-05-16 10:12:48+05:00, holyfoot@mysql.com +6 -0
    bug #8663 cant use bigint unsigned as input to cast
    test case

  strings/decimal.c@1.79, 2007-05-16 10:12:48+05:00, holyfoot@mysql.com +5 -1
    bug #8663 cant use bigint unsigned as input to cast
    decimal->int conversion fixed to return proper boundary value
    in the case of overflow

ChangeSet@1.2469.26.1, 2007-05-16 00:30:12+04:00, evgen@moonbone.local +3 -0
  Bug#28208: Wrong result of a non-const STRING function with a const DATETIME
  function.
  
  A wrong  condition was used to check that the
  Arg_comparator::can_compare_as_dates() function calculated the value of the
  string constant. When comparing a non-const STRING function with a constant
  DATETIME function it leads to saving an arbitrary value as a cached value of
  the DATETIME function.
  
  Now the Arg_comparator::set_cmp_func() function initializes the const_value
  variable to the impossible DATETIME value (-1) and this const_value is
  cached only if it was changed by the Arg_comparator::can_compare_as_dates()
  function.

  mysql-test/r/type_datetime.result@1.43, 2007-05-16 00:29:50+04:00, evgen@moonbone.local +6 -0
    Added a test case for the bug#28208: Wrong result of a non-const STRING function with a const DATETIME function.

  mysql-test/t/type_datetime.test@1.29, 2007-05-16 00:29:48+04:00, evgen@moonbone.local +9 -0
    Added a test case for the bug#28208: Wrong result of a non-const STRING function with a const DATETIME function.

  sql/item_cmpfunc.cc@1.251, 2007-05-16 00:29:50+04:00, evgen@moonbone.local +2 -3
    Bug#28208: Wrong result of a non-const STRING function with a const DATETIME
    function.
    Now the Arg_comparator::set_cmp_func() function initializes the const_value
    variable to the impossible DATETIME value (-1) and this const_value is
    cached only if it was changed by the Arg_comparator::can_compare_as_dates()
    function.

ChangeSet@1.2469.20.3, 2007-05-15 18:19:18+02:00, joerg@trift2. +1 -0
  Fix bug#27833 "Bourne shell string comparison issue in scripts/make_win_bin_dist":
  
  Several string comparisons could never yield true because they had an 'x' guard
  added to the variable but not to the constant value. Fix that by guarding both sides.

  scripts/make_win_bin_dist@1.14, 2007-05-15 18:19:15+02:00, joerg@trift2. +17 -17
    Fix bug#27833 "Bourne shell string comparison issue in scripts/make_win_bin_dist":
    
    Several string comparisons could never yield true because they had an 'x' guard
    added to the variable but not to the constant value. Fix that by guarding both sides.
    
    Use this occasion to apply some corrections to the comments and the usage text.
    
    Also, ensure the ".pdb" file is always optional.

ChangeSet@1.2475.2.2, 2007-05-15 17:04:31+02:00, msvensson@pilot.blaudden +2 -0
  Add triggers for detecting bad changesets to mysql-5.0

  BitKeeper/triggers/pre-outgoing.crash-protect.pl@1.1, 2007-05-15 17:04:30+02:00, msvensson@pilot.blaudden +82 -0
    Add triggers for detecting bad changesets to mysql-5.0

  BitKeeper/triggers/pre-outgoing.crash-protect.pl@1.0, 2007-05-15 17:04:30+02:00, msvensson@pilot.blaudden +0 -0

  BitKeeper/triggers/pre-resolve.crash-protect.pl@1.1, 2007-05-15 17:04:30+02:00, msvensson@pilot.blaudden +82 -0
    Add triggers for detecting bad changesets to mysql-5.0

  BitKeeper/triggers/pre-resolve.crash-protect.pl@1.0, 2007-05-15 17:04:30+02:00, msvensson@pilot.blaudden +0 -0

ChangeSet@1.2475.1.3, 2007-05-15 10:30:11-04:00, iggy@amd64.(none) +2 -0
  Bug#24732 Executables do not include Vista manifests
  - Manifest requires four part application version.
  - mysqld does not need requireAdministrator rights 
  to run.

  sql/CMakeLists.txt@1.6, 2007-05-15 10:30:09-04:00, iggy@amd64.(none) +1 -1
    Bug#24732 Executables do not include Vista manifests
    - Request less permissive set of privileges.

  win/create_manifest.js@1.2, 2007-05-15 10:30:09-04:00, iggy@amd64.(none) +1 -0
    Bug#24732 Executables do not include Vista manifests
    - Manifest requires four part application version.

ChangeSet@1.2475.2.1, 2007-05-15 16:03:38+02:00, msvensson@pilot.blaudden +1 -0
  Bug#27344 Total failure to start the server
   - Give some more protection against "too long socket name by setting the max
     length when to use a tmpdir for sockets to 70

  mysql-test/mysql-test-run.pl@1.218.2.1, 2007-05-15 16:03:37+02:00, msvensson@pilot.blaudden +1 -1
    Give some more protection against "too long socket name by setting the max
    ength when to use a tmpdir for sockets to 70 

ChangeSet@1.2425.72.1, 2007-05-15 15:29:12+03:00, mhansson@linux-st28.site +3 -0
  Bug#27573: MIN() on an indexed column which is always NULL sets _other_ results 
  to NULL
  
  For queries of the form SELECT MIN(key_part_k) FROM t1 
  WHERE key_part_1 = const and ... and key_part_k-1 = const,
  the opt_sum_query optimization tries to
  use an index to substitute MIN/MAX functions with their values according
  to the following rules:
  1) Insert the minimum non-null values where the WHERE clause still matches, or
  3) A row of nulls
  
  However, the correct semantics requires that there is a third case 2)
  such that a NULL value is substituted if there are only NULL values for 
  key_part_k.
  
  The patch modifies opt_sum_query() to handle this missing case.

  mysql-test/r/func_group.result@1.59.1.1, 2007-05-15 15:29:10+03:00, mhansson@linux-st28.site +47 -0
    Bug #27573: Correct result

  mysql-test/t/func_group.test@1.54.1.1, 2007-05-15 15:29:10+03:00, mhansson@linux-st28.site +33 -0
    Bug #27573: test case

  sql/opt_sum.cc@1.62, 2007-05-15 15:29:10+03:00, mhansson@linux-st28.site +76 -10
    Bug #27573:
    Added code that will try to read the
    first non-null value for a given complete-field prefix, second
    choice is to read the null, and lastly set the error code if no row
    is found.

ChangeSet@1.2469.24.3, 2007-05-15 12:22:53+02:00, df@pippilotta.erinye.com +1 -0
  BUG#28372 mysqldump test case fails with binlog disabled

  mysql-test/t/mysqldump.test@1.116, 2007-05-15 12:22:51+02:00, df@pippilotta.erinye.com +3 -0
    BUG#28372 don't run this test case if binlog is disabled

ChangeSet@1.2469.1.20, 2007-05-15 12:07:09+02:00, tomas@whalegate.ndb.mysql.com +1 -0
  add error code to ndb require

  ndb/src/kernel/blocks/dbdict/Dbdict.cpp@1.83, 2007-05-15 12:07:07+02:00, tomas@whalegate.ndb.mysql.com +2 -1
    add error code to ndb require

ChangeSet@1.2469.1.19, 2007-05-15 12:02:58+02:00, tomas@whalegate.ndb.mysql.com +1 -0
  improve error message on corrup schema file

  ndb/src/kernel/blocks/dbdict/Dbdict.cpp@1.82, 2007-05-15 12:02:56+02:00, tomas@whalegate.ndb.mysql.com +21 -10
    improve error message on corrup schema file

ChangeSet@1.2469.24.2, 2007-05-15 11:32:33+02:00, df@pippilotta.erinye.com +3 -0
  BUG#28370 federated test cases fail with binlog disabled

  mysql-test/include/federated.inc@1.4, 2007-05-15 11:32:31+02:00, df@pippilotta.erinye.com +1 -0
    BUG#28370 all federated tests require --log-bin for now

  mysql-test/mysql-test-run.pl@1.218.1.1, 2007-05-15 11:32:31+02:00, df@pippilotta.erinye.com +1 -2
    BUG#28370 detect --skip-log-bin option in mtr's --mysqld option

  mysql-test/r/have_log_bin.require@1.2, 2007-05-15 11:32:31+02:00, df@pippilotta.erinye.com +1 -1
    the variable is really called log_bin

ChangeSet@1.2469.1.18, 2007-05-15 09:03:00+02:00, tomas@whalegate.ndb.mysql.com +3 -0
  Bug #26386 ndbd wont start after changing schema
      backported error code from 5.1
      split error check when reading schema file

  ndb/include/mgmapi/ndbd_exit_codes.h@1.14, 2007-05-15 09:02:58+02:00, tomas@whalegate.ndb.mysql.com +1 -0
    backported error code from 5.1

  ndb/src/kernel/blocks/dbdict/Dbdict.cpp@1.81, 2007-05-15 09:02:58+02:00, tomas@whalegate.ndb.mysql.com +18 -8
    backported error code from 5.1
    split error check when reading schema file

  ndb/src/kernel/error/ndbd_exit_codes.c@1.17, 2007-05-15 09:02:58+02:00, tomas@whalegate.ndb.mysql.com +1 -0
    backported error code from 5.1

ChangeSet@1.1616.3032.8, 2007-05-14 23:55:18-07:00, igor@olga.mysql.com +3 -0
  Fixed bug #28272: crash that occurs when running an EXPLAIN command
  for a query over an empty table right after its creation. 
  The crash is the result of an attempt made by JOIN::optimize to evaluate
  the WHERE condition when no records have been actually read.
  The added test case can reproduce the crash only with InnoDB tables and
  only with 5.0.x.
   

  mysql-test/r/innodb_mysql.result@1.3.1.6, 2007-05-14 23:55:16-07:00, igor@olga.mysql.com +21 -0
    Added a test case for bug #28272.

  mysql-test/t/innodb_mysql.test@1.3.1.6, 2007-05-14 23:55:16-07:00, igor@olga.mysql.com +25 -0
    Added a test case for bug #28272.

  sql/sql_select.cc@1.216.148.3, 2007-05-14 23:55:16-07:00, igor@olga.mysql.com +6 -0
    Fixed bug #28272: crash that occurs when running an EXPLAIN command
    for a query over an empty table right after its creation. 
    The crash is the result of an attempt made by JOIN::optimize to evaluate
    the WHERE condition when no records have been actually read.
    Such attempts could be observed only with EXPLAIN commands.
    Now at the optimization phase the WHERE condition is never evaluated if 
    there is no record previously read from the table. 

ChangeSet@1.2469.1.17, 2007-05-15 08:34:39+02:00, tomas@whalegate.ndb.mysql.com +3 -0
  #26906 No message slogan found
  - added errormessage and code for "declaring node dead"

  ndb/include/mgmapi/ndbd_exit_codes.h@1.13, 2007-05-15 08:34:36+02:00, tomas@whalegate.ndb.mysql.com +1 -0
    #26906 No message slogan found
    - added errormessage and code for "declaring node dead"

  ndb/src/kernel/blocks/qmgr/QmgrMain.cpp@1.43, 2007-05-15 08:34:36+02:00, tomas@whalegate.ndb.mysql.com +1 -1
    #26906 No message slogan found
    - added errormessage and code for "declaring node dead"

  ndb/src/kernel/error/ndbd_exit_codes.c@1.16, 2007-05-15 08:34:36+02:00, tomas@whalegate.ndb.mysql.com +2 -0
    #26906 No message slogan found
    - added errormessage and code for "declaring node dead"

ChangeSet@1.2469.23.3, 2007-05-14 18:26:00-07:00, igor@olga.mysql.com +2 -0
  Post-merge fix.

  mysql-test/r/ps.result@1.89.1.2, 2007-05-14 18:25:58-07:00, igor@olga.mysql.com +22 -0
    Post-merge fix.

  mysql-test/t/ps.test@1.89.1.2, 2007-05-14 18:25:58-07:00, igor@olga.mysql.com +18 -0
    Post-merge fix.

ChangeSet@1.1616.3032.7, 2007-05-14 16:41:09-07:00, igor@olga.mysql.com +3 -0
  Fixed bug #27937: crash for the the second execution of a prepared
  statement from a UNION query with ORDER BY an expression containing
  RAND().
  The crash happened because the global order by list in the union query
  was not re-initialized for execution.
  (Local order by lists were re-initialized though).
  

  mysql-test/r/ps.result@1.31.1.25, 2007-05-14 16:41:08-07:00, igor@olga.mysql.com +22 -0
    Added a test case for bug #27937.

  mysql-test/t/ps.test@1.27.1.32, 2007-05-14 16:41:08-07:00, igor@olga.mysql.com +18 -0
    Added a test case for bug #27937.

  sql/sql_union.cc@1.74.1.73, 2007-05-14 16:41:08-07:00, igor@olga.mysql.com +5 -0
    Fixed bug #27937: crash for the the second execution of a prepared
    statement from a UNION query with ORDER BY an expression containing
    RAND().
    The crash happened because the global order by list in the union query
    was not re-initialized for execution.
    (Local order by lists were re-initialized though).
    Added re-initialization of the global order by list in the function
    st_select_lex_unit::init_prepare_fake_select_lex.  
    

ChangeSet@1.2469.4.13, 2007-05-14 19:25:03+04:00, anozdrin@ibm. +1 -0
  Disable im_life_cycle in 5.0.

  mysql-test/t/disabled.def@1.46.1.3, 2007-05-14 19:25:01+04:00, anozdrin@ibm. +1 -0
    Disable im_life_cycle in 5.0.

ChangeSet@1.2425.71.1, 2007-05-14 16:04:36+02:00, msvensson@pilot.blaudden +1 -0
  Bug#27597 mysqld-debug broken
  - Send errors from RTC(Runtime Error Check) to stderr instead of
  popping up an MessageBox asking to debug

  mysys/my_init.c@1.49, 2007-05-14 16:04:34+02:00, msvensson@pilot.blaudden +36 -0
    Initialize a handler for RTC errors that write the problem
    description to stderr instead of popping up an MessageBox
    asking to debug

ChangeSet@1.2469.20.2, 2007-05-14 14:59:23+02:00, dfischer@mysql.com +1 -0
  Raise version number after cloning 5.0.42

  configure.in@1.441.1.1, 2007-05-14 14:59:16+02:00, dfischer@mysql.com +2 -2
    Raise version number after cloning 5.0.42

ChangeSet@1.2469.1.16, 2007-05-14 14:38:50+02:00, tomas@whalegate.ndb.mysql.com +2 -0
  files to check if log bin is turned on

  mysql-test/include/have_log_bin.inc@1.1, 2007-05-14 14:38:48+02:00, tomas@whalegate.ndb.mysql.com +4 -0
    New BitKeeper file ``mysql-test/include/have_log_bin.inc''

  mysql-test/include/have_log_bin.inc@1.0, 2007-05-14 14:38:48+02:00, tomas@whalegate.ndb.mysql.com +0 -0

  mysql-test/r/have_log_bin.require@1.1, 2007-05-14 14:38:48+02:00, tomas@whalegate.ndb.mysql.com +2 -0
    New BitKeeper file ``mysql-test/r/have_log_bin.require''

  mysql-test/r/have_log_bin.require@1.0, 2007-05-14 14:38:48+02:00, tomas@whalegate.ndb.mysql.com +0 -0

ChangeSet@1.2469.15.3, 2007-05-14 12:15:27+02:00, tomas@whalegate.ndb.mysql.com +1 -0
  Bug #28410 ndb: no retry sleep when getting autoincrement
  - add retry sleep to allow temprary error to go away

  sql/ha_ndbcluster.cc@1.313, 2007-05-14 12:15:25+02:00, tomas@whalegate.ndb.mysql.com +36 -23
    Bug #28410 ndb: no retry sleep when getting autoincrement
    - add retry sleep to allow temprary error to go away

ChangeSet@1.2469.4.12, 2007-05-14 13:20:11+04:00, anozdrin@ibm. +1 -0
  Update description.

  mysql-test/t/disabled.def@1.46.1.2, 2007-05-14 13:20:10+04:00, anozdrin@ibm. +1 -1
    Update description.

ChangeSet@1.2469.4.11, 2007-05-14 13:02:12+04:00, anozdrin@ibm. +1 -0
  Disable random-failing IM tests.

  mysql-test/t/disabled.def@1.46.1.1, 2007-05-14 13:02:09+04:00, anozdrin@ibm. +1 -0
    Disable random-failing IM tests.

ChangeSet@1.2469.4.10, 2007-05-14 10:56:23+04:00, kostja@vajra.(none) +1 -0
  Fix a warning.

  sql/sql_insert.cc@1.234, 2007-05-14 10:56:18+04:00, kostja@vajra.(none) +6 -6
    Fix a compile-time warning (log_on is not used in embedded).

ChangeSet@1.2469.4.9, 2007-05-12 00:03:50+04:00, dlenev@mockturtle.local +1 -0
  Added missing DBUG_VOID_RETURN to the sp_head::init_sp_name() method.

  sql/sp_head.cc@1.245, 2007-05-12 00:03:48+04:00, dlenev@mockturtle.local +2 -0
    Added missing DBUG_VOID_RETURN to the sp_head::init_sp_name() method.

ChangeSet@1.2433.12.3, 2007-05-11 14:13:20-04:00, cbell@suse.vabb.com +1 -0
  BUG#17233 : LOAD DATA INFILE: failure causes mysqld dbug_assert, binlog not flushed
    
  This patch enables the NDB test ndb_load that was previously disabled
  as a result of the LOAD DATA INFILE bug reported in BUG#17233.

  mysql-test/t/disabled.def@1.47, 2007-05-11 14:13:16-04:00, cbell@suse.vabb.com +0 -1
    BUG#17233 : LOAD DATA INFILE: failure causes mysqld dbug_assert, binlog not flushed
      
    This patch enables the NDB test ndb_load that was previously disabled
    as a result of the LOAD DATA INFILE bug reported in BUG#17233.

ChangeSet@1.2469.17.1, 2007-05-11 20:33:13+04:00, dlenev@mockturtle.local +15 -0
  Fix for:
    Bug #20662 "Infinite loop in CREATE TABLE IF NOT EXISTS ... SELECT
                with locked tables"
    Bug #20903 "Crash when using CREATE TABLE .. SELECT and triggers"
    Bug #24738 "CREATE TABLE ... SELECT is not isolated properly"
    Bug #24508 "Inconsistent results of CREATE TABLE ... SELECT when
                temporary table exists"
   
  Deadlock occured when one tried to execute CREATE TABLE IF NOT
  EXISTS ... SELECT statement under LOCK TABLES which held
  read lock on target table.
  Attempt to execute the same statement for already existing
  target table with triggers caused server crashes.
  Also concurrent execution of CREATE TABLE ... SELECT statement
  and other statements involving target table suffered from
  various races (some of which might've led to deadlocks).
  Finally, attempt to execute CREATE TABLE ... SELECT in case
  when a temporary table with same name was already present
  led to the insertion of data into this temporary table and
  creation of empty non-temporary table.
   
  All above problems stemmed from the old implementation of CREATE
  TABLE ... SELECT in which we created, opened and locked target
  table without any special protection in a separate step and not
  with the rest of tables used by this statement.
  This underminded deadlock-avoidance approach used in server
  and created window for races. It also excluded target table
  from prelocking causing problems with trigger execution.
    
  The patch solves these problems by implementing new approach to
  handling of CREATE TABLE ... SELECT for base tables.
  We try to open and lock table to be created at the same time as
  the rest of tables used by this statement. If such table does not
  exist at this moment we create and place in the table cache special
  placeholder for it which prevents its creation or any other usage
  by other threads.
  
  We still use old approach for creation of temporary tables.
  
  Also note that we decided to postpone introduction of some tests
  for concurrent behaviour of CREATE TABLE ... SELECT till 5.1.
  The main reason for this is absence in 5.0 ability to set @@debug
  variable at runtime, which can be circumvented only by using several
  test files with individual .opt files. Since the latter is likely
  to slowdown test-suite unnecessary we chose not to push this tests
  into 5.0, but run them manually for this version and later push
  their optimized version into 5.1

  mysql-test/r/create.result@1.127, 2007-05-11 20:33:10+04:00, dlenev@mockturtle.local +94 -0
    Extended test coverage for CREATE TABLE ... SELECT. In particular added
    tests for bug #24508 "Inconsistent results of CREATE TABLE ... SELECT
    when temporary table exists" and bug #20662 "Infinite loop in CREATE
    TABLE IF NOT EXISTS ... SELECT with locked tables".

  mysql-test/r/trigger.result@1.58, 2007-05-11 20:33:10+04:00, dlenev@mockturtle.local +35 -0
    Added test case for bug #20903 "Crash when using CREATE TABLE .. SELECT
    and triggers"

  mysql-test/t/create.test@1.87, 2007-05-11 20:33:10+04:00, dlenev@mockturtle.local +111 -0
    Extended test coverage for CREATE TABLE ... SELECT. In particular added
    tests for bug #24508 "Inconsistent results of CREATE TABLE ... SELECT
    when temporary table exists" and bug #20662 "Infinite loop in CREATE
    TABLE IF NOT EXISTS ... SELECT with locked tables".

  mysql-test/t/trigger.test@1.65, 2007-05-11 20:33:10+04:00, dlenev@mockturtle.local +26 -0
    Added test case for bug #20903 "Crash when using CREATE TABLE .. SELECT
    and triggers"

  sql/lock.cc@1.96, 2007-05-11 20:33:11+04:00, dlenev@mockturtle.local +6 -27
    Now for creation of name-lock placeholder in lock_table_name() we use
    auxiliary function table_cache_insert_placeholder().

  sql/mysql_priv.h@1.448.1.1, 2007-05-11 20:33:11+04:00, dlenev@mockturtle.local +11 -5
    Made build_table_path() function available outside of sql_table.cc file.
    reopen_name_locked_table() now has 3rd argument which controls linking
    in of table being opened into THD::open_tables (this is useful in
    cases when placeholder used for name-locking is already linked into
    this list).
    Added declaration of auxiliary function table_cache_insert_placeholder()
    which is used for creation of table placeholders for name-locking.
    Added declaration of table_cache_has_open_placeholder() function which
    can be used for checking if table cache contains an open placeholder for
    the table and if this placeholder was created by another thread.
    (This function is needed only in 5.0 where we use it in various versions
     of CREATE TABLE in order to protect it from concurrent CREATE TABLE
     ... SELECT operations for the table. Starting from 5.1 we use different
     approach so it is going to be removed there).
    Made close_old_data_files() static within sql_base.cc file. 
    Added auxiliary drop_open_table() routine.
    Moved declaration of refresh_version to table.h header to make it
    accessible from inline methods of TABLE class.
    MYSQL_OPEN_IGNORE_LOCKED_TABLES flag is no longer used. Instead
    MYSQL_OPEN_TEMPORARY_ONLY option was added.

  sql/sql_base.cc@1.378, 2007-05-11 20:33:11+04:00, dlenev@mockturtle.local +388 -32
    Added support for the new approach to the handling of CREATE TABLE
    ... SELECT for base tables.
    
    Now we try to open and lock table to be created at the same time as
    the rest of tables used by this statement. If such table does not
    exist at this moment we create and place in the table cache special
    placeholder for it which prevents its creation or any other usage
    by other threads.
    
    Note significant distinctions of this placeholder from the placeholder
    used for normal name-lock: 1) It is treated like open table by other
    name-locks so it does not allow name-lock taking operations like DROP
    TABLE or RENAME TABLE to proceed. 2) it is linked into THD::open_tables
    list and automatically removed during close_thread_tables() call.
    
    open_tables():
      Implemented logic described above. To do this added
      auxiliary check_if_table_exists() function.
      Removed support for MYSQL_OPEN_IGNORE_LOCKED_TABLES option
      which is no longer used.
      Added MYSQL_OPEN_TEMPORARY_ONLY which is used to restrict
      search for temporary tables only.
    close_cached_tables()/close_thread_table()/reopen_tables()/
    close_old_data_files()/table_is_used()/remove_table_from_cache():
      Added support for open placeholders (note that we also use them
      when we need to re-open tables during flush).
    Added auxiliary drop_open_table() routine.
    reopen_name_locked_table():
      Now has 3rd argument which controls linking in of table being
      opened into THD::open_tables (this is useful in cases when
      placeholder used for name-locking is already linked into
      this list).
    Added auxiliary table_cache_insert_placeholder() routine which
    simplifies creation of placeholders used for name-locking.
    Added table_cache_has_open_placeholder() function which can be
    used for checking if table cache contains an open placeholder for
    the table and if this placeholder was created by another thread.
    (This function is needed only in 5.0 where we use it in various versions
     of CREATE TABLE in order to protect it from concurrent CREATE TABLE
     ... SELECT operations for the table. Starting from 5.1 we use different
     approach so it is going to be removed there).

  sql/sql_handler.cc@1.87, 2007-05-11 20:33:11+04:00, dlenev@mockturtle.local +16 -9
    Adjusted mysql_ha_mark_tables_for_reopen() routine to properly
    handle placeholders which now can be linked into open tables
    list.

  sql/sql_insert.cc@1.230.2.1, 2007-05-11 20:33:11+04:00, dlenev@mockturtle.local +101 -81
    Introduced new approach to handling of base tables in CREATE TABLE
    ... SELECT statement.
    
    Now we try to open and lock table to be created at the same time as
    the rest of tables used by this statement. If such table does not
    exist at this moment we create and place in the table cache special
    placeholder for it which prevents its creation or any other usage
    by other threads. By doing this we avoid races which existed with
    previous approach in which we created, opened and locked target in
    separate step without any special protection.
    This also allows properly calculate prelocking set in cases when
    target table already exists and has some on insert triggers.
      
    Note that we don't employ the same approach for temporary tables
    (this is okay as such tables are unaffected by other threads).
    
    Changed create_table_from_items() and select_create methods to
    implement this approach.

  sql/sql_parse.cc@1.620, 2007-05-11 20:33:11+04:00, dlenev@mockturtle.local +11 -1
    The new approach to handling of CREATE TABLE ... SELECT for
    base tables assumes that all tables (including table to be
    created) are opened and (or) locked at the same time.
    So in cases when we create base table we have to pass to
    open_and_lock_tables() table list which includes target table.

  sql/sql_prepare.cc@1.199.1.1, 2007-05-11 20:33:11+04:00, dlenev@mockturtle.local +14 -1
    The new approach to handling of CREATE TABLE ... SELECT for
    base tables assumes that all tables (including table to be
    created) are opened and (or) locked at the same time.
    So in cases when we create base table we have to pass to
    open_and_lock_tables() table list which includes target table.

  sql/sql_table.cc@1.343, 2007-05-11 20:33:11+04:00, dlenev@mockturtle.local +66 -22
    Now mysql_create_table_internal(), mysql_create_like_table() and
    mysql_alter_table() not only check that destination table doesn't
    exist on disk but also check that there is no create placeholder
    in table cache for it (i.e. there is no CREATE TABLE ... SELECT
    operation in progress for it). Note that starting from 5.1 we
    use different approach in order to to protect CREATE TABLE ... SELECT
    from concurrent CREATE TABLE (ALTER TABLE ... RENAME) operations,
    the latter simply take name-locks on table before its creation
    (on target table name before renaming).
    
    Also made build_table_path() available from other files and
    asjusted calls to reopen_name_locked_table(), which now takes
    extra argument, which controls linking of open table into
    THD::open_tables list.

  sql/sql_trigger.cc@1.67, 2007-05-11 20:33:11+04:00, dlenev@mockturtle.local +1 -1
    reopen_name_locked_tables() now has one more argument which controls
    linking of opened table into the THD::open_tables list.

  sql/sql_yacc.yy@1.516.1.1, 2007-05-11 20:33:11+04:00, dlenev@mockturtle.local +1 -3
    The new approach to handling of CREATE TABLE ... SELECT statement
    for base tables assumes that all tables including table to be
    created are open and (or) locked at the same time. Therefore
    we need to set correct lock for target table.

  sql/table.h@1.142, 2007-05-11 20:33:11+04:00, dlenev@mockturtle.local +38 -2
    Moved declaration of refresh_version variable from mysql_priv.h
    to make it accessible from inline methods of TABLE class. 
    Renamed TABLE::locked_by_flush member to open_placeholder since
    now it is also used for taking exclusive name-lock and not only
    by flush. 
    Introduced TABLE::is_name_opened() helper method which can be used
    to distinguish TABLE instances corresponding to open tables or
    placeholders for them from closed instances (e.g. due to their old
    version). Also introduced TABLE::needs_reopen_or_name_lock() helper
    which allows to check if TABLE instance corresponds to outdated
    version of table or to name-lock placeholder.
    Introduced TABLE_LIST::create member which marks elements of
    table list corresponds to the table to be created.
    Adjusted TABLE_LIST::placeholder() method to take into account 
    name-lock placeholders for tables to be created (this, for example,
    allows to properly handle such placeholders in lock_tables()).

ChangeSet@1.2469.4.7, 2007-05-11 17:26:12+04:00, kostja@vajra.(none) +8 -0
  Cleanup: now that we have Lex_input_stream, finish the transition
  by moving yet another relevant flag to it from struct LEX.

  mysql-test/r/ps.result@1.90, 2007-05-11 17:26:09+04:00, kostja@vajra.(none) +3 -3
    Update result.

  mysql-test/r/ps_1general.result@1.55, 2007-05-11 17:26:09+04:00, kostja@vajra.(none) +3 -3
    Update result.

  mysql-test/t/ps.test@1.90, 2007-05-11 17:26:09+04:00, kostja@vajra.(none) +3 -3
    New error code.

  mysql-test/t/ps_1general.test@1.31, 2007-05-11 17:26:09+04:00, kostja@vajra.(none) +3 -3
    New error code.

  sql/sql_lex.cc@1.221, 2007-05-11 17:26:09+04:00, kostja@vajra.(none) +4 -4
    Move stmt_prepare_mode to Lex_input_stream.

  sql/sql_lex.h@1.245, 2007-05-11 17:26:09+04:00, kostja@vajra.(none) +5 -5
    Move stmt_prepare_mode to class Lex_input_stream

  sql/sql_prepare.cc@1.200, 2007-05-11 17:26:09+04:00, kostja@vajra.(none) +4 -1
    Move stmt_prepare_mode to Lex_input_stream

  sql/sql_yacc.yy@1.517, 2007-05-11 17:26:09+04:00, kostja@vajra.(none) +0 -15
    Remove dead code.

ChangeSet@1.2469.16.1, 2007-05-11 16:05:20+03:00, mhansson@linux-st28.site +3 -0
  bug#28273: GROUP_CONCAT and ORDER BY: No warning when result gets truncated.
  
  When using GROUP_CONCAT with ORDER BY, a tree is used for the sorting, as 
  opposed to normal nested loops join used when there is no ORDER BY. 
  
  The tree traversal that generates the result counts the lines that have been 
  cut down. (as they get cut down to the field's max_size)
  But the check of that count was before the tree traversal, so no 
  warning was generated if the output is truncated.
  
  Fixed by moving the check to after the tree traversal.

  mysql-test/r/func_gconcat.result@1.69, 2007-05-11 16:05:18+03:00, mhansson@linux-st28.site +26 -0
    bug#28273: correct result

  mysql-test/t/func_gconcat.test@1.56, 2007-05-11 16:05:18+03:00, mhansson@linux-st28.site +14 -0
    bug#28273: test case

  sql/item_sum.cc@1.207, 2007-05-11 16:05:18+03:00, mhansson@linux-st28.site +4 -5
    bug#28273: the fix
    
    Moved the code that outputs a warning to after temporary table (tree) is traversed. 

ChangeSet@1.2469.15.2, 2007-05-11 08:07:42+02:00, tomas@whalegate.ndb.mysql.com +1 -0
  Bug#25818 No return of NDB share object in failures in open method
  - make sure resources are release properly on error

  sql/ha_ndbcluster.cc@1.312, 2007-05-11 08:07:39+02:00, tomas@whalegate.ndb.mysql.com +18 -9
    Bug#25818 No return of NDB share object in failures in open method
    - make sure resources are release properly on error

ChangeSet@1.2469.4.6, 2007-05-10 18:27:36+04:00, kostja@vajra.(none) +2 -0
  Follow the coding style with class names.

  sql/sql_class.h@1.330, 2007-05-10 18:27:32+04:00, kostja@vajra.(none) +2 -2
    Follow the coding style with class names.

  sql/sql_insert.cc@1.232, 2007-05-10 18:27:32+04:00, kostja@vajra.(none) +23 -23
    delayed_insert -> Delayed_insert

ChangeSet@1.2469.14.1, 2007-05-10 14:54:55+02:00, thek@adventure.(none) +1 -0
  Corrected merge error; missing line in debug statement.

  sql/sql_cache.cc@1.102, 2007-05-10 14:54:53+02:00, thek@adventure.(none) +1 -0
    Corrected merge error; missing line in debug statement.

ChangeSet@1.2469.4.4, 2007-05-10 16:18:01+04:00, kostja@vajra.(none) +1 -0
  No semantical change. Move checks of compatibility
  of requested lock type and requested table operation from 
  mysql_insert into a separate function.

  sql/sql_insert.cc@1.231, 2007-05-10 16:17:58+04:00, kostja@vajra.(none) +126 -50
    Cleanup: move a number of locking related checks from mysql_insert 
    to a separate function.
    Add comments.

ChangeSet@1.1616.2877.95, 2007-05-10 13:28:24+02:00, msvensson@pilot.blaudden +1 -0
  Bug#27344 Total failure to start the server
  - Give some more protection against "too long socket name by setting the max
  length when to use a tmpdir for sockets to 70 

  mysql-test/mysql-test-run.pl@1.8.20.10, 2007-05-10 13:28:23+02:00, msvensson@pilot.blaudden +1 -1
    Give some more protection against "too long socket name by setting the max
    length when to use a tmpdir for sockets to 70 

ChangeSet@1.2469.9.2, 2007-05-09 10:52:28+02:00, msvensson@pilot.blaudden +1 -0
  Bug#28193 outfile fails randomly in pushbuild
  - Change testcase to use remove_file

  mysql-test/t/outfile.test@1.15.1.2, 2007-05-09 10:52:26+02:00, msvensson@pilot.blaudden +6 -6
    Change "exec rm" to "remove_file"

ChangeSet@1.1616.3038.1, 2007-05-09 10:49:11+02:00, msvensson@pilot.blaudden +1 -0
  Bug #28193  	outfile fails randomly in pushbuild
   - Change "exec rm" to "remove_file"

  mysql-test/t/outfile.test@1.11.1.2, 2007-05-09 10:49:11+02:00, msvensson@pilot.blaudden +4 -4
    Change "exec rm" to "remove_file"

ChangeSet@1.2478, 2007-05-08 18:19:36-04:00, cmiller@zippy.cornsilk.net +1 -0
  Bug #23294: Detection of sem_xxx functions on NetBSD broken and \
  	DragonflyBSD misc patches
  
  The bug reporter anticipated a problem, instead of experiencing one.
  
  IRC conversation:
  <xtraeme> sem_init is defined in librt on NetBSD
  	solaris uses libposix4 iirc
  	that's why I sent a patch
  <chadmiller> xtraeme: Agreed.  But, AFAICT, mysql doesn't use 
  	sem_init() anywhere.  Thus my confusion.
  <xtraeme> I didn't verify that, but I saw that sem_init wasn't detected 
  	correctly...
  	why are you checking for sem_init if it's unused then? :-)
  <chadmiller> xtraeme: In recent autoconf scripts, we change it to test 
  	for sched_yield() .
  <xtraeme> that's ok then
  	sched_yield is in libc
  	feel free to close the bug report then :-)

  configure.in@1.444, 2007-05-08 18:19:34-04:00, cmiller@zippy.cornsilk.net +0 -3
    Remove useless test for sem_init() .

ChangeSet@1.2477, 2007-05-08 09:18:51-04:00, cmiller@zippy.cornsilk.net +1 -0
  Bug #23294: Detection of sem_xxx functions on NetBSD broken and \
  	DragonflyBSD misc patches
  
  Add the original intended test, since our current test for sched_yield
  is insufficient to copy.

  configure.in@1.443, 2007-05-08 09:18:49-04:00, cmiller@zippy.cornsilk.net +3 -0
    We can't check for sched_yield, as that is in libc on FBSD.
    
    Re-add the check for sem_init in librt.

ChangeSet@1.2433.12.2, 2007-05-08 17:04:56+05:00, bar@mysql.com +1 -0
  Fixing crash when compiled using -DNEW_HASH_FUNCTIONS
  (an experimental feature).

  heap/hp_hash.c@1.48, 2007-05-08 17:04:54+05:00, bar@mysql.com +17 -8
    Fixing crash when compiled using -DNEW_HASH_FUNCTIONS
    (an experimental feature).

ChangeSet@1.2433.5.5, 2007-05-08 11:24:07+02:00, thek@adventure.(none) +5 -0
  4.1 -> 5.0 Manual merge for Bug #27792 

  mysql-test/r/query_cache.result@1.78.1.2, 2007-05-08 11:24:05+02:00, thek@adventure.(none) +94 -0
    Added 5.0 testcase

  mysql-test/t/query_cache.test@1.59, 2007-05-08 11:24:05+02:00, thek@adventure.(none) +72 -0
    Added 5.0 test case

  sql/mysql_priv.h@1.445.1.3, 2007-05-08 11:24:05+02:00, thek@adventure.(none) +1 -0
    Added support for div_precision_increment

  sql/set_var.cc@1.183.1.2, 2007-05-08 11:24:05+02:00, thek@adventure.(none) +5 -0
    - Added query cache flush when system variable ft_boolean_syntax is
      updated since this also invalidates all cached result sets using this
      variable.

  sql/sql_cache.cc@1.101, 2007-05-08 11:24:05+02:00, thek@adventure.(none) +14 -5
    - Added the local system variable div_precision_increment as an identification flag
      for cached queries.

ChangeSet@1.1616.3037.1, 2007-05-08 09:09:25+02:00, thek@adventure.(none) +5 -0
  Bug #27792 query cache returns wrong result, with certain system variables
   - Queries in the query cache are identified by the individual 
     characters in the query statement, the current database and 
     the current environment expressed as a set of system variable
     flags.
   - Since the set of environment flags didn't properly describe the
     current environment unexpected results were returned from the 
     query cache.
   - Query cache is now cleared when the variable ft_boolean_syntax is 
     updated.
   - An identification flag for the variable default_week_format is 
     added to the query cache record.
   
  Thanks to Martin Friebe who has supplied significant parts of this patch.

  mysql-test/r/query_cache.result@1.26.1.37, 2007-05-08 09:09:24+02:00, thek@adventure.(none) +52 -0
    Added test case

  mysql-test/t/query_cache.test@1.24.1.25, 2007-05-08 09:09:24+02:00, thek@adventure.(none) +46 -0
    Added test case

  sql/mysql_priv.h@1.186.91.62, 2007-05-08 09:09:24+02:00, thek@adventure.(none) +1 -0
    - Added missing flags to reflect the significant local environment
      settings of the cached query.

  sql/set_var.cc@1.34.52.47, 2007-05-08 09:09:24+02:00, thek@adventure.(none) +6 -2
    - Added query cache flush when system variable ft_boolean_syntax is
      updated since this also invalidates all cached result sets using this
      variable.

  sql/sql_cache.cc@1.46.14.1, 2007-05-08 09:09:24+02:00, thek@adventure.(none) +2 -0
    - Added another local system variable as an identification flag
      for cached queries.

ChangeSet@1.2433.12.1, 2007-05-07 20:43:19-04:00, cbell@mysql_cab. +3 -0
  BUG#17233 : LOAD DATA INFILE: failure causes mysqld dbug_assert, binlog not flushed 
  
  This patch corrects a bug involving a LOAD DATA INFILE operation on a 
  transactional table. It corrects a problem in the error handler moving
  the transactional table check and autocommit_or_rollback operation to the 
  end of the error handler. An additional test case was added to detect this
  condition.

  mysql-test/r/rpl_loaddata.result@1.33, 2007-05-07 20:43:15-04:00, cbell@mysql_cab. +4 -0
    BUG#17233 : LOAD DATA INFILE: failure causes mysqld dbug_assert, binlog not flushed 
    
    This patch adds the results for the additional test for properly handling the
    duplicate key error on LOAD DATA INFILE.

  mysql-test/t/rpl_loaddata.test@1.25, 2007-05-07 20:43:15-04:00, cbell@mysql_cab. +12 -0
    BUG#17233 : LOAD DATA INFILE: failure causes mysqld dbug_assert, binlog not flushed 
    
    This patch adds an additional test to rpl_loaddata for handling the
    duplicate key error on LOAD DATA INFILE.

  sql/sql_load.cc@1.113, 2007-05-07 20:43:16-04:00, cbell@mysql_cab. +3 -3
    BUG#17233 : LOAD DATA INFILE: failure causes mysqld dbug_assert, binlog not flushed 
    
    This patch moves the check for a transactional table and rollback in the
    error handler for mysql_load(). The patch moves the transactional table
    check to the end of the error handler matching the implementation for other
    similar operations (see sql_insert).

ChangeSet@1.2472.1.2, 2007-05-07 12:38:43-04:00, cmiller@zippy.cornsilk.net +1 -0
  Fix new error message list in v5.

  mysql-test/r/repair.result@1.24, 2007-05-07 12:38:41-04:00, cmiller@zippy.cornsilk.net +1 -1
    New error listing in v5.

ChangeSet@1.2469.5.2, 2007-05-07 15:33:27+02:00, mikron@mikael-ronstr-ms-dator.local +3 -0
  New SCI Transporter Build scripts

  BUILD/Makefile.am@1.13, 2007-05-07 15:33:25+02:00, mikron@mikael-ronstr-ms-dator.local +2 -0
    New SCI Transporter Build scripts

  BUILD/compile-amd64-max-sci@1.1, 2007-05-07 15:32:25+02:00, mikron@mikael-ronstr-ms-dator.local +8 -0
    New SCI Transporter Build scripts

  BUILD/compile-amd64-max-sci@1.0, 2007-05-07 15:32:25+02:00, mikron@mikael-ronstr-ms-dator.local +0 -0

  BUILD/compile-pentium64-max-sci@1.1, 2007-05-07 15:32:18+02:00, mikron@mikael-ronstr-ms-dator.local +9 -0
    New SCI Transporter Build scripts

  BUILD/compile-pentium64-max-sci@1.0, 2007-05-07 15:32:18+02:00, mikron@mikael-ronstr-ms-dator.local +0 -0

ChangeSet@1.2469.5.1, 2007-05-07 15:25:24+02:00, mikron@mikael-ronstr-ms-dator.local +5 -0
  Fix SCI Transporter

  config/ac-macros/ha_ndbcluster.m4@1.10, 2007-05-07 15:23:45+02:00, mikron@mikael-ronstr-ms-dator.local +1 -1
    Fix SCI Transporter build part

  libmysqld/Makefile.am@1.74, 2007-05-07 15:23:45+02:00, mikron@mikael-ronstr-ms-dator.local +1 -1
    Fix SCI Transporter build part

  libmysqld/examples/Makefile.am@1.35, 2007-05-07 15:23:45+02:00, mikron@mikael-ronstr-ms-dator.local +2 -1
    Fix SCI Transporter build part

  ndb/src/common/transporter/SCI_Transporter.cpp@1.11, 2007-05-07 15:23:46+02:00, mikron@mikael-ronstr-ms-dator.local +47 -169
    Fix SCI Transporter

  ndb/src/common/transporter/SCI_Transporter.hpp@1.7, 2007-05-07 15:23:46+02:00, mikron@mikael-ronstr-ms-dator.local +3 -15
    Fix SCI Transporter

ChangeSet@1.2433.10.1, 2007-05-07 10:23:10+02:00, thek@adventure.(none) +4 -0
  Bug#26977 exception handlers never hreturn
    - In some cases, flow control optimization implemented in sp::optimize
      removes hreturn instructions, causing SQL exception handlers to:
        * never return
        * execute wrong logic
    - This patch overrides default short cut optimization on hreturn instructions
      to avoid this problem.

  mysql-test/r/sp-code.result@1.11, 2007-05-07 10:23:08+02:00, thek@adventure.(none) +113 -0
    Added test case

  mysql-test/t/sp-code.test@1.7, 2007-05-07 10:23:09+02:00, thek@adventure.(none) +75 -0
    Added test case

  sql/sp_head.cc@1.244, 2007-05-07 10:23:09+02:00, thek@adventure.(none) +13 -3
    Override opt_mark to get correct execution paths without jump short cut 
    optimization.

  sql/sp_head.h@1.98, 2007-05-07 10:23:09+02:00, thek@adventure.(none) +6 -0
    Added override sp_instr_hreturn::opt_shortcut_jump so that jump short cuts aren't
    performed on hreturn instructions operating on handlers which are set to CONTINUE
    after interruption.

ChangeSet@1.1616.3035.1, 2007-05-04 17:38:29-04:00, cmiller@zippy.cornsilk.net +2 -0
  Bug #27976: Misleading error message, 'Sort buffer to small'
  
  The message is gramatically wrong, and factually wrong.
  
  Change it to refer to the myisam_sort_buffer_size variable and change
  "to" to "too".

  myisam/sort.c@1.35.1.16, 2007-05-04 17:38:28-04:00, cmiller@zippy.cornsilk.net +4 -4
    Change error messages to be gramatically correct and to refer to the
    correct variable.

  mysql-test/r/repair.result@1.14.1.7, 2007-05-04 17:38:28-04:00, cmiller@zippy.cornsilk.net +1 -1
    Refer to the correct variable.  Message changed.

ChangeSet@1.1616.3034.1, 2007-05-04 13:17:07-04:00, cmiller@zippy.cornsilk.net +1 -0
  Bug #27173: "Enabling keys got errno ..." does not say which table
  
  Warnings may show up in the error log that complain about a table, yet
  don't tell us which table.
  
  Add the database and table names to the message.

  sql/ha_myisam.cc@1.115.1.53, 2007-05-04 13:17:06-04:00, cmiller@zippy.cornsilk.net +4 -4
    Add the database and table names to the warning message.

ChangeSet@1.2472, 2007-05-02 12:41:36-04:00, iggy@recycle.(none) +1 -0
  Minor fix.

  scripts/CMakeLists.txt@1.4, 2007-05-02 12:41:34-04:00, iggy@recycle.(none) +12 -2
    Fix broken bk native builds.

ChangeSet@1.2471, 2007-05-02 14:25:11+02:00, msvensson@pilot.blaudden +1 -0
  Bug#27994 Expose counter for stored procedure calls in Com_% status
   - Expose the already existing counter for number of stored procedure calls

  sql/mysqld.cc@1.609, 2007-05-02 14:25:09+02:00, msvensson@pilot.blaudden +1 -0
    Expose counter for "Com_call_procedure"

ChangeSet@1.1616.3025.6, 2007-04-28 14:37:40+05:00, svoj@mysql.com +3 -0
  BUG#27998 - mysqld crashed when executing INSERT DELAYED
              on a BLACKHOLE table
  
  Using INSERT DELAYED on BLACKHOLE tables could lead to server
  crash.
  
  This happens because delayed thread wants to upgrade a lock,
  but BLACKHOLE tables do not have locks at all.
  
  This patch rejects attempts to use INSERT DELAYED on MERGE
  tables.

  mysql-test/r/blackhole.result@1.2.1.3, 2007-04-28 14:37:39+05:00, svoj@mysql.com +4 -0
    A test case for BUG#27998.

  mysql-test/t/blackhole.test@1.4.1.1, 2007-04-28 14:37:39+05:00, svoj@mysql.com +9 -0
    A test case for BUG#27998.

  sql/ha_blackhole.h@1.3.1.3, 2007-04-28 14:37:39+05:00, svoj@mysql.com +1 -2
    Removed HA_CAN_INSERT_DELAYED flag from table_flags().
    The insert delayed thread upgrades the lock. Hence it is
    incapable to handle BLACKHOLE tables, which do not have
    locks at all.

ChangeSet@1.2433.5.3, 2007-04-27 17:14:25-06:00, malff@weblab.(none) +5 -0
  Bug#21513 (SP having body starting with quoted label rendered unusable)
  
  Before this fix, the parser would sometime change where a token starts by
  altering Lex_input_string::tok_start, which later confused the code in
  sql_yacc.yy that needs to capture the source code of a SQL statement,
  like to represent the body of a stored procedure.
  
  This line of code in sql_lex.cc :
  
  case MY_LEX_USER_VARIABLE_DELIMITER:
    lip->tok_start= lip->ptr; // Skip first `
  
  would <skip the first back quote> ... and cause the bug reported.
  
  In general, the responsibility of sql_lex.cc is to *find* where token are
  in the SQL text, but is *not* to make up fake or incomplete tokens.
  With a quoted label like `my_label`, the token starts on the first quote.
  Extracting the token value should not change that (it did).
  
  With this fix, the lexical analysis has been cleaned up to not change
  lip->tok_start (in the case found for this bug).
  
  The functions get_token() and get_quoted_token() now have an extra
  parameters, used when some characters from the beginning of the token need
  to be skipped when extracting a token value, like when extracting 'AB' from
  '0xAB', for example, for a HEX_NUM token.
  
  This exposed a bad assumption in Item_hex_string and Item_bin_string,
  which has been fixed:
  
  The assumption was that the string given, 'AB', was in fact preceded in
  memory by '0x', which might be false (it can be preceded by "x'" and
  followed by "'" -- or not be preceded by valid memory at all)
  
  If a name is needed for Item_hex_string or Item_bin_string, the name is
  taken from the original and true source code ('0xAB'), and assigned in
  the select_item rule, instead of relying on assumptions related to how
  memory is used.

  mysql-test/r/sp.result@1.227, 2007-04-27 17:14:22-06:00, malff@weblab.(none) +7 -0
    Lex_input_stream::tok_start must point at the real start of a token.

  mysql-test/t/sp.test@1.216.1.1, 2007-04-27 17:14:22-06:00, malff@weblab.(none) +11 -0
    Lex_input_stream::tok_start must point at the real start of a token.

  sql/item.cc@1.262.2.1, 2007-04-27 17:14:22-06:00, malff@weblab.(none) +0 -2
    Lex_input_stream::tok_start must point at the real start of a token.

  sql/sql_lex.cc@1.218.1.3, 2007-04-27 17:14:23-06:00, malff@weblab.(none) +30 -34
    Lex_input_stream::tok_start must point at the real start of a token.

  sql/sql_yacc.yy@1.516, 2007-04-27 17:14:23-06:00, malff@weblab.(none) +8 -6
    Lex_input_stream::tok_start must point at the real start of a token.

ChangeSet@1.2457.4.1, 2007-04-27 15:33:48+02:00, msvensson@pilot.blaudden +2 -0
  Remove dangerous "remove warning" hack, cast to long
  will truncate the time value on systems where "long" are 32bit,
  instead use time_t as datatype
    

  sql/log.cc@1.210, 2007-04-27 15:33:46+02:00, msvensson@pilot.blaudden +1 -1
    Remove dangerous "remove warning" hack, cast to long
    will truncate the time value on systems where "long" are 32bit,
    instead use time_t as datatype
      

  sql/mysqld.cc@1.608, 2007-04-27 15:33:46+02:00, msvensson@pilot.blaudden +1 -1
    Remove dangerous "remove warning" hack, cast to long
    will truncate the time value on systems where "long" are 32bit,
    instead use time_t as datatype
      

ChangeSet@1.2433.5.2, 2007-04-25 11:38:11-06:00, malff@weblab.(none) +3 -0
  code review fix

  sql/sql_lex.cc@1.218.1.2, 2007-04-25 11:38:08-06:00, malff@weblab.(none) +3 -3
    code review fix

  sql/sql_lex.h@1.244, 2007-04-25 11:38:08-06:00, malff@weblab.(none) +4 -1
    code review fix

  sql/sql_parse.cc@1.617.1.2, 2007-04-25 11:38:09-06:00, malff@weblab.(none) +5 -4
    code review fix

ChangeSet@1.2425.69.1, 2007-04-24 09:24:21-06:00, malff@weblab.(none) +16 -0
  Bug#25411 (trigger code truncated), PART I
  
  The issue found with bug 25411 is due to the function skip_rear_comments()
  which damages the source code while implementing a work around.
  The root cause of the problem is in the lexical analyser, which does not
  process special comments properly.
  For special comments like :
  [1] aaa /*!50000 bbb */ ccc
  since 5.0 is a version older that the current code, the parser is in lining
  the content of the special comment, so that the query to process is
  [2] aaa bbb ccc
  However, the text of the query captured when processing a stored procedure,
  stored function or trigger (or event in 5.1), can be after rebuilding it:
  [3] aaa bbb */ ccc
  which is wrong.
  
  To fix bug 25411 properly, the lexical analyser needs to return [2] when
  in lining special comments.
  In order to implement this, some preliminary cleanup is required in the code,
  which is implemented by this patch.
  
  Before this change, the structure named LEX (or st_lex) contains attributes
  that belong to lexical analysis, as well as attributes that represents the
  abstract syntax tree (AST) of a statement.
  Creating a new LEX structure for each statements (which makes sense for the
  AST part) also re-initialized the lexical analysis phase each time, which
  is conceptually wrong.
  
  With this patch, the previous st_lex structure has been split in two:
  - st_lex represents the Abstract Syntax Tree for a statement. The name "lex"
  has not been changed to avoid a bigger impact in the code base.
  - class lex_input_stream represents the internal state of the lexical
    analyser, which by definition should *not* be reinitialized when parsing
    multiple statements from the same input stream.
  
  This change is a pre-requisite for bug 25411, since the implementation of
  lex_input_stream will later improve to deal properly with special comments,
  and this processing can not be done with the current implementation of
  sp_head::reset_lex and sp_head::restore_lex, which interfere with the lexer.
  
  This change set alone does not fix bug 25411.

  sql/item_func.cc@1.331.2.1, 2007-04-24 09:24:18-06:00, malff@weblab.(none) +1 -1
    Refactoring, separate lex_input_stream from st_lex.

  sql/log_event.cc@1.230.1.1, 2007-04-24 09:24:18-06:00, malff@weblab.(none) +6 -3
    Refactoring, separate lex_input_stream from st_lex.

  sql/mysql_priv.h@1.440.4.1, 2007-04-24 09:24:18-06:00, malff@weblab.(none) +4 -2
    Refactoring, separate lex_input_stream from st_lex.

  sql/slave.cc@1.296.2.1, 2007-04-24 09:24:18-06:00, malff@weblab.(none) +2 -1
    Refactoring, separate lex_input_stream from st_lex.

  sql/sp.cc@1.128.1.1, 2007-04-24 09:24:18-06:00, malff@weblab.(none) +7 -2
    Refactoring, separate lex_input_stream from st_lex.

  sql/sp_head.cc@1.239.1.2, 2007-04-24 09:24:18-06:00, malff@weblab.(none) +9 -22
    Refactoring, separate lex_input_stream from st_lex.

  sql/sp_head.h@1.97, 2007-04-24 09:24:18-06:00, malff@weblab.(none) +4 -2
    Refactoring, separate lex_input_stream from st_lex.

  sql/sql_class.cc@1.267.2.1, 2007-04-24 09:24:18-06:00, malff@weblab.(none) +1 -1
    Refactoring, separate lex_input_stream from st_lex.

  sql/sql_class.h@1.327.1.1, 2007-04-24 09:24:18-06:00, malff@weblab.(none) +10 -0
    Refactoring, separate lex_input_stream from st_lex.

  sql/sql_lex.cc@1.217.1.1, 2007-04-24 09:24:18-06:00, malff@weblab.(none) +160 -141
    Refactoring, separate lex_input_stream from st_lex.

  sql/sql_lex.h@1.241.1.1, 2007-04-24 09:24:19-06:00, malff@weblab.(none) +55 -15
    Refactoring, separate lex_input_stream from st_lex.

  sql/sql_parse.cc@1.612.3.1, 2007-04-24 09:24:19-06:00, malff@weblab.(none) +70 -33
    Refactoring, separate lex_input_stream from st_lex.

  sql/sql_prepare.cc@1.197.1.1, 2007-04-24 09:24:19-06:00, malff@weblab.(none) +6 -2
    Refactoring, separate lex_input_stream from st_lex.

  sql/sql_trigger.cc@1.66, 2007-04-24 09:24:19-06:00, malff@weblab.(none) +6 -2
    Refactoring, separate lex_input_stream from st_lex.

  sql/sql_view.cc@1.105.3.1, 2007-04-24 09:24:19-06:00, malff@weblab.(none) +9 -5
    Refactoring, separate lex_input_stream from st_lex.

  sql/sql_yacc.yy@1.515, 2007-04-24 09:24:19-06:00, malff@weblab.(none) +108 -63
    Refactoring, separate lex_input_stream from st_lex.

ChangeSet@1.2294.56.1, 2006-12-12 09:43:12-05:00, cmiller@zippy.cornsilk.net +1 -0
  Bug#23294: Detection of sem_xxx functions on NetBSD broken and DragonflyBSD \
  	misc patches
  
  Patch from community member Juan RP.  "dragonfly" os name should be synonymous
  with netbsd and sem_* functions may also be found in librt.

  configure.in@1.407.1.6, 2006-12-12 09:43:11-05:00, cmiller@zippy.cornsilk.net +4 -2
    Detect OS name of DragonFlyBSD.
    
    Search for semaphor functions in librt also.

