1. 27 Aug, 2007 1 commit
    • unknown's avatar
      Bug #30596 GROUP BY optimization gives wrong result order · 23686646
      unknown authored
      The optimization that uses a unique index to remove GROUP BY, did not 
      ensure that the index was actually used, thus violating the ORDER BY
      that is impled by GROUP BY.
      Fixed by replacing GROUP BY with ORDER BY if the GROUP BY clause contains
      a unique index. In case GROUP BY ... ORDER BY null is used, GROUP BY is
      simply removed.
      
      
      BitKeeper/etc/ignore:
        Added support-files/mysqld_multi.server tests/bug25714 cscope.in.out cscope.out cscope.po.out to the ignore list
      mysql-test/r/distinct.result:
        Bug#30596: Changed test case. 
        Prior to Bug#16458, These queries use temp table and filesort. The
        bug was that they used a temp table. However, that patch removed
        filesort also, in which case we can no longer gurantee correct ordering.
      mysql-test/r/group_by.result:
        Bug#30596: Correct result
      mysql-test/r/innodb_mysql.result:
        Bug#30596: Test case for innodb. Here, as opposed to for MyISAM, row 
        lookup is done using index whenever the index covers the group list.
      mysql-test/t/group_by.test:
        Bug#30596: Test case
      mysql-test/t/innodb_mysql.test:
        Bug#30596: Test case
      sql/sql_select.cc:
        Bug#30596: The fix, replacing GROUP BY with ORDER BY unless 
        ORDER BY [NULL|<constant>]
      23686646
  2. 14 Aug, 2007 1 commit
  3. 13 Aug, 2007 3 commits
  4. 10 Aug, 2007 1 commit
  5. 08 Aug, 2007 1 commit
  6. 06 Aug, 2007 8 commits
  7. 05 Aug, 2007 8 commits
    • unknown's avatar
      mysql-test-run.pl: · 57e225bb
      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
      57e225bb
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · e106b09a
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug30219
      
      
      e106b09a
    • unknown's avatar
      Fix bug #30219. · 4e6e1220
      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.
      4e6e1220
    • unknown's avatar
      Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-build · 308c6448
      unknown authored
      into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
      
      
      308c6448
    • unknown's avatar
      Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0 · fe87e88f
      unknown authored
      into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
      
      
      fe87e88f
    • unknown's avatar
      Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1 · a3d5f64c
      unknown authored
      into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-build
      
      
      a3d5f64c
    • unknown's avatar
      Fix for bug #21281 "Pending write lock is incorrectly removed when its · af2d0f87
      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().
      af2d0f87
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0 · 983cda8d
      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
      983cda8d
  8. 04 Aug, 2007 2 commits
  9. 03 Aug, 2007 11 commits
    • unknown's avatar
      CMakeLists.txt: · edc99e12
      unknown authored
        Removed space between '-D' and symbol
      
      
      CMakeLists.txt:
        Removed space between '-D' and symbol
      edc99e12
    • unknown's avatar
      CMakeLists.txt, README, configure.js · 29bd01e6
      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"
      29bd01e6
    • unknown's avatar
      Merge mkindahl@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl · 6c1edb11
      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
      6c1edb11
    • unknown's avatar
      .del-readme.txt-grumble-grumble: · 712d7fa2
      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
      712d7fa2
    • unknown's avatar
      Bug #25228: rpl_relayspace.test fails on powermacg5, vm-win2003-32-a · 71c3c0cf
      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
      71c3c0cf
    • unknown's avatar
      After merge fix · be04bf55
      unknown authored
      be04bf55
    • unknown's avatar
      Merge mysql.com:/home/bar/mysql-work/mysql-5.0.b28875 · 0d1972aa
      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
      0d1972aa
    • unknown's avatar
      Bug#28875 Conversion between ASCII and LATIN1 charsets does not function · 53df09a9
      unknown authored
      (Regression, caused by a patch for the bug 22646).
      Problem: when result type of date_format() was changed from
      binary string to character string, mixing date_format()
      with a ascii column in CONCAT() stopped to work.
      Fix:
      - adding "repertoire" flag into DTCollation class,
      to mark items which can return only pure ASCII strings.
      - allow character set conversion from pure ASCII to other character sets.
      
      
      include/m_ctype.h:
        Defining new flags.
        Adding new function prototypes.
      mysql-test/r/ctype_ucs.result:
        Adding tests.
      mysql-test/r/ctype_utf8.result:
        Adding tests.
      mysql-test/r/func_time.result:
        Adding tests.
      mysql-test/t/ctype_ucs.test:
        Adding tests.
      mysql-test/t/ctype_utf8.test:
        Adding tests.
      mysql-test/t/func_time.test:
        Adding test.
      mysys/charset.c:
        Adding pure ASCII detection when loading a dynamic character set.
      sql/item.cc:
        - Moving detection of a Unicode superset into function.
        - Adding detection of a ASCII subset.
        - Adding creation of to-ASCII character set convertor when
          safe_charset_converter() failed and when the argument.
          repertoire is know to be pure ASCII.
      sql/item.h:
        - Adding "repertoire" member into DTCollation class.
        - Adding "repertoire" argument to constructors.
        - Adding new methods:
          set_repertoire_from_charset()
          set_repertoire_from_value()
      sql/item_func.cc:
        Adding "repertoire" argument.
      sql/item_strfunc.cc:
        Adding "repertoire" argument.
      sql/item_timefunc.cc:
        Initializing the result repertoire taking into account the "is_ascii"
        flag of the current locale.
      sql/sql_lex.cc:
        Detect 7bit strings, return in Lex->text_string_is_7bit.
      sql/sql_lex.h:
        Adding new member into LEX structure.
        Adding new member into Lex_input_stream
      sql/sql_string.cc:
        Allow simple copy from pure ASCII to a ASCII-based character set.
      sql/sql_yacc.yy:
        Depening on Lex->text_string_is_7bit and character set features,
        create Item_string with MY_REPERTOIRE_ASCII when it is possible.
      strings/conf_to_src.c:
        - Adding printing of the "MY_CS_PUREASCII" flag
        - Adding printing of copyright
      strings/ctype-extra.c:
        Recreating ctype-extra.c: ascii_general_ci and ascii_bin
        are now marked with MY_CS_PUREASCII flag.
      strings/ctype.c:
        Adding new functions.
      53df09a9
    • unknown's avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · d17cc9e7
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/autopush/B30193-5.0-opt
      
      
      d17cc9e7
    • unknown's avatar
      Merge chilla.local:/home/mydev/mysql-4.1-axmrg · d55d5bd6
      unknown authored
      into  chilla.local:/home/mydev/mysql-5.0-axmrg
      
      
      d55d5bd6
    • unknown's avatar
      Merge chilla.local:/home/mydev/mysql-5.0-amain · 09d74da7
      unknown authored
      into  chilla.local:/home/mydev/mysql-5.0-axmrg
      
      
      sql/sql_insert.cc:
        Auto merged
      09d74da7
  10. 02 Aug, 2007 4 commits
    • unknown's avatar
      Merge gshchepa@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · cf145f8f
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      cf145f8f
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.0-opt-27352 · 30f63c14
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      sql/sql_parse.cc:
        Auto merged
      30f63c14
    • unknown's avatar
      Fixed bug #27352. · a53510f0
      unknown authored
      The SELECT query with more than 31 nested dependent SELECT queries returned
      wrong result.
      
      New error message has been added: ER_TOO_HIGH_LEVEL_OF_NESTING_FOR_SELECT.
      It will be reported as: "Too high level of nesting for select".
      
      
      sql/sql_parse.cc:
        Fixed bug #27352.
        The Item_sum::register_sum_func method has been modified to return
        TRUE on exceeding of allowed level of SELECT nesting and to report
        corresponding error message.
      sql/unireg.h:
        Fixed bug #27352.
        Constant definition has been added: maximal allowed level of SELECT nesting.
      mysql-test/t/select.test:
        Updated test case for bug #27352.
      mysql-test/r/select.result:
        Updated test case for bug #27352.
      sql/share/errmsg.txt:
        Fixed bug #27352.
        New error message has been added: ER_TOO_HIGH_LEVEL_OF_NESTING_FOR_SELECT.
      a53510f0
    • unknown's avatar
      Merge trift2.:/MySQL/M41/push-4.1 · 5000893f
      unknown authored
      into  trift2.:/MySQL/M50/push-5.0
      
      
      5000893f