1. 20 Aug, 2007 2 commits
  2. 17 Aug, 2007 1 commit
  3. 16 Aug, 2007 1 commit
  4. 15 Aug, 2007 3 commits
    • unknown's avatar
      Fixed bug #30396. · 42a6a150
      unknown authored
      The bug caused memory corruption for some queries with top OR level
      in the WHERE condition if they contained equality predicates and 
      other sargable predicates in disjunctive parts of the condition.
      
      The corruption happened because the upper bound of the memory
      allocated for KEY_FIELD and SARGABLE_PARAM internal structures
      containing info about potential lookup keys was calculated incorrectly
      in some cases. In particular it was calculated incorrectly when the
      WHERE condition was an OR formula with disjuncts being AND formulas
      including equalities and other sargable predicates.
      
      
      mysql-test/r/select.result:
        Added a test case for bug #30396.
      mysql-test/t/select.test:
        Added a test case for bug #30396.
      sql/item_cmpfunc.h:
        Removed max_members from the COND_EQUAL class as not useful anymore.
      sql/sql_base.cc:
        Added the max_equal_elems field to the st_select_lex structure.
      sql/sql_lex.cc:
        Added the max_equal_elems field to the st_select_lex structure.
      sql/sql_lex.h:
        Added the max_equal_elems field to the st_select_lex structure.
        The field contains the maximal number of elements in multiple equalities
        built for the query conditions.
      sql/sql_select.cc:
        Fixed bug #30396.
        The bug caused memory corruption for some queries with top OR level
        in the WHERE condition if they contained equality predicates and 
        other sargable predicates in disjunctive parts of the condition.
        
        The corruption happened because the upper bound of the memory
        allocated for KEY_FIELD and SARGABLE_PARAM internal structures
        containing info about potential lookup keys was calculated incorrectly
        in some cases. In particular it was calculated incorrectly when the
        WHERE condition was an OR formula with disjuncts being AND formulas
        including equalities and other sargable predicates.
         
        The max_equal_elems field to the st_select_lex structure is used now
        to calculate the above mentioned upper bound. The field contains the
        maximal number of elements in multiple equalities built for the query
        conditions.
      42a6a150
    • unknown's avatar
      mysql_client_test.c: · de02dc9e
      unknown authored
        Post fix for the bug#29948.
      
      
      tests/mysql_client_test.c:
        Post fix for the bug#29948.
      de02dc9e
    • unknown's avatar
      bug#28570: handler::index_read() is called with different find_flag when · 546c7fcf
      unknown authored
      ORDER BY is used
      
      The range analysis module did not correctly signal to the 
      handler that a range represents a ref (EQ_RANGE flag). This causes 
      non-range queries like 
      SELECT ... FROM ... WHERE keypart_1=const, ..., keypart_n=const 
      ORDER BY ... FOR UPDATE
      to wait for a lock unneccesarily if another running transaction uses
      SELECT ... FOR UPDATE on the same table.
      
      Fixed by setting EQ_RANGE for all range accesses that represent 
      an equality predicate. 
      
      
      mysql-test/r/innodb_mysql.result:
        bug#28570: Test Result
      mysql-test/t/innodb_mysql.test:
        bug#28570: Test Case
      sql/handler.cc:
        bug#28570: Updated comment
      sql/opt_range.cc:
        bug#28570: Removed the criterion that key has to be unique (HA_NOSAME) in 
        order for the EQ_RANGE flag to be set. It is sufficient that the range 
        represent a ref access.
      546c7fcf
  5. 14 Aug, 2007 3 commits
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · a6f05979
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/29948-bug-5.0-opt-mysql
      
      
      tests/mysql_client_test.c:
        Manually merged
      a6f05979
    • unknown's avatar
      Bug#29948: Unchecked NULL pointer caused server crash. · 76a59b0b
      unknown authored
      The cli_read_binary_rows function is used to fetch data from the server
      after a prepared statement execution. It accepts a statement handler and gets
      the connection handler from it. But when the auto-reconnect option is set
      the connection handler is reset to NULL after reconnection because the
      prepared statement is lost and the handler became useless. This case
      wasn't checked in the cli_read_binary_rows function and caused server crash.
      
      Now the cli_read_binary_rows function checks the connection handler to be
      not NULL and returns an error if it is.
      
      
      tests/mysql_client_test.c:
        Added a test case for the bug#29948: Unchecked NULL pointer caused server crash.
      libmysql/libmysql.c:
        Bug#29948: Unchecked NULL pointer caused server crash.
        Now the cli_read_binary_rows function checks the connection handler to be
        not NULL and returns an error if it is.
      76a59b0b
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.0 · 8ef0024e
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      8ef0024e
  6. 13 Aug, 2007 3 commits
  7. 10 Aug, 2007 1 commit
  8. 08 Aug, 2007 1 commit
  9. 06 Aug, 2007 8 commits
  10. 05 Aug, 2007 8 commits
    • unknown's avatar
      mysql-test-run.pl: · e5732fa6
      unknown authored
        Search "relwithdebinfo" directory in CMake Visual Studio build
        Search for "mysqld-debug" even in source tree
      
      
      mysql-test/mysql-test-run.pl:
        Search "relwithdebinfo" directory in CMake Visual Studio build
        Search for "mysqld-debug" even in source tree
      e5732fa6
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · d18c10ae
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug30219
      
      d18c10ae
    • unknown's avatar
      Fix bug #30219. · efead19a
      unknown authored
      This bug manifested itself for queries with grouping by columns of
      the BIT type. It led to wrong comparisons of bit-field values and
      wrong result sets.
      Bit-field values never cannot be compared as binary values. Yet
      the class Field_bit had an implementation of the cmp method that
      compared bit-fields values as binary values. 
      Also the get_image and set_image methods of the base class Field 
      cannot be used for objects of the Field_bit class. 
      Now these methods are declared as virtual and specific implementations
      of the methods are provided for the class Field_bit.
      
      
      mysql-test/r/type_bit.result:
        Added a test case for bug #30219.
      mysql-test/t/type_bit.test:
        Added a test case for bug #30219.
      sql/field.h:
        Fix bug #30219.
        This bug manifested itself for queries with grouping by columns of
        the BIT type. It led to wrong comparisons of bit-field values and
        wrong result sets.
        Bit-field values never cannot be compared as binary values. Yet
        the class Field_bit had an implementation of the cmp method that
        compared bit-fields values as binary values.
        Also the get_image and set_image methods of the base class Field
        cannot be used for objects of the Field_bit class. 
        Now these methods are declared as virtual and specific implementations
        of these methods are provided for the class Field_bit.
      efead19a
    • unknown's avatar
      Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-build · e2c55e92
      unknown authored
      into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
      
      e2c55e92
    • unknown's avatar
      Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0 · 2d01601d
      unknown authored
      into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
      
      2d01601d
    • unknown's avatar
      Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1 · 7ea0834d
      unknown authored
      into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-build
      
      7ea0834d
    • unknown's avatar
      Fix for bug #21281 "Pending write lock is incorrectly removed when its · ca85e964
      unknown authored
      statement being KILLed".
      
      When statement which was trying to obtain write lock on then table and
      which was blocked by existing read lock was killed, concurrent statements
      that were trying to obtain read locks on the same table and that were
      blocked by the presence of this pending write lock were not woken up and
      had to wait until this first read lock goes away.
      
      This problem was caused by the fact that we forgot to wake up threads
      which pending requests could have been satisfied after removing lock
      request for the killed thread.
      
      The patch solves the problem by waking up those threads in such situation.
      
      Test for this bug will be added to 5.1 only as it has much better
      facilities for its implementation. Particularly, by using I_S.PROCESSLIST
      and wait_condition.inc script we can wait until thread will be blocked on
      certain table lock without relying on unconditional sleep (which usage
      increases time needed for test runs and might cause spurious test
      failures on slower platforms).
      
      
      mysys/thr_lock.c:
        After removing lock request from the list of waiting lock requests
        (e.g. when we discover that current thread was killed) we should
        wake up other threads waiting for the same lock which pending
        requests now can be satisfied. To implement this behavior we
        move code responsible for waking up threads which pending requests
        can be satisfied from thr_unlock() to new wake_up_waiters() procedure
        and use it in wait_for_lock() and hr_abort_locks_for_thread().
      ca85e964
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0 · 75b3fc8a
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-merge
      
      
      sql/mysqld.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      75b3fc8a
  11. 04 Aug, 2007 2 commits
  12. 03 Aug, 2007 7 commits
    • unknown's avatar
      CMakeLists.txt: · 257a5e0f
      unknown authored
        Removed space between '-D' and symbol
      
      
      CMakeLists.txt:
        Removed space between '-D' and symbol
      257a5e0f
    • unknown's avatar
      CMakeLists.txt, README, configure.js · 910e6b2b
      unknown authored
        Several adjustments to make client libraries pass the link test
        on both win32 and winx64, Visual Studio 2003 and 2005 (bug#30118)
      
      
      win/README:
        - Removed references to PARTITION engine, 5.1 only
      win/configure.js:
        - Removed references to PARTITION engine, 5.1 only
      extra/CMakeLists.txt:
        Use the special 'debug' list element to mark that "dbug" library
        is only to be linked against if build type "Debug".
      myisam/CMakeLists.txt:
        Use the special 'debug' list element to mark that "dbug" library
        is only to be linked against if build type "Debug".
      scripts/CMakeLists.txt:
        Use the special 'debug' list element to mark that "dbug" library
        is only to be linked against if build type "Debug".
      server-tools/instance-manager/CMakeLists.txt:
        Use the special 'debug' list element to mark that "dbug" library
        is only to be linked against if build type "Debug".
      sql/CMakeLists.txt:
        Use the special 'debug' list element to mark that "dbug" library
        is only to be linked against if build type "Debug".
      mysys/CMakeLists.txt:
        Restored include path to "mysys" itself
      dbug/CMakeLists.txt:
        Changed to optionally be included to give a file list only
      extra/yassl/CMakeLists.txt:
        Changed to optionally be included to give a file list only
      extra/yassl/taocrypt/CMakeLists.txt:
        Changed to optionally be included to give a file list only
      zlib/CMakeLists.txt:
        Changed to optionally be included to give a file list only
      libmysql/CMakeLists.txt:
        For compatibility with Visual Studio 2005, list all files that are to
        be part of the library build, i.e. libraries can't be built from other
        libraries. Set SOURCE_SUBLIBS and include the file listings from
        "zlib", "dbug", "taocrypt" and "yassl"
      910e6b2b
    • unknown's avatar
      Merge mkindahl@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl · ccd663f6
      unknown authored
      into  dl145h.mysql.com:/data0/mkindahl/mysql-5.0-2team
      
      
      mysql-test/r/func_time.result:
        Auto merged
      mysql-test/t/func_time.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/sql_lex.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      ccd663f6
    • unknown's avatar
      .del-readme.txt-grumble-grumble: · 134a9ef2
      unknown authored
        Rename: BitKeeper/deleted/.del-readme.txt -> BitKeeper/deleted/.del-readme.txt-grumble-grumble
      
      
      BitKeeper/deleted/.del-readme.txt-grumble-grumble:
        Rename: BitKeeper/deleted/.del-readme.txt -> BitKeeper/deleted/.del-readme.txt-grumble-grumble
      134a9ef2
    • unknown's avatar
      Bug #25228: rpl_relayspace.test fails on powermacg5, vm-win2003-32-a · 11cf193b
      unknown authored
      A test case was waiting for a fixed number of seconds for a specific 
      state of the slave IO thread to take place.
      Fixed by waiting in a loop for that specific thread state instead 
      (or timeout).
      
      
      mysql-test/t/rpl_relayspace.test:
        Bug #25228: fixed test case
      11cf193b
    • unknown's avatar
      After merge fix · 8460fe17
      unknown authored
      8460fe17
    • unknown's avatar
      Merge mysql.com:/home/bar/mysql-work/mysql-5.0.b28875 · 4bf40aba
      unknown authored
      into  mysql.com:/home/bar/mysql-work/mysql-5.0-rpl
      
      
      mysql-test/r/ctype_utf8.result:
        Auto merged
      mysql-test/t/ctype_utf8.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/item_strfunc.cc:
        Auto merged
      sql/item_timefunc.cc:
        Auto merged
      sql/sql_lex.cc:
        Auto merged
      sql/sql_lex.h:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      strings/conf_to_src.c:
        Auto merged
      strings/ctype-extra.c:
        Auto merged
      mysql-test/r/ctype_ucs.result:
        After merge fix
      mysql-test/t/ctype_ucs.test:
        After merge fix
      4bf40aba