1. 31 Mar, 2006 3 commits
    • unknown's avatar
      Fixed a typo. · 1de12691
      unknown authored
      1de12691
    • unknown's avatar
      Merge mysql.com:/home/timka/mysql/src/5.0-virgin · 085aa5c9
      unknown authored
      into  mysql.com:/home/timka/mysql/src/5.0-bug-16710
      
      
      mysql-test/r/group_min_max.result:
        Auto merged
      mysql-test/t/group_min_max.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/opt_range.cc:
        Auto merged
      085aa5c9
    • unknown's avatar
      Fix for BUG#16710. · a01d48f9
      unknown authored
      The bug was due to a missed case in the detection of whether an index
      can be used for loose scan. More precisely, the range optimizer chose
      to use loose index scan for queries for which the condition(s) over
      an index key part could not be pushed to the index together with the
      loose scan.
      
      As a result, loose index scan was selecting the first row in the
      index with a given GROUP BY prefix, and was applying the WHERE
      clause after that, while it should have inspected all rows with
      the given prefix, and apply the WHERE clause to all of them.
      
      The fix detects and skips such cases.
      
      
      mysql-test/r/group_min_max.result:
        Added test for BUG#16710.
      mysql-test/t/group_min_max.test:
        Added test for BUG#16710.
      sql/item.cc:
        Added new method [Item | Item_field]::find_item_in_field_list_processor.
      sql/item.h:
        Added new method [Item | Item_field]::find_item_in_field_list_processor.
      sql/opt_range.cc:
        Handle the case when there is no MIN/MAX aggregate function, and a
        keypart of the index being considered, that is after the GROUP BY
        prefix, is used in the WHERE clause and the condition where it is
        used cannot be pushed to the index.
        If this is the case, we rule out this index.
      a01d48f9
  2. 30 Mar, 2006 16 commits
  3. 29 Mar, 2006 21 commits
    • unknown's avatar
      Fix error in prefix compression of keys in MyISAM when key length changed from 254 -> 255 · 2d6a51b4
      unknown authored
      Bug #17705 "FT Index corruption occurs with UTF8 data..."
      (Actually, the bug had nothing to do with FT index but with general key compression)
      
      
      
      myisam/mi_search.c:
        Fix error in prefix compression of keys in MyISAM when key length changed from 254 -> 255
      mysql-test/r/ctype_utf8.result:
        Test of fix for key compression bug
      mysql-test/t/ctype_utf8.test:
        Test of fix for key compression bug
      2d6a51b4
    • unknown's avatar
      mysql-test-run.pl: · 3479ec37
      unknown authored
        Check that port range is valid, bug#16807
      
      
      mysql-test/mysql-test-run.pl:
        Check that port range is valid, bug#16807
      3479ec37
    • unknown's avatar
      mysqld_safe.sh: · 2d8acd2f
      unknown authored
        Added --help option, bug#16392
      acinclude.m4:
        Use "$shrext_cmds" when testing if shared library exists, bug#16332
      
      
      acinclude.m4:
        Use "$shrext_cmds" when testing if shared library exists, bug#16332
      scripts/mysqld_safe.sh:
        Added --help option, bug#16392
      2d8acd2f
    • unknown's avatar
      Makefile.am: · e672bb70
      unknown authored
        Use "dist_bin_SCRIPTS" to get a script distributed
      
      
      ndb/tools/Makefile.am:
        Use "dist_bin_SCRIPTS" to get a script distributed
      e672bb70
    • unknown's avatar
      Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1 · 92df85b4
      unknown authored
      into mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
      
      
      92df85b4
    • unknown's avatar
      Makefile.am: · 113efc00
      unknown authored
        Use "dist_bin_SCRIPTS" to get a script distributed
      
      
      ndb/tools/Makefile.am:
        Use "dist_bin_SCRIPTS" to get a script distributed
      113efc00
    • unknown's avatar
      configure.in: · 1a60013f
      unknown authored
        Increased version number because of clone-off
      
      
      configure.in:
        Increased version number because of clone-off
      1a60013f
    • unknown's avatar
      Fix an -ansi -pedantic compilation failure · d9f5fac9
      unknown authored
      d9f5fac9
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 87e91781
      unknown authored
      into  mysql.com:/opt/local/work/mysql-5.0-15683
      
      
      sql/sql_load.cc:
        Auto merged
      87e91781
    • unknown's avatar
      Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.0 · c5ab0159
      unknown authored
      into  mysql.com:/home/alexi/innodb/mysql-5.0-merge
      
      
      c5ab0159
    • unknown's avatar
      Restoring changes erroneously removed by applying · 5dddbb4a
      unknown authored
       the innodb-5.0-ss368 snapshot.
      
      
      5dddbb4a
    • unknown's avatar
      Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries · b2531546
      unknown authored
      The GROUP_CONCAT uses its own temporary table. When ROLLUP is present
      it creates the second copy of Item_func_group_concat. This copy receives the
      same list of arguments that original group_concat does. When the copy is
      set up the result_fields of functions from the argument list are reset to the
      temporary table of this copy.
      As a result of this action data from functions flow directly to the ROLLUP copy
      and the original group_concat functions shows wrong result.
      Since queries with COUNT(DISTINCT ...) use temporary tables to store
      the results the COUNT function they are also affected by this bug.
      
      The idea of the fix is to copy content of the result_field for the function
      under GROUP_CONCAT/COUNT from  the first temporary table to the second one,
      rather than setting result_field to point to the second temporary table.
      To achieve this goal force_copy_fields flag is added to Item_func_group_concat
      and Item_sum_count_distinct classes. This flag is initialized to 0 and set to 1
      into the make_unique() member function of both classes.
      To the TMP_TABLE_PARAM structure is modified to include the similar flag as
      well.
      The create_tmp_table() function passes that flag to create_tmp_field().
      When the flag is set the create_tmp_field() function will set result_field
      as a source field and will not reset that result field to newly created 
      field for Item_func_result_field and its descendants. Due to this there
      will be created copy func to copy data from old result_field to newly 
      created field.
      
      
      mysql-test/t/func_gconcat.test:
        Added test for bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
      mysql-test/r/func_gconcat.result:
        Added test for bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
      sql/sql_table.cc:
        Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
        Added 0 as a last parameter to create_tmp_field()  to force old behaviour.
      sql/sql_select.cc:
        Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
        
        Added the flag 'make_copy_field' to create_tmp_field(), so that for Item_result_field descendants create_tmp_field() sets the item's result field as a source field and deny resetting that result field to a new value.
      sql/sql_class.h:
        Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
        Added the flag 'force_copy_fields' to the structure TMP_TABLE_PARAM in order to make create_tmp_field() force the creation of 'copy_field' objects.
      sql/mysql_priv.h:
        Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
        Added the bool parameter 'make_copy_field' to create_tmp_field().
      sql/item_sum.cc:
        Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
        Added initialization of the force_copy_fields flag and passing it to create_tmp_table() through TMP_TBLE_PARAM in the Item_func_group_concat and Item_sum_count_distinct member functions.
      sql/item_sum.h:
        Fixed bug#15560: GROUP_CONCAT wasn't ready for WITH ROLLUP queries
        Added the flag 'force_copy_fields' to the Item_func_group_concat and Item_sum_count_distinct classes.
      b2531546
    • unknown's avatar
      Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.0 · 20e609d0
      unknown authored
      into  mysql.com:/home/alexi/innodb/mysql-5.0-merge
      
      
      20e609d0
    • unknown's avatar
      Applied innodb-5.0-ss368 snapshot · fd6db50c
      unknown authored
        Fixed bugs:
        #16814: SHOW INNODB STATUS format error in LATEST FOREIGN KEY ERROR section
          dict_foreign_key_error_report(): Always print a newline after invoking
          dict_print_info_on_foreign_key_in_create_format().
        #16827: Better InnoDB error message if ibdata files omitted from my.cnf.
        #17126: CHECK TABLE on InnoDB causes a short hang during check of adaptive hash.
          CHECK TABLE blocking other queries, by releasing the btr_search_latch
          periodically during the adaptive hash table validation.
        #17405: Valgrind: conditional jump or move depends on uninitialised valuesw.
          buf_block_init(): Reset magic_n, buf_fix_count, and io_fix to avoid testing
          uninitialised variables.
        #18077: InnoDB uses full explicit table locks in stored FUNCTION.
        #18238: When locks exhaust the buffer pool, InnoDB does not roll back the trx.
          Check in pessimistic insert and update if the buffer pool is exhausted by locks.
        #18252: Disk space leaks in updates of InnoDB BLOB rows.
          btr_cur_pessimistic_update(): Invoke rec_get_offset() after rec_set_field_extern_bits().
          btr_store_big_rec_extern_fields(): Note that offsets will no longer be valid
          after calling this function.
        #18283: When InnoDB returns error 'lock table full', MySQL can write to binlog too much.
        #18384: InnoDB memory leak on duplicate key errors if row has many columns.
          row_ins_duplicate_error_in_clust(): Call mem_heap_free(heap) at func_exit if needed.
        #18350: Use consistent read in CREATE ... SELECT .. if innodb_locks_unsafe_for_binlog is used.
      
      
      innobase/btr/btr0cur.c:
        Applied innodb-5.0-ss368 snapshot
      innobase/btr/btr0sea.c:
        Applied innodb-5.0-ss368 snapshot
      innobase/buf/buf0buf.c:
        Applied innodb-5.0-ss368 snapshot
      innobase/buf/buf0lru.c:
        Applied innodb-5.0-ss368 snapshot
      innobase/data/data0type.c:
        Applied innodb-5.0-ss368 snapshot
          dtype_print(): Fix printing of prtype.
      innobase/dict/dict0dict.c:
        Applied innodb-5.0-ss368 snapshot
      innobase/fil/fil0fil.c:
        Applied innodb-5.0-ss368 snapshot
          fil_extend_space_to_desired_size(): in UNIV_HOTBACKUP builds,
          do not touch srv_data_file_sizes[] or srv_n_data_files.
      innobase/ha/ha0ha.c:
        Applied innodb-5.0-ss368 snapshot
      innobase/include/btr0cur.h:
        Applied innodb-5.0-ss368 snapshot
      innobase/include/buf0lru.h:
        Applied innodb-5.0-ss368 snapshot
      innobase/include/ha0ha.h:
        Applied innodb-5.0-ss368 snapshot
      innobase/include/page0page.ic:
        Applied innodb-5.0-ss368 snapshot
          Remove UNIV_RELEASE_NOT_YET_STABLE and related checks.
      innobase/include/univ.i:
        Applied innodb-5.0-ss368 snapshot
          Remove UNIV_RELEASES_NOT_YET_STABLE and related checks.
      innobase/row/row0ins.c:
        Applied innodb-5.0-ss368 snapshot
      innobase/row/row0sel.c:
        Applied innodb-5.0-ss368 snapshot
          Remove UNIV_RELEASE_NOT_YET_STABLE and related checks.
          page_rec_is_comp(): Remove the bounds check.
          row_sel_field_store_in_mysql_format(): Turn the assertions
          on mbminlen, mbmaxlen, and templ->type into debug assertions.
      innobase/row/row0upd.c:
        Applied innodb-5.0-ss368 snapshot
      mysql-test/t/innodb.test:
        Applied innodb-5.0-ss368 snapshot
      sql/ha_innodb.cc:
        Applied innodb-5.0-ss368 snapshot
          Fix memory allocation bug (by changing MY_WME to MY_FAE) in get_share.
          Also partially fix coding style of the function.
      fd6db50c
    • unknown's avatar
      Reverting yesterday's patch. (cmiller:1.2099) · 686b42da
      unknown authored
      686b42da
    • unknown's avatar
      Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-4.1 · c819b62b
      unknown authored
      into mysql.com:/home/gluh/MySQL/Merge/4.1
      
      
      c819b62b
    • unknown's avatar
      Fix for bug#15316 SET value having comma not correctly handled · 4af4e1e7
      unknown authored
       disallow the use of comma in SET members
      
      
      mysql-test/r/create.result:
        Fix for bug#15316 SET value having comma not correctly handled
         test case
      mysql-test/t/create.test:
        Fix for bug#15316 SET value having comma not correctly handled
         test case
      4af4e1e7
    • unknown's avatar
      Additional 5.0 fix for · fa65771e
      unknown authored
      Bug#15098: CAST(column double TO signed int), wrong result
      which was fixed originally in 4.1.
      
      
      mysql-test/r/cast.result:
        Fixing test results
      sql/field.cc:
        Adding a "truncated value" warning.
      fa65771e
    • unknown's avatar
      Merge · 16fa54bf
      unknown authored
      
      sql/field.cc:
        Auto merged
      16fa54bf
    • unknown's avatar
      mysql_config.sh: · 0fb36d1b
      unknown authored
        If installed, search built in lib path first, bug#13158
      
      
      scripts/mysql_config.sh:
        If installed, search built in lib path first, bug#13158
      0fb36d1b
    • unknown's avatar
      Makefile.am: · cc85b178
      unknown authored
        Added "ndb_error_reporter" script, bug#18421
      
      
      ndb/tools/Makefile.am:
        Added "ndb_error_reporter" script, bug#18421
      cc85b178