1. 29 Aug, 2007 1 commit
  2. 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
  3. 26 Aug, 2007 1 commit
  4. 25 Aug, 2007 3 commits
  5. 24 Aug, 2007 8 commits
  6. 23 Aug, 2007 2 commits
  7. 22 Aug, 2007 4 commits
    • unknown's avatar
      Cleanup in the "netware" subdirectory: · 870958d2
      unknown authored
      1) We do not provide the "isam" table handler in 5.0 and up (different from "myisam" !),
         so we do not need the ".def" files for the "isam"-specific tools.
      
      2) Use "basename" to get the base name of a file, not a harder-to-read sed expression.
      
      
      BitKeeper/deleted/.del-isamchk.def:
        Delete: netware/isamchk.def
      BitKeeper/deleted/.del-isamlog.def:
        Delete: netware/isamlog.def
      BitKeeper/deleted/.del-pack_isam.def:
        Delete: netware/pack_isam.def
      netware/Makefile.am:
        Use a plain "basename" showing the purpose, not a sed command which is harder to read.
      870958d2
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.0-opt-30201 · 10329092
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      10329092
    • unknown's avatar
      Merge hynda.mysql.fi:/home/my/mysql-5.0-main · 3dbffd24
      unknown authored
      into  hynda.mysql.fi:/home/my/mysql-5.0-marvel
      
      
      3dbffd24
    • unknown's avatar
      Fixed bug #30201. · 891b1659
      unknown authored
      Killing a SELECT query with KILL QUERY or KILL CONNECTION
      causes a server crash if the query cache is enabled.
      
      Normal evaluation of a query may be interrupted by the
      KILL QUERY/CONNECTION statement, in this case the mysql_execute_command
      function returns TRUE, and the thd->killed flag has true value.
      In this case the result of the query may
      be cached incompletely (omitting call to query_cache_insert inside
      the net_real_write function), and next call to query_cache_end_of_result
      may lead to server crash.
      Thus, the query_cache_end_of_result function has been modified to abort
      query cache in the case of killed thread.
      
      
      
      sql/sql_cache.cc:
        Fixed bug #30201.
        The  query_cache_end_of_result function has been modified to abort query
        cache in the case of query execution failure. Also this function has been
        modified to remove incomplete query block.
      891b1659
  8. 21 Aug, 2007 10 commits
  9. 20 Aug, 2007 4 commits
    • unknown's avatar
      Fixed bug #30287. · 7c3d5bc5
      unknown authored
      The server created temporary tables for filesort in the working directory
      instead of the specified tmpdir directory.
      
      
      sql/item.cc:
        Fixed bug #30287.
        The Item_field::set_field method has been modified to reset the any_privileges
        flag to false in case of system temporary table. This modification prevents the
        server from unnecessary checking of user privileges to access system temporary
        tables.
      sql/sql_select.cc:
        Fixed bug #30287.
        Bugfix for #29015 has been removed: TABLE_SHARE::table_name of system
        temporary tables contains full path to table file basename again.
      sql/sql_view.cc:
        Fixed bug #30287.
        Commentary has been added.
      7c3d5bc5
    • unknown's avatar
      Merge weblab.(none):/home/marcsql/TREE/mysql-5.0-base · 3c52b2b3
      unknown authored
      into  weblab.(none):/home/marcsql/TREE/mysql-5.0-rt-merge
      
      
      sql/sql_base.cc:
        Auto merged
      sql/sql_handler.cc:
        Auto merged
      3c52b2b3
    • unknown's avatar
      Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · d48e35b9
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
      
      
      d48e35b9
    • unknown's avatar
      Bug#27629 Possible security flaw in INFORMATION_SCHEMA and SHOW statements · 29ee5ed0
      unknown authored
      added SUPER_ACL check for I_S.TRIGGERS
      
      
      mysql-test/r/information_schema.result:
        result fix
      mysql-test/r/information_schema_db.result:
        result fix
      mysql-test/t/information_schema.test:
        test case
      sql/sql_show.cc:
        added SUPER_ACL check for I_S.TRIGGERS
      29ee5ed0
  10. 18 Aug, 2007 1 commit
  11. 17 Aug, 2007 4 commits
    • unknown's avatar
      Merge adventure.(none):/home/thek/Development/cpp/bug30269/my50-bug30269 · 3ff26995
      unknown authored
      into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime
      
      
      mysql-test/r/query_cache.result:
        Auto merged
      mysql-test/t/query_cache.test:
        Auto merged
      3ff26995
    • unknown's avatar
      Bug #30269 Query cache eats memory · bd80048f
      unknown authored
      Although the query cache doesn't support retrieval of statements containing
      column level access control, it was still possible to cache such statements
      thus wasting memory.
      
      This patch extends the access control check on the target tables to avoid
      caching a statement with column level restrictions. 
      
      
      mysql-test/r/query_cache.result:
        Added test
      mysql-test/t/query_cache.test:
        Added test
      sql/sql_cache.cc:
        The function check_table_access leaves the artifact
        grant.want_privileges= 1, if a statement refers to tables with column level
        privileges. To avoid the statement from being stored into the query cache,
        it is enough to check this flag and set 'safe_to_cache_query' to zero.
      sql/sql_cache.h:
        - Removed 'static' attribute or class methods
        - Added THD parameter to process_and_count_tables
      bd80048f
    • unknown's avatar
      Bug#30245: A wrong type of a BIT field is reported when grouped by it. · d280a06e
      unknown authored
      HEAP tables can't index BIT fields. Due to this when grouping by such fields is
      needed they are converted to a fields of the LONG type when temporary table
      is being created. But a side effect of this is that a wrong type of BIT
      fields is returned to a client.
      
      Now the JOIN::prepare and the create_distinct_group functions are create
      additional hidden copy of BIT fields to preserve original fields untouched.
      New hidden fields are used for grouping instead.
      
      
      mysql-test/t/type_bit.test:
        Added a test case for the bug#30245: A wrong type of a BIT field is reported when grouped by it.
      mysql-test/r/type_bit.result:
        Added a test case for the bug#30245: A wrong type of a BIT field is reported when grouped by it.
      sql/sql_select.cc:
        Bug#30245: A wrong type of a BIT field is reported when grouped by it.
        Now the JOIN::prepare and the create_distinct_group functions are create
        additional hidden copy of BIT fields to preserve original fields untouched.
        New hidden fields are used for grouping instead.
      d280a06e
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · 92abaeee
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug30396
      
      
      92abaeee
  12. 16 Aug, 2007 1 commit
    • unknown's avatar
      Bug#29936 (Stored Procedure DML ignores low_priority_updates setting) · 409938f2
      unknown authored
      This is a follow up for the patch for Bug#26162 "Trigger DML ignores low_priority_updates setting", where the stored procedure ignores the session setting of low_priority_updates.
      
      For every table open operation with default write (TL_WRITE_DEFAULT) lock_type, downgrade the lock type to the session setting of low_priority_updates.
      
      
      sql/lock.cc:
        Add late lock_type assertion.
      sql/sql_base.cc:
        Possibly downgrade lock type to the the session setting of low_priority_updates and also remove early assertion.
      409938f2