1. 13 Dec, 2008 2 commits
    • Timothy Smith's avatar
      r2629 | inaam | 2008-09-16 18:46:00 +0300 (Tue, 16 Sep 2008) | 9 lines · 879254e9
      Timothy Smith authored
      branches/5.0   bug#39483 InnoDB hang on adaptive hash because of out
      of order ::open() call by MySQL
      
      Under some conditions MySQL calls ::open with search_latch leading
      to a deadlock as we try to acquire dict_sys->mutex inside ::open
      breaking the latching order. The fix is to release search_latch.
      
      Reviewed by: Heikki
      879254e9
    • Timothy Smith's avatar
      Apply 3 patches from innodb-5.0-ss2637. · 955d8184
      Timothy Smith authored
      This fixes Bug#36149: Read buffer overflow in srv0start.c found during "make
      test"
      
      Per-revision comments:
      
      r2484 | vasil | 2008-05-28 15:32:48 +0300 (Wed, 28 May 2008) | 9 lines
      
      Fix Bug#36149 Read buffer overflow in srv0start.c found during "make test"
      
      Use strncmp(3) instead of memcmp(3) to avoid reading past end of the string
      if it is empty (*str == '\0'). This bug is _not_ a buffer overflow.
      
      Discussed with:	Sunny (via IM)
      
      r2538 | inaam | 2008-07-15 21:24:02 +0300 (Tue, 15 Jul 2008) | 15 lines
      
      Fix of issue# 4
      
      Fixed a timing hole where a thread dropping an index can free the
      in-memory index struct while another thread is still using
      that structure to remove entries from adaptive hash index belonging
      to one of the pages that belongs to the index being dropped.
      
      The fix is to have a reference counter in the index struct and to
      wait for this counter to drop to zero beforing freeing the struct.
      
      Reviewed by: Heikki
      
      
      r2544 | inaam | 2008-07-22 18:58:11 +0300 (Tue, 22 Jul 2008) | 8 lines
      
      Removed UNIV_INLINE qualifier from btr_search_info_get_ref_count().
      Otherwise compilation failed on non-debug builds.
      
      Pointed by: Vasil
      955d8184
  2. 12 Dec, 2008 1 commit
    • Timothy Smith's avatar
      Apply the rest of innodb-5.0-ss2475. This fixes Bug#36819, "ut_usectime does · dbb060b2
      Timothy Smith authored
      not handle errors from gettimeofday".
      
      r2475 | vasil | 2008-05-22 19:35:30 +0300 (Thu, 22 May 2008) | 13 lines
      
      Fix by retrying gettimeofday() several times if it fails in ut_usectime().
      If it fails on all calls then return error to the caller to be handled
      at higher level.
      
      Update the variable innodb_row_lock_time_max in SHOW STATUS output only
      if ut_usectime() was successful.
      dbb060b2
  3. 10 Dec, 2008 6 commits
  4. 09 Dec, 2008 11 commits
  5. 08 Dec, 2008 4 commits
  6. 05 Dec, 2008 1 commit
  7. 04 Dec, 2008 2 commits
    • Andrei Elkin's avatar
      Bug #33420 Test 'rpl_packet' fails randomly with changed "Exec_Master_Log_Pos" · 8425ef46
      Andrei Elkin authored
      Bug #41173 rpl_packet fails sporadically on pushbuild: query 'DROP TABLE t1' failed
      
      
      The both issues appeared to be a race between the SQL thread executing CREATE table t1
      and the IO thread that is expected to stop at the consequent big size event.
      The two events need serialization which is implemented.
      The early bug required back-porting a part fixes for bug#38350 exclusively for 5.0 version.
      
      
      
      mysql-test/r/rpl_packet.result:
        results changed due to bug#33420, bug#41173.
      mysql-test/t/rpl_packet.test:
        adding synchronization for sql and io thread (bug#41173 problem).
        simplifying the output to show only a relevant info (5.0 sole problem bug#33420).
      8425ef46
    • Luis Soares's avatar
      BUG#38826 Race in MYSQL_LOG::purge_logs is impossible to debug in production · abeed3f8
      Luis Soares authored
      BUG#39325 Server crash inside MYSQL_LOG::purge_first_log halts replicaiton
      
      The patch reverses the order of the purging and updating events for log and relay-log.info/index files respectively.
      This solves the problem of having holes caused by crashes happening between updating info/index files and purging logs.
      
      NOTE: This is a combined patch for BUG#38826 and BUG#39325. This patch is based on bugteam tree and takes into account reviewers suggestions.
      abeed3f8
  8. 03 Dec, 2008 3 commits
    • Alexey Kopytov's avatar
      Fix for bug #27483: Casting 'scientific notation type' to 'unsigned · 7aa1074c
      Alexey Kopytov authored
                          bigint' fails on windows.
      
      Visual Studio does not take into account some x86 hardware limitations
      which leads to incorrect results when converting large DOUBLE values
      to BIGINT UNSIGNED ones.
      
      Fixed by adding a workaround for double->ulonglong conversion on
      Windows.
      
      
      include/config-win.h:
        Added double2ulonglong(double) function implementing a workaround for
        broken double->ulonglong conversion on Windows/x86.
      include/my_global.h:
        Define double2ulonglong() as a simple typecast for anything but
        Windows.
      mysql-test/r/type_float.result:
        Added a test case for bug #27483.
      mysql-test/t/type_float.test:
        Added a test case for bug #27483.
      7aa1074c
    • V Narayanan's avatar
      merging with mysql-5.0-bugteam tree. · f10beb43
      V Narayanan authored
      f10beb43
    • unknown's avatar
      Raise version number after cloning 5.0.74 · 0e559993
      unknown authored
      0e559993
  9. 02 Dec, 2008 1 commit
  10. 01 Dec, 2008 6 commits
    • Georgi Kodinov's avatar
    • Georgi Kodinov's avatar
      merged 5.0-main into 5.0-bugteam · b5256ebb
      Georgi Kodinov authored
      b5256ebb
    • Georgi Kodinov's avatar
      merged bug 39920 to 5.0-bugteam · 4123461d
      Georgi Kodinov authored
      4123461d
    • Georgi Kodinov's avatar
      Bug #39920: MySQL cannot deal with Leap Second expression in string literal. · 4a10c789
      Georgi Kodinov authored
                        
      Updated MySQL time handling code to react correctly on UTC leap second additions.
      MySQL functions that return the OS current time, like e.g. CURDATE(), NOW() etc
      will return :59:59 instead of :59:60 or 59:61.
      As a result the reader will receive :59:59 for 2 or 3 consecutive seconds 
      during the leap second.
      This fix will not affect the values returned by UNIX_TIMESTAMP() for leap seconds.
      But note that when converting the value returned by UNIX_TIMESTAMP() to broken 
      down time the correction of leap seconds will still be applied.
      Note that this fix will make a difference *only* if the OS is specially configured
      to return leap seconds from the OS time calls or when using a MySQL time zone 
      defintion that has leap seconds.
      Even after this change date/time literals (or other broken down time 
      representations) with leap seconds (ending on :59:60 or 59:61) will still be 
      considered illegal and discarded by the server with an error or 
      a warning depending on the sql mode.
      Added a test case to demonstrate the effect of the fix.
      
      mysql-test/r/timezone3.result:
        Bug #39920: test case
      mysql-test/std_data/Moscow_leap:
        Bug #39920: updated the Moscow time zone to Dr. Olson's tzdata 2008i 
        to accomodate for the 2008 leap second
      mysql-test/t/timezone3.test:
        Bug #39920: test case
      sql/tztime.cc:
        Bug #39920: adjust leap seconds (:60 or :61) to :59
      sql/tztime.h:
        Bug #39920: adjust leap seconds (:60 or :61) to :59
      4a10c789
    • Georgi Kodinov's avatar
      Addendum to bug #37339 : make the test case portable to windows · 3c53e76e
      Georgi Kodinov authored
      by using and taking out a full path.
      
      mysql-test/r/ctype_filesystem.result:
        Bug #37399: use MYSQL_TEST_DIR rooted test
      mysql-test/t/ctype_filesystem-master.opt:
        Bug #37399: use MYSQL_TEST_DIR rooted test
      mysql-test/t/ctype_filesystem.test:
        Bug #37399: use MYSQL_TEST_DIR rooted test
      3c53e76e
    • Gleb Shchepa's avatar
      After-push commit for bug #33461 to make valgrind happy: · a9384a07
      Gleb Shchepa authored
      TABLE_LIST doesn't free Strings in its string lists
      (TABLE_LIST::use_index and TABLE_liST::ignore_index), so
      calling c_ptr_safe() on that Strings leads to memleaks.
      OTOH "safe" c_ptr_safe() is not necessary there and we can
      replace it with c_ptr().
      a9384a07
  11. 28 Nov, 2008 3 commits
    • Matthias Leich's avatar
      Merge of last pushes into GCA tree, no conflicts · 3ef2c733
      Matthias Leich authored
      Diff to actual 5.0-bugteam is revno: 2725 only
      3ef2c733
    • Gleb Shchepa's avatar
      Bug #33461: SELECT ... FROM <view> USE INDEX (...) throws · 854ef1be
      Gleb Shchepa authored
                  an error
      
      Even after the fix for bug 28701 visible behaviors of
      SELECT FROM a view and SELECT FROM a regular table are
      little bit different:
      
      1. "SELECT FROM regular table USE/FORCE/IGNORE(non
         existent index)" fails with a "ERROR 1176 (HY000):
         Key '...' doesn't exist in table '...'"
      
      2. "SELECT FROM view USING/FORCE/IGNORE(any index)" fails
         with a "ERROR 1221 (HY000): Incorrect usage of
         USE/IGNORE INDEX and VIEW".  OTOH "SHOW INDEX FROM
         view" always returns empty result set, so from the point
         of same behaviour view we trying to use/ignore non
         existent index.
      
      To harmonize the behaviour of USE/FORCE/IGNORE(index)
      clauses in SELECT from a view and from a regular table the
      "ERROR 1221 (HY000): Incorrect usage of USE/IGNORE INDEX
      and VIEW" message has been replaced with the "ERROR 1176
      (HY000): Key '...' doesn't exist in table '...'" message
      like for tables and non existent keys.
      
      
      mysql-test/r/view.result:
        Added test case for bug #33461.
        Updated test case for bug 28701.
      mysql-test/t/view.test:
        Added test case for bug #33461.
        Updated test case for bug 28701.
      sql/sql_view.cc:
        Bug #33461: SELECT ... FROM <view> USE INDEX (...) throws
                    an error
        
        To harmonize the behaviour of USE/FORCE/IGNORE(index)
        clauses in SELECT from a view and from a regular table the
        "ERROR 1221 (HY000): Incorrect usage of USE/IGNORE INDEX
        and VIEW" message has been replaced with the "ERROR 1176
        (HY000): Key '...' doesn't exist in table '...'" message
        like for tables and non existent keys.
      854ef1be
    • Georgi Kodinov's avatar
      merged bug 37339 to 5.0-bugteam · 42624db0
      Georgi Kodinov authored
      42624db0