1. 25 Jul, 2007 1 commit
  2. 24 Jul, 2007 1 commit
    • unknown's avatar
      Bug#15130: CREATE .. SELECT was denied to use advantages of the SQL_BIG_RESULT. · c4d53e31
      unknown authored
      When the SQL_BIG_RESULT flag is specified SELECT should store items from the
      select list in the filesort data and use them when sending to a client.
      The get_addon_fields function is responsible for creating necessary structures
      for that. But this function was allowed to do so only for SELECT and
      INSERT .. SELECT queries. This makes the SQL_BIG_RESULT useless for
      the CREATE .. SELECT queries.
      
      Now the get_addon_fields allows storing select list items in the filesort
      data for the CREATE .. SELECT queries.
      
      
      mysql-test/t/create.test:
        Added a test case for the bug#15130: CREATE .. SELECT was denied to use
        advantages of the SQL_BIG_RESULT.
      mysql-test/r/create.result:
        Added a test case for the bug#15130: CREATE .. SELECT was denied to use
        advantages of the SQL_BIG_RESULT.
      sql/filesort.cc:
        Bug#15130: CREATE .. SELECT was denied to use advantages of the SQL_BIG_RESULT.
        Now the get_addon_fields allows storing select list items in the filesort
        data for the CREATE .. SELECT queries.
      c4d53e31
  3. 23 Jul, 2007 4 commits
    • unknown's avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · c29002a5
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/autopush/B29644-5.0-opt
      
      
      sql/ha_innodb.cc:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      mysql-test/r/innodb_mysql.result:
        5.0-opt merge
      mysql-test/t/innodb_mysql.test:
        5.0-opt merge
      c29002a5
    • unknown's avatar
      Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · f76d006a
      unknown authored
      into  olga.mysql.com:/home/igor/mysql-5.0-opt
      
      
      f76d006a
    • unknown's avatar
      table.cc, sql_select.cc: · c38fa3f3
      unknown authored
        Limit the fix for bug 28591 to InnoDB only
      
      
      sql/sql_select.cc:
        Limit the fix for bug 28591 to InnoDB only
      sql/table.cc:
        Limit the fix for bug 28591 to InnoDB only
      c38fa3f3
    • unknown's avatar
      Fixed bug #29611. · d50caace
      unknown authored
      If a primary key is defined over column c of enum type then 
      the EXPLAIN command for a look-up query of the form
        SELECT * FROM t WHERE c=0
      said that the query was with an impossible where condition though the
      query correctly returned non-empty result set when the table indeed 
      contained rows with error empty strings for column c. 
      
      This kind of misbehavior was due to a bug in the function 
      Field_enum::store(longlong,bool) that erroneously returned 1 if
      the the value to be stored was equal to 0. 
      Note that the method 
      Field_enum::store(const char *from,uint length,CHARSET_INFO *cs)
      correctly returned 0 if a value of the error empty string 
      was stored. 
      
      
      mysql-test/r/type_enum.result:
        Added a test case for bug #29661.
      mysql-test/t/type_enum.test:
        Added a test case for bug #29661.
      sql/field.cc:
        Fixed bug #29611.
        If a primary key was defined over column c of enum type then 
        the EXPLAIN command for a look-up query of the form
          SELECT * FROM t WHERE c=0
        said that the query was with an impossible where condition though the
        query correctly returned non-empty result set when the table indeed 
        contained rows with error empty strings for column c. 
        
        This kind of misbehavior was due to a bug in the function 
        Field_enum::store(longlong,bool) that erroneously returned 1 if
        the the value to be stored was equal to 0. 
        Note that the method 
        Field_enum::store(const char *from,uint length,CHARSET_INFO *cs)
        correctly returned 0 if a value of the error empty string 
        was stored.
      d50caace
  4. 22 Jul, 2007 4 commits
  5. 21 Jul, 2007 8 commits
    • unknown's avatar
      Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 5f0036eb
      unknown authored
      into  olga.mysql.com:/home/igor/mysql-5.0-opt
      
      
      5f0036eb
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.0-opt-29338 · 9260c30d
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      mysql-test/r/sp.result:
        Auto merged
      mysql-test/t/sp.test:
        Merge with local tree.
      9260c30d
    • unknown's avatar
      sp.test, sp.result: · 9cad4f08
      unknown authored
        Additional test case fix for bug #29338.
      
      
      mysql-test/t/sp.test:
        Additional test case fix for bug #29338.
      mysql-test/r/sp.result:
        Additional test case fix for bug #29338.
      9cad4f08
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · 7507cbaa
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug29911
      
      
      7507cbaa
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.0-opt-29338 · aed9a5fe
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      mysql-test/r/sp.result:
        Merge with local tree
      mysql-test/t/sp.test:
        Merge with local tree
      aed9a5fe
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/dev-opt/mysql-4.1-opt-bug29911 · 3520da5b
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug29911
      
      
      mysql-test/t/having.test:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      mysql-test/r/having.result:
        SCCS merged
      3520da5b
    • unknown's avatar
      Fixed bug #29911. · 72c6c789
      unknown authored
      This bug manifested itself for join queries with GROUP BY and HAVING clauses
      whose SELECT lists contained DISTINCT. It occurred when the optimizer could
      deduce that the result set would have not more than one row.
      The bug could lead to wrong result sets for queries of this type because
      HAVING conditions were erroneously ignored in some cases in the function
      remove_duplicates.   
      
      
      mysql-test/r/having.result:
        Added a test case for bug #29911.
      mysql-test/t/having.test:
        Added a test case for bug #29911.
      72c6c789
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.0-opt-29788 · 4049faa4
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      4049faa4
  6. 20 Jul, 2007 5 commits
    • unknown's avatar
      Fixed bug #29788. · cff531ff
      unknown authored
      After dumping triggers mysqldump copied 
      the value of the OLD_SQL_MODE variable to the SQL_MODE
      variable. If the --compact option of the mysqldump was
      not set the OLD_SQL_MODE variable had the value
      of the uninitialized SQL_MODE variable. So
      usually the NO_AUTO_VALUE_ON_ZERO option of the
      SQL_MODE variable was discarded.
      
      This fix is for non-"--compact" mode of the mysqldump,
      because mysqldump --compact never set SQL_MODE to the
      value of NO_AUTO_VALUE_ON_ZERO.
      
      The dump_triggers_for_table function has been modified
      to restore previous value of the SQL_MODE variable after
      dumping triggers using the SAVE_SQL_MODE temporary
      variable.
      
      
      client/mysqldump.c:
        Fixed bug #29788.
        The dump_triggers_for_table function has been modified
        to restore previous value of the SQL_MODE variable after
        dumping triggers using the SAVE_SQL_MODE temporary
        variable.
      mysql-test/r/mysqldump.result:
        Updated test case for bug #29788.
      mysql-test/t/mysqldump.test:
        Updated test case for bug #29788.
      cff531ff
    • unknown's avatar
      Bug #28591: MySQL need not sort the records in case of · 95a8c6c3
      unknown authored
      ORDER BY primary_key on InnoDB table
      
      Queries that use an InnoDB secondary index to retrieve
      data don't need to sort in case of ORDER BY primary key
      if the secondary index is compared to constant(s).
      They can also skip sorting if ORDER BY contains both the
      the secondary key parts and the primary key parts (in
      that order).
      This is because InnoDB returns the rows in order of the
      primary key for rows with the same values of the secondary
      key columns.
      Fixed by preventing temp table sort for the qualifying 
      queries.
      
      
      mysql-test/r/innodb_mysql.result:
        Bug #28591: test case
      mysql-test/t/innodb_mysql.test:
        Bug #28591: test case
      sql/sql_select.cc:
        Bug #28591: Use the primary key as suffix when testing
        if the key can be used for ORDER BY on supporting engines.
      sql/table.cc:
        Bug #28591: can use the primary key
        as a suffix for the secondary keys
      95a8c6c3
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · d758b1e6
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/29898-bug-5.0-opt-mysql
      
      
      d758b1e6
    • unknown's avatar
      Bug #29644: alter table hangs if records locked in share mode · eea5c2a3
      unknown authored
      by long running transaction
      
      On Windows opened files can't be deleted. There was a special
      upgraded lock mode (TL_WRITE instead of TL_WRITE_ALLOW_READ) 
      in ALTER TABLE to make sure nobody has the table opened
      when deleting the old table in ALTER TABLE. This special mode
      was causing ALTER TABLE to hang waiting on a lock inside InnoDB.
      This special lock is no longer necessary as the server is 
      closing the tables it needs to delete in ALTER TABLE.
      Fixed by removing the special lock.
      Note that this also reverses the fix for bug 17264 that deals with
      another consequence of this special lock mode being used.
      
      
      mysql-test/r/innodb_mysql.result:
        Bug #29644: test case
      mysql-test/t/innodb_mysql.test:
        Bug #29644: test case
      sql/ha_innodb.cc:
        Bug #29644: reverse the (now excessive) fix
        for bug 17264 (but leave the test case).
      sql/sql_base.cc:
        Bug #29644: don't need a special lock mode for Win32 anymore: 
        the table is closed before the drop.
      eea5c2a3
    • unknown's avatar
      Bug #29494 Field packet with NULL fields crashes libmysqlclient. · 1a2d2117
      unknown authored
      unpack_fields() didn't expect NULL_LENGHT in the field's descriptions.
      In this case we get NULL in the resulting string so cannot use
      strdup_root to make a copy of it.
      strdup_root changed with strmake_root as it's NULL-safe
      
      
      sql-common/client.c:
        Bug #29494 Field packet with NULL fields crashes libmysqlclient
        
        strdup_root changed with strmake_root in unpack_fields()
      1a2d2117
  7. 19 Jul, 2007 10 commits
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.0 · db31d3c9
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      sql/set_var.cc:
        Auto merged
      sql/sql_class.h:
        Auto merged
      db31d3c9
    • unknown's avatar
      Bug#29898: Item_date_typecast::val_int doesn't reset the null_value flag. · a131428f
      unknown authored
      The Item_date_typecast::val_int function doesn't reset null_value flag.
      This makes all values that follows the first null value to be treated as nulls
      and led to a wrong result.
      
      Now the Item_date_typecast::val_int function correctly sets the null_value flag
      for both null and non-null values.
      
      
      mysql-test/t/cast.test:
        Added a test case for the bug#29898:  Item_date_typecast::val_int doesn't reset
        the null_value flag.
      mysql-test/r/cast.result:
        Added a test case for the bug#29898:  Item_date_typecast::val_int doesn't reset
        the null_value flag.
      sql/item_timefunc.cc:
        Bug#29898: Item_date_typecast::val_int doesn't reset the null_value flag.
        Now the Item_date_typecast::val_int function correctly sets the null_value flag
        for both null and non-null values.
      a131428f
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · d0020607
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/29850-bug-5.0-opt-mysql
      
      
      d0020607
    • unknown's avatar
      Bug#29850: Wrong charset of GROUP_CONCAT result when the select employs · 7f6a8164
      unknown authored
      a temporary table.
      
      The result string of the Item_func_group_concat wasn't initialized in the 
      copying constructor of the Item_func_group_concat class. This led to a
      wrong charset of GROUP_CONCAT result when the select employs a temporary
      table.
      
      The copying constructor of the Item_func_group_concat class now correctly
      initializes the charset of the result string.
      
      
      mysql-test/t/func_gconcat.test:
        Added a test case for the bug#29850: Wrong charset of the GROUP_CONCAT result
        when the select employs a temporary table.
      mysql-test/r/func_gconcat.result:
        Added a test case for the bug#29850: Wrong charset of the GROUP_CONCAT result
        when the select employs a temporary table.
      sql/item_sum.cc:
        Bug#29850: Wrong charset of GROUP_CONCAT result when the select employs
        a temporary table.
        The copying constructor of the Item_func_group_concat class now correctly
        initializes the charset of the result string.
      7f6a8164
    • unknown's avatar
      Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 248c5e24
      unknown authored
      into  mysql.com:/home/hf/work/29687/my50-29687
      
      
      248c5e24
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-5.0-opt · 02999636
      unknown authored
      into  mysql.com:/home/hf/work/29687/my50-29687
      
      
      02999636
    • unknown's avatar
      Merge bk-internal.mysql.com:/data0/bk/mysql-4.1-maint · 8d592e95
      unknown authored
      into  bk-internal.mysql.com:/data0/bk/tsmith-tmp/mysql-5.0-maint
      
      
      8d592e95
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.0 · c865b225
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      sql/ha_myisam.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      c865b225
    • unknown's avatar
      Fixed bug #29338. · 36f1e484
      unknown authored
      Optimization of queries with DETERMINISTIC functions in the
      WHERE clause was not effective: sequential scan was always
      used.
      Now a SF with the DETERMINISTIC flags is treated as constant
      when it's arguments are constants (or a SF doesn't has arguments).
      
      
      sql/item_func.h:
        Fixed bug #29338.
        The Item_func_sp::used_tables has been removed
        (virtual Item_func::used_tables function is enough).
        The virtual Item_func_sp::update_used_tables function
        has been added.
      sql/item_func.cc:
        Fixed bug #29338.
        The Item_func_sp::update_used_tables and the
        Item_func_sp::fix_field functions have been modified
        to take into account the DETERMINISTIC flag of SF definition.
      mysql-test/r/sp.result:
        Updated test case for bug #29338.
      mysql-test/t/sp.test:
        Updated test case for bug #29338.
      36f1e484
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.0-opt-28524 · 8b59beae
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      8b59beae
  8. 18 Jul, 2007 3 commits
    • unknown's avatar
      Fixed bug #28524. · 2bfe84d4
      unknown authored
      For each view the mysqldump utility creates a temporary table
      with the same name and the same columns as the view 
      in order to satisfy views that depend on this view.
      After the creation of all tables, mysqldump drops all
      temporary tables and creates actual views.
      However, --skip-add-drop-table and --compact flags disable
      DROP TABLE statements for those temporary tables. Thus, it was
      impossible to create the views because of existence of the
      temporary tables with the same names.
      
      
      client/mysqldump.c:
        Fixed bug #28524.
        The mysqldump utility has been modified to unconditionally drop
        temporary tables before the creation of views.
      mysql-test/t/mysqldump.test:
        Updated test case for bug #28524 and updated result of previous tests.
      mysql-test/r/mysqldump.result:
        Updated test case for bug #28524 and updated result of previous tests.
      2bfe84d4
    • unknown's avatar
      Bug #29325: create table overwrites .MYD file of other · a266c16d
      unknown authored
      table (datadir)
      Set errno when retunring an error in my_create_with_symlink.
      
      
      mysys/my_symlink2.c:
        Bug #29325: set errno when retunring 
        an error in my_create_with_symlink
      a266c16d
    • unknown's avatar
      Mark deadcode for gcov · 06b446da
      unknown authored
      06b446da
  9. 17 Jul, 2007 4 commits