An error occurred fetching the project authors.
  1. 10 Jan, 2007 1 commit
    • unknown's avatar
      Fixed bug #25427. · 6fc17dab
      unknown authored
      In the method Item_field::fix_fields we try to resolve the name of
      the field against the names of the aliases that occur in the select
      list. This is done by a call of the function find_item_in_list.
      When this function finds several occurrences of the field name
      it sends an error message to the error queue and returns 0.
      Yet the code did not take into account that find_item_in_list
      could return 0 and tried to dereference the returned value.
      
      
      mysql-test/r/order_by.result:
        Added a test case for bug #25427.
      mysql-test/t/order_by.test:
        Added a test case for bug #25427.
      sql/item.cc:
        Fixed bug #25427.
        In the method Item_field::fix_fields we try to resolve the name of
        the field against the names of the aliases that occur in the select
        list. This is done by a call of the function find_item_in_list.
        When this function finds several occurrences of the field name 
        it sends an error message to the error queue and returns 0.
        Yet the code did not take into account that find_item_in_list
        could return 0 and tried to dereference the returned value.
      6fc17dab
  2. 17 Nov, 2006 1 commit
  3. 03 Nov, 2006 1 commit
    • unknown's avatar
      Bug #22457: Column alias in ORDER BY works, but not if in an expression · c095f98f
      unknown authored
       The parser is allocating Item_field for references by name in ORDER BY
       expressions. Such expressions however may point not only to Item_field 
       in the select list (or to a table column) but also to an arbitrary Item. 
       This causes Item_field::fix_fields to throw an error about missing 
       column.
       The fix substitutes Item_field for the reference with an Item_ref when 
       not pointing to Item_field.
      
      
      mysql-test/r/order_by.result:
        Bug #22457: Column alias in ORDER BY works, but not if in an expression
         - test case
      mysql-test/t/order_by.test:
        Bug #22457: Column alias in ORDER BY works, but not if in an expression
         - test case
      sql/item.cc:
        Bug #22457: Column alias in ORDER BY works, but not if in an expression
         - transform the Item_field made by the parser into Item_ref if it 
           doesn't point to Item_field and it is in allowed context
      c095f98f
  4. 15 Aug, 2006 2 commits
  5. 14 Aug, 2006 1 commit
    • unknown's avatar
      Bug #21302: Result not properly sorted when using an ORDER BY on a second · 06a302ef
      unknown authored
                   table in a join
       The optimizer removes redundant columns in ORDER BY. It is considering 
      redundant every reference to const table column, e.g b in :
      create table t1 (a int, b int, primary key(a)); 
      select 1 from t1 order by b where a = 1
      
      But it must not remove references to const table columns if the 
      const table is an outer table because there still can be 2 values :
      the const value and NULL. e.g.:
      create table t1 (a int, b int, primary key(a));
      select t2.b c from t1 left join t1 t2 on (t1.a = t2.a and t2.a = 5) 
        order by c;
      
      
      mysql-test/r/join_outer.result:
        Bug #21302: Result not properly sorted when using an ORDER BY on a second 
                    table in a join
         - don't remove columns of const tables in ORDER BY if the const table 
           is an outer table.
      mysql-test/r/order_by.result:
        Bug #21302: Result not properly sorted when using an ORDER BY on a second 
                    table in a join
         - test case
      mysql-test/t/order_by.test:
        Bug #21302: Result not properly sorted when using an ORDER BY on a second 
                    table in a join
         - test case
      sql/sql_select.cc:
        Bug #21302: Result not properly sorted when using an ORDER BY on a second 
                    table in a join
         - don't remove columns of const tables in ORDER BY if the const table 
           is an outer table.
      06a302ef
  6. 18 Jul, 2006 1 commit
    • unknown's avatar
      Bug #19498: Inconsistent support for DEFAULT in TEXT columns · 20c2ddaf
      unknown authored
        When a default of '' was specified for TEXT/BLOB columns, the specification
        was silently ignored. This is presumably to be nice to applications (or
        people) who generate their column definitions in a not-very-clever fashion.
      
        For clarity, doing this now results in a warning, or an error in strict
        mode.
      
      
      mysql-test/r/federated.result:
        Update results
      mysql-test/r/fulltext_distinct.result:
        Update results
      mysql-test/r/fulltext_update.result:
        Update results
      mysql-test/r/gis-rtree.result:
        Update results
      mysql-test/r/gis.result:
        Update results
      mysql-test/r/join_outer.result:
        Update results
      mysql-test/r/order_by.result:
        Update results
      mysql-test/r/type_blob.result:
        Add new results
      mysql-test/r/type_ranges.result:
        Update results
      mysql-test/t/type_blob.test:
        Add new test
      sql/field.cc:
        Issue a warning when setting '' as the default on a BLOB/TEXT column,
        and make it an error in strict mode. Also, clarify comments about when
        NO_DEFAULT_VALUE_FLAG is set.
      20c2ddaf
  7. 21 Apr, 2006 1 commit
    • unknown's avatar
      Fixed bug #18767. · 9225a51c
      unknown authored
      The bug caused wrong result sets for union constructs of the form
      (SELECT ... ORDER BY order_list1 [LIMIT n]) ORDER BY order_list2.
      For such queries order lists were concatenated and limit clause was
      completely neglected. 
      
      
      mysql-test/r/order_by.result:
        Added a test case for bug #18767.
      mysql-test/t/order_by.test:
        Added a test case for bug #18767.
      sql/sql_lex.h:
        Fixed bug #18767.
        Placed the code the created a fake SELECT_LEX into a separate function.
      sql/sql_parse.cc:
        Fixed bug #18767.
        Placed the code the created a fake SELECT_LEX into a separate function.
      sql/sql_select.cc:
        Fixed bug #18767.
        Changed the condition on which a SELECT is treated as part of a UNION.
        The SELECT in 
        (SELECT ... ORDER BY order_list1 [LIMIT n]) ORDER BY order_list2 
        now is handled in the same way as the first SELECT in a UNION
        sequence.
      sql/sql_union.cc:
        Fixed bug #18767.
        Changed the condition at which a SELECT is treated as part of a UNION.
        The SELECT in 
        (SELECT ... ORDER BY order_list1 [LIMIT n]) ORDER BY order_list2 
        now is handled in the same way as the first SELECT in a UNION
        sequence.
      sql/sql_yacc.yy:
        Fixed bug #18767.
        Changed the condition at which a SELECT is treated as part of a UNION.
        The SELECT in 
        (SELECT ... ORDER BY order_list1 [LIMIT n]) ORDER BY order_list2 
        now is handled in the same way as the first SELECT in a UNION
        sequence. In the same way is handled the SELECT in
        (SELECT ... LIMIT n) ORDER BY order list.
        Yet if there is neither ORDER BY nor LIMIT in the single-select
        union construct
        (SELECT ...) ORDER BY order_list
        then it is still handled as simple select with an order clause.
      9225a51c
  8. 23 Aug, 2005 1 commit
    • unknown's avatar
      WL#2486 - natural and using join according to SQL:2003 · fe24add7
      unknown authored
      * Provide backwards compatibility extension to name resolution of
        coalesced columns. The patch allows such columns to be qualified
        with a table (and db) name, as it is in 4.1.
        Based on a patch from Monty.
      
      * Adjusted tests accordingly to test both backwards compatible name
        resolution of qualified columns, and ANSI-style resolution of
        non-qualified columns.
        For this, each affected test has two versions - one with qualified
        columns, and one without. 
      
      
      mysql-test/include/ps_query.inc:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/bdb.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/innodb.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/join.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/join_nested.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/join_outer.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/null_key.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/order_by.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/ps_2myisam.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/ps_3innodb.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/ps_4heap.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/ps_5merge.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/ps_6bdb.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/ps_7ndb.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/select.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/subselect.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/r/type_ranges.result:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/t/bdb.test:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/t/innodb.test:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/t/join.test:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/t/join_nested.test:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/t/join_outer.test:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/t/null_key.test:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/t/order_by.test:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/t/select.test:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/t/subselect.test:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      mysql-test/t/type_ranges.test:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      sql/sql_base.cc:
        * Applied Monty's patch for backwards compatible name resolution
          of qualified columns. The idea is:
          - When a column is qualified, search for the column in all
            tables/views underlying each natural join. In this case
            natural joins are *not* considered leaves.
          - If a column is not qualified, then consider natural joins
            as leaves, thus directly search the result columns of
            natural joins.
        * Simplified 'find_field_in_tables()' - unified two similar
          loops into one.
      sql/table.cc:
        - Removed method & members not needed after Monty's patch.
      sql/table.h:
        - Removed method & members not needed after Monty's patch.
      tests/mysql_client_test.c:
        Put back old tests to test that coalesced columns of natural joins can be qualified.
      fe24add7
  9. 12 Aug, 2005 1 commit
    • unknown's avatar
      Implementation of WL#2486 - · 7517d7e1
      unknown authored
      "Process NATURAL and USING joins according to SQL:2003".
      
      * Some of the main problems fixed by the patch:
        - in "select *" queries the * expanded correctly according to
          ANSI for arbitrary natural/using joins
        - natural/using joins are correctly transformed into JOIN ... ON
          for any number/nesting of the joins.
        - column references are correctly resolved against natural joins
          of any nesting and combined with arbitrary other joins.
      
      * This patch also contains a fix for name resolution of items
        inside the ON condition of JOIN ... ON - in this case items must
        be resolved only against the JOIN operands. To support such
        'local' name resolution, the patch introduces a stack of
        name resolution contexts used at parse time.
      
      NOTICE:
      - This patch is not complete in the sense that
        - there are 2 test cases that still do not pass -
          one in join.test, one in select.test. Both are marked
          with a comment "TODO: WL#2486".
        - it does not include a new test specific for the task
      
      
      mysql-test/include/ps_query.inc:
        Adjusted according to standard NATURAL/USING join semantics.,
      mysql-test/r/bdb.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/derived.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/errors.result:
        The column as a whole cannot be resolved, so different error message.
      mysql-test/r/fulltext.result:
        Adjusted according to standard JOIN ... ON semantics =>
        the ON condition can refer only to the join operands.
      mysql-test/r/fulltext_order_by.result:
        More detailed error message.
      mysql-test/r/innodb.result:
        Adjusted according to standard NATURAL/USING join semantics.
        This test doesn't pass completetly yet!
      mysql-test/r/insert_select.result:
        More detailed error message.
      mysql-test/r/join.result:
        Adjusted according to standard NATURAL/USING join semantics.
        
        NOTICE: there is one test case that still fails, and it is
        commeted out and marked with WL#2486 in the test file.
      mysql-test/r/join_crash.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/join_nested.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/join_outer.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/multi_update.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/null_key.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/order_by.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/ps_2myisam.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/ps_3innodb.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/ps_4heap.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/ps_5merge.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/ps_6bdb.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/ps_7ndb.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/select.result:
        Adjusted according to standard NATURAL/USING join semantics.
        
        NOTICE: there is one failing test case which is commented with
        WL#2486 in the test file.
      mysql-test/r/subselect.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/type_ranges.result:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/r/union.result:
        More detailed error message.
      mysql-test/t/bdb.test:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/t/errors.test:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/t/fulltext.test:
        Adjusted according to standard JOIN ... ON semantics =>
        the ON condition can refer only to the join operands.
      mysql-test/t/fulltext_order_by.test:
        More detailed error message.
      mysql-test/t/innodb.test:
        Adjusted according to standard NATURAL/USING join semantics.
        This test doesn't pass completetly yet!
      mysql-test/t/insert_select.test:
        More detailed error message.
      mysql-test/t/join.test:
        Adjusted according to standard NATURAL/USING join semantics.
        
        NOTICE: there is one test case that still fails, and it is
        commeted out and marked with WL#2486 in the test file.
      mysql-test/t/join_crash.test:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/t/join_nested.test:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/t/join_outer.test:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/t/null_key.test:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/t/order_by.test:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/t/select.test:
        Adjusted according to standard NATURAL/USING join semantics.
        
        NOTICE: there is one test case that still fails, and it is
        commeted out and marked with WL#2486 in the test file.
      mysql-test/t/subselect.test:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/t/type_ranges.test:
        Adjusted according to standard NATURAL/USING join semantics.
      mysql-test/t/union.test:
        More detailed error message.
      sql/item.cc:
        - extra parameter to find_field_in_tables
        - find_field_in_real_table renamed to find_field_in_table
        - fixed comments/typos
      sql/item.h:
        - added [first | last]_name_resolution_table to class
          Name_resolution_context
        - commented old code
        - standardized formatting
      sql/mysql_priv.h:
        - refactored the find_field_in_XXX procedures,
        - added a new procedure for natural join table references,
        - renamed the find_field_in_XXX procedures to clearer names
      sql/sp.cc:
        - pass the top-most list of the FROM clause to setup_tables
        - extra parameter to find_field_in_tables
      sql/sql_acl.cc:
        - renamed find_field_in_table => find_field_in_table_ref
        - extra parameter to find_field_in_table_ref
        - commented old code
      sql/sql_base.cc:
        This file contains the core of the implementation of the processing
        of NATURAL/USING joins (WL#2486).
        - added many comments to old code
        - refactored the group of find_field_in_XXX procedures, and added a
          new procedure for natural joins. There is one find_field_in_XXX procedure
          per each type of table reference (stored table, merge view, or natural
          join); one meta-procedure that selects the correct one depeneding on the
          table reference; and one procedure that goes over a list of table
          referenes.
        - NATURAL/USING joins are processed through the procedures:
            mark_common_columns, store_natural_using_join_columns,
            store_top_level_join_columns, setup_natural_join_row_types.
          The entry point to processing NATURAL/USING joins is the
          procedure 'setup_natural_join_row_types'.
        - Replaced the specialized Field_iterator_XXX iterators with one
          generic iterator over the fields of a table reference.
        - Simplified 'insert_fields' and 'setup_conds' due to encapsulation of
          the processing of natural joins in a separate set of procedures.
      sql/sql_class.h:
        - Commented old code.
      sql/sql_delete.cc:
        - Pass the FROM clause to setup_tables.
      sql/sql_help.cc:
        - pass the end name resolution table to find_field_in_tables
        - adjust the list of tables for name resolution
      sql/sql_insert.cc:
        - Changed the code that saves and restores the current context to
          support the list of tables for name resolution -
          context->first_name_resolution_table, and
          table_list->next_name_resolution_table.
          Needed to support an ugly trick to resolve inserted columns only in
          the first table.
        - Added Name_resolution_context::[first | last]_name_resolution_table.
        - Commented old code
      sql/sql_lex.cc:
        - set select_lex.parent_lex correctly
        - set correct state of the current name resolution context
      sql/sql_lex.h:
        - Added a stack of name resolution contexts to support local
          contexts for JOIN ... ON conditions.
        - Commented old code.
      sql/sql_load.cc:
        - Pass the FROM clause to setup_tables.
      sql/sql_olap.cc:
        - Pass the FROM clause to setup_tables.
      sql/sql_parse.cc:
        - correctly set SELECT_LEX::parent_lex
        - set the first table of the current name resoltion context
        - added support for NATURAL/USING joins
        - commented old code
      sql/sql_select.cc:
        - Pass the FROM clause to setup_tables.
        - Pass the end table to find_field_in_tables
        - Improved comments
      sql/sql_show.cc:
        - Set SELECT_LEX::parent_lex.
      sql/sql_update.cc:
        - Pass the FROM clause to setup_tables.
      sql/sql_yacc.yy:
        - Added support for a stack of name resolution contexts needed to
          implement name resolution for JOIN ... ON. A context is pushed
          for each new JOIN ... ON, and popped afterwards.
        - Added support for NATURAL/USING joins.
      sql/table.cc:
        - Added new class Natural_join_column to hide the heterogeneous
          representation of column references for stored tables and for
          views.
        - Added a new list TABLE_LIST::next_name_resolution_table to
          support name resolution with NATURAL/USING joins. Also added
          other members to TABLE_LIST to support NATURAL/USING joins.
        - Added a generic iterator over the fields of table references
          of various types - class Field_iterator_table_ref
      sql/table.h:
        - Added new class Natural_join_column to hide the heterogeneous
          representation of column references for stored tables and for
          views.
        - Added a new list TABLE_LIST::next_name_resolution_table to
          support name resolution with NATURAL/USING joins. Also added
          other members to TABLE_LIST to support NATURAL/USING joins.
        - Added a generic iterator over the fields of table references
          of various types - class Field_iterator_table_ref
      tests/mysql_client_test.c:
        Adjusted according to standard NATURAL JOIN syntax.
      7517d7e1
  10. 26 Jan, 2005 1 commit
    • unknown's avatar
      order_by.result, order_by.test: · 235edc21
      unknown authored
        Added test case for bug #7672 that existed only in 4.0.
      
      
      mysql-test/t/order_by.test:
        Added test case for bug #7672 that existed only in 4.0.
      mysql-test/r/order_by.result:
        Added test case for bug #7672 that existed only in 4.0.
      235edc21
  11. 25 Jan, 2005 1 commit
    • unknown's avatar
      order_by.result, order_by.test: · 8deafa80
      unknown authored
        Added a test case for bug #7672.
      sql_yacc.yy:
        Fixed bug #7672.
        Made queries of the form (SELECT ...) ORDER BY ... to
        be equivalent to SELECT ... ORDER BY ...
      
      
      sql/sql_yacc.yy:
        Fixed bug #7672.
        Made queries of the form (SELECT ...) ORDER BY ... to
        be equivalent to SELECT ... ORDER BY ...
      mysql-test/t/order_by.test:
        Added a test case for bug #7672.
      mysql-test/r/order_by.result:
        Added a test case for bug #7672.
      8deafa80
  12. 18 Jan, 2005 1 commit
    • unknown's avatar
      After merge fixes · a8afc137
      unknown authored
      mysql-test/r/order_by.result:
        After merge fix
      mysql-test/t/symlink.test:
        Comments
      a8afc137
  13. 17 Jan, 2005 1 commit
  14. 15 Jan, 2005 1 commit
    • unknown's avatar
      Enable warnings for 'no default' fields being set to default when they · 2f19824d
      unknown authored
      are not specified in an insert. Most of these changes are actually to
      clean up the test suite to either specify defaults to avoid warnings,
      or add the warnings to the results. Related to bug #5986.
      
      
      mysql-test/t/index_merge_ror.test:
        Set default on columns to avoid warnings
      mysql-test/t/ctype_many.test:
        Add defaults to avoid warnings
      mysql-test/t/ctype_latin1_de.test:
        Add defaults to avoid warnings
      mysql-test/t/gis-rtree.test:
        Remove field that isn't used in test
      mysql-test/t/limit.test:
        set default values
      mysql-test/t/null.test:
        Specify default values
      mysql-test/t/order_by.test:
        add default value
      mysql-test/t/show_check.test:
        Add defaults
      mysql-test/t/sp.test:
        Add default value
      mysql-test/t/type_blob.test:
        Set default value
      mysql-test/t/type_ranges.test:
        Set default values
      mysql-test/r/create.result:
        Update results
      mysql-test/r/ctype_latin1_de.result:
        Update results
      mysql-test/r/ctype_many.result:
        Update results
      mysql-test/r/gis-rtree.result:
        Update results
      mysql-test/r/grant.result:
        Update results
      mysql-test/r/grant2.result:
        Update results
      mysql-test/r/help.result:
        Update results
      mysql-test/r/limit.result:
        Update results
      mysql-test/r/null.result:
        Update results
      mysql-test/r/order_by.result:
        Update results
      mysql-test/r/rpl000001.result:
        Update results
      mysql-test/r/sp.result:
        Update results
      mysql-test/r/strict.result:
        Update results
      mysql-test/r/type_blob.result:
        Update results
      mysql-test/r/type_ranges.result:
        Update results
      mysql-test/r/warnings.result:
        Update results
      sql/sql_insert.cc:
        Change check_that_all_fields_are_given_values() to issue warnings for all
        fields, and not only run when thd->abort_on_warning is set and error on
        just the first field.
      2f19824d
  15. 06 Jan, 2005 1 commit
    • unknown's avatar
      Fix for BUG#7331. · f0cf742f
      unknown authored
      The problem was that when a QUICK_SELECT access method is chosen,
      test_if_skip_sort_order() discovered that the index being used
      by the quick select will not deliver tuples in sorted order.
      In this case test_if_skip_sort_order() tried to change the index
      used by the quick select, but it didn't properly set the other
      members of the quick select, and especially the range flags of
      the ranges in QUICK_SELECT::ranges.
      
      The fix re-invokes the function SQL_SELECT::test_quick_select
      to correctly create a valid QUICK_SELECT object.
      
      
      mysql-test/r/order_by.result:
        Added test results.
      mysql-test/t/order_by.test:
        Added test for BUG#7331.
      sql/sql_select.cc:
        Fix for BUG#7331.
      f0cf742f
  16. 06 Dec, 2004 1 commit
    • unknown's avatar
      Add support for up to VARCHAR (size up to 65535) · a8ea31fa
      unknown authored
      Renamed HA_VAR_LENGTH to HA_VAR_LENGTH_PART
      Renamed in all files FIELD_TYPE_STRING and FIELD_TYPE_VAR_STRING to MYSQL_TYPE_STRING and MYSQL_TYPE_VAR_STRING to make it easy to catch all possible errors
      Added support for VARCHAR KEYS to heap
      Removed support for ISAM
      Now only long VARCHAR columns are changed to TEXT on demand (not CHAR)
      Internal temporary files can now use fixed length tables if the used VARCHAR columns are short
      
      
      BitKeeper/deleted/.del-ha_isam.cc~4dce65904db2675e:
        Delete: sql/ha_isam.cc
      BitKeeper/deleted/.del-_cache.c~b5d80b5c3ae233b1:
        Delete: isam/_cache.c
      BitKeeper/deleted/.del-_dbug.c~88d7964ae5e3c9bd:
        Delete: isam/_dbug.c
      BitKeeper/deleted/.del-_dynrec.c~48dd758f5a5450df:
        Delete: isam/_dynrec.c
      BitKeeper/deleted/.del-_key.c~ce62d47a6c681084:
        Delete: isam/_key.c
      BitKeeper/deleted/.del-_locking.c~dea4cdc6ea425c67:
        Delete: isam/_locking.c
      BitKeeper/deleted/.del-_packrec.c~47ae1b16c007e9be:
        Delete: isam/_packrec.c
      BitKeeper/deleted/.del-_page.c~148b1a613d052ee8:
        Delete: isam/_page.c
      BitKeeper/deleted/.del-_search.c~f509292aa1ff18ff:
        Delete: isam/_search.c
      BitKeeper/deleted/.del-_statrec.c~58d9263b3475d58b:
        Delete: isam/_statrec.c
      BitKeeper/deleted/.del-changed.c~d075de80a314b02d:
        Delete: isam/changed.c
      BitKeeper/deleted/.del-close.c~fd62629496ee5bcc:
        Delete: isam/close.c
      BitKeeper/deleted/.del-create.c~96cecc433c0c2242:
        Delete: isam/create.c
      BitKeeper/deleted/.del-delete.c~65ee8daaa75a14b6:
        Delete: isam/delete.c
      BitKeeper/deleted/.del-extra.c~706f29d72beb2565:
        Delete: isam/extra.c
      BitKeeper/deleted/.del-info.c~96cfb747af8da0d:
        Delete: isam/info.c
      BitKeeper/deleted/.del-isamchk.c~c0f59c2687d2248f:
        Delete: isam/isamchk.c
      BitKeeper/deleted/.del-isamlog.c~85b6b31c6e2b8519:
        Delete: isam/isamlog.c
      BitKeeper/deleted/.del-log.c~55a973013d55cade:
        Delete: isam/log.c
      BitKeeper/deleted/.del-open.c~95b3b75042fae00a:
        Delete: isam/open.c
      BitKeeper/deleted/.del-pack_isam.c~43801f0df7504834:
        Delete: isam/pack_isam.c
      BitKeeper/deleted/.del-panic.c~f7fd71605324f8f3:
        Delete: isam/panic.c
      BitKeeper/deleted/.del-range.c~142f1f8ac4948082:
        Delete: isam/range.c
      BitKeeper/deleted/.del-rfirst.c~66f494291dc005d3:
        Delete: isam/rfirst.c
      BitKeeper/deleted/.del-rkey.c~cc54c6498352f999:
        Delete: isam/rkey.c
      BitKeeper/deleted/.del-rlast.c~d1fe1866139e9866:
        Delete: isam/rlast.c
      BitKeeper/deleted/.del-rnext.c~b308eaa1e11ea7de:
        Delete: isam/rnext.c
      BitKeeper/deleted/.del-rprev.c~b359f71fdea4bbce:
        Delete: isam/rprev.c
      BitKeeper/deleted/.del-rrnd.c~7fcfcce88d4a5200:
        Delete: isam/rrnd.c
      BitKeeper/deleted/.del-rsame.c~75a62d5548103a15:
        Delete: isam/rsame.c
      BitKeeper/deleted/.del-rsamepos.c~5b5652dd2cda6d5d:
        Delete: isam/rsamepos.c
      BitKeeper/deleted/.del-sort.c~e2e56b5a37ce86f4:
        Delete: isam/sort.c
      BitKeeper/deleted/.del-static.c~3a1354b84f4a9cc7:
        Delete: isam/static.c
      BitKeeper/deleted/.del-test1.c~64d52e9412d457ed:
        Delete: isam/test1.c
      BitKeeper/deleted/.del-test2.c~2f9a632cab572958:
        Delete: isam/test2.c
      BitKeeper/deleted/.del-test3.c~e8a7a4afe8a087:
        Delete: isam/test3.c
      BitKeeper/deleted/.del-isamdef.h~ac8d49e7e2201c66:
        Delete: isam/isamdef.h
      BitKeeper/deleted/.del-update.c~670264f51dc44934:
        Delete: isam/update.c
      BitKeeper/deleted/.del-write.c~8f1918b1f6770e54:
        Delete: isam/write.c
      BitKeeper/deleted/.del-Makefile.am~6cfa0db5e7778d09:
        Delete: isam/Makefile.am
      BitKeeper/deleted/.del-make-ccc~3ee55391eda0b0ab:
        Delete: isam/make-ccc
      BitKeeper/deleted/.del-ChangeLog~208984fb7a51e568:
        Delete: isam/ChangeLog
      BitKeeper/deleted/.del-test_all.res~c2aafb49a3a77db7:
        Delete: isam/test_all.res
      BitKeeper/deleted/.del-test_all~93c701e44a9c5b65:
        Delete: isam/test_all
      BitKeeper/deleted/.del-.cvsignore~54f6f0f2d5012561:
        Delete: isam/.cvsignore
      BitKeeper/deleted/.del-ha_isammrg.cc~dc682e4755d77a2e:
        Delete: sql/ha_isammrg.cc
      BitKeeper/deleted/.del-ha_isam.h~bf53d533be3d3927:
        Delete: sql/ha_isam.h
      BitKeeper/deleted/.del-ha_isammrg.h~66fd2e5bfe7207dc:
        Delete: sql/ha_isammrg.h
      acinclude.m4:
        Remove ISAM
      client/mysqldump.c:
        FIELD_TYPE -> MYSQL_TYPE
      client/mysqltest.c:
        Add missing DBUG_RETURN
      configure.in:
        Remove ISAM
      heap/heapdef.h:
        Add support for VARCHAR
      heap/hp_create.c:
        Add support for VARCHAR
      heap/hp_delete.c:
        Add support for VARCHAR
      heap/hp_hash.c:
        Add support for VARCHAR
        (VARCHAR keys was not supported before)
      heap/hp_rkey.c:
        Add support for VARCHAR
      heap/hp_update.c:
        Add support for VARCHAR
      heap/hp_write.c:
        Add support for VARCHAR
        (Added flag SEARCH_UPDATE to mark that this is an update)
      include/decimal.h:
        Remove not needed my_global.h
      include/m_ctype.h:
        Add support for VARCHAR
      include/my_base.h:
        Add support for VARCHAR
      include/my_handler.h:
        Moved general purpose macro from MyISAM code
      include/mysql_com.h:
        Add support for VARCHAR
      libmysql/libmysql.c:
        Add support for VARCHAR
      libmysqld/Makefile.am:
        Removed ISAM
      myisam/ft_static.c:
        Add support for VARCHAR
      myisam/ft_test1.c:
        Add support for VARCHAR
      myisam/ft_update.c:
        Add support for VARCHAR
      myisam/mi_check.c:
        Add support for VARCHAR
      myisam/mi_create.c:
        Add support for VARCHAR
        - VARCHAR key segments are marked with HA_VAR_LENGTH_PART
      myisam/mi_key.c:
        Add support for VARCHAR
        Fixed bug in old VARCHAR code when reading index-only
      myisam/mi_range.c:
        Fixed comment style
      myisam/mi_rnext_same.c:
        Handle case where equal keys can be of different length
      myisam/mi_search.c:
        Add support for VARCHAR
      myisam/mi_test1.c:
        Add support for VARCHAR
      myisam/mi_unique.c:
        Add support for VARCHAR
        (Some new code to handle keys that are equal but have different lengths)
      myisam/mi_write.c:
        Fixed comment
      myisam/myisamchk.c:
        Better infotext if wrong type
      mysql-test/r/bdb.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/create.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/ctype_tis620.result:
        Updated old result and new results for VARCHAR
        (Old code sorted tis620 wrong)
      mysql-test/r/ctype_ucs.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/endspace.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/func_like.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/heap.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/innodb.result:
        Updated old result. This will change a bit when also InnoDB supports VARCHAR
      mysql-test/r/merge.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/myisam.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/mysqldump.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/order_by.result:
        Updated old result and new results for VARCHAR
        (Key length is different for VARCHAR)
      mysql-test/r/ps.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/ps_1general.result:
        Updated results for new .frm version
        Don't print seconds in show full process list as this may change
      mysql-test/r/ps_2myisam.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/ps_3innodb.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/ps_4heap.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/ps_5merge.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/ps_6bdb.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/select.result.es:
        Updated results by hand
      mysql-test/r/select.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/select_found.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/show_check.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/strict.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/subselect.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/system_mysql_db.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/type_blob.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/type_ranges.result:
        Updated old result and new results for VARCHAR
      mysql-test/r/type_ranges.result.es:
        Updated some results by hand
      mysql-test/t/bdb.test:
        Test VARCHAR
      mysql-test/t/ctype_ucs.test:
        Some fixes related to VARCHAR
      mysql-test/t/endspace.test:
        Fixes to make it easier to compare columns with end space
      mysql-test/t/heap.test:
        Test VARCHAR
      mysql-test/t/innodb.test:
        Prepare for testing VARCHAR
      mysql-test/t/myisam.test:
        Test VARCHAR
      mysql-test/t/ps_1general.test:
        Don't show seconds for show processlist
      mysql-test/t/ps_4heap.test:
        Update for VARCHAR
      mysql-test/t/strict.test:
        Fix test for VARCHAR
      mysql-test/t/type_blob.test:
        Update test for VARCHAR
        Note that now you can't store 'a' and 'a ' in an unique varchar/text index if the column is not binary
      mysys/my_handler.c:
        Add support for VARCHAR
      ndb/src/common/util/NdbSqlUtil.cpp:
        Fix for usage of strnncollsp
      scripts/mysql_fix_privilege_tables.sh:
        Simple fix so that my_print_defaults works
      sql/Makefile.am:
        Remove ISAM
      sql/field.cc:
        Add support for VARCHAR
        Fixed the keys for blob's are compared with strnncollsp
        Ensure that old tables from MySQL 4.0 works as they did before.
        (Old VARCHAR will be converted to new VARCHAR on ALTER TABLE)
      sql/field.h:
        Add support for VARCHAR
      sql/field_conv.cc:
        Change FIELD_TYPE_VAR_STRING -> MYSQL_TYPE_VARCHAR
        Added usage of HA_KEY_BLOB_LENGTH
      sql/ha_berkeley.cc:
        Add support for VARCHAR
        Added usage of table->insert_or_update if we would ever want to know in key_cmp if we are changing keys
      sql/ha_heap.cc:
        Add support for VARCHAR
      sql/ha_innodb.cc:
        Changed MYSQL_TYPE_VAR_STRING to MYSQL_TYPE_VARCHAR.
        Waiting for Heikki to add full VARCHAR support
      sql/ha_innodb.h:
        InnoDB doesn't support full VARCHAR yet
      sql/ha_myisam.cc:
        Add support for VARCHAR
      sql/ha_ndbcluster.cc:
        Add support for VARCHAR
      sql/handler.h:
        Added HA_NO_VARCHAR for table handler that doesn't support VARCHAR. In this case MySQL will create a normal CHAR instead
      sql/item.cc:
        Fixed access of already freed memory
        Added support of VARCHAR
        - varchar length is now checked in mysql_prepare
      sql/item_cmpfunc.cc:
        Added new parameter to strncollsp
      sql/item_sum.cc:
        Added new parameter to strncollsp
        FIELD_TYPE -> MYSQL_TYPE
      sql/key.cc:
        Add support for VARCHAR
      sql/opt_range.cc:
        Remove character set parameter from set_key_image()
      sql/opt_sum.cc:
        Remove character set parameter from set_key_image()
      sql/protocol.cc:
        Return MYSQL_TYPE_VAR_STRING instead of MYSQL_TYPE_VARCHAR to clients (to not cause compatiblity problems)
      sql/sql_acl.cc:
        Change key handling code so that we can use CHAR or VARCHAR for the user table columns
      sql/sql_base.cc:
        Remove old, not used code
      sql/sql_help.cc:
        Remove charset from get_key_image
      sql/sql_parse.cc:
        Ensure that OPTION_TABLE_LOCK is cleared ASAP; This fixed a problem in BDB transaction code when one used LOCK TABLES on a BDB table
        Added support for VARCHAR
        Moved field length checking and VARCHAR -> TEXT convert to mysql_prepare (as we need the know the character set for the column)
      sql/sql_select.cc:
        Added support of VARCHAR
        Added heuristic to use fixed size rows for tmp tables if we are using only a few short VARCHAR's
      sql/sql_string.cc:
        Added extra argument to strnncollsp
      sql/sql_table.cc:
        Add support for VARCHAR
        Automaticly convert (with warning) big VARCHAR (but not CHAR) to TEXT
        If handler doesn't support VARCHAR convert VARCHAR to CHAR
      sql/sql_update.cc:
        Fixed compiler warning
      sql/sql_yacc.yy:
        Add support for VARCHAR
      sql/strfunc.cc:
        Fixed valgrind warning
      sql/structs.h:
        Added 'table' to KEY structure to make life easier for some handler functions
      sql/table.cc:
        Add support for VARCHAR
        - New .frm version
        - FIELD_TYPE -> MYSQL_TYPE
      sql/table.h:
        Added insert_or_update; A bool flag a handler can set/reset if needed (for handler internal usage)
      sql/unireg.h:
        Add support for VARCHAR
      strings/ctype-big5.c:
        Added new argument to strnncollsp() to allow one to define if end space are significant or not
        Changed my_like_range... to correctly calculate min_length & max_length
      strings/ctype-bin.c:
        Added new argument to strnncollsp() to allow one to define if end space are significant or not
      strings/ctype-czech.c:
        Changed my_like_range... to correctly calculate min_length & max_length
      strings/ctype-gbk.c:
        Added new argument to strnncollsp() to allow one to define if end space are significant or not
        Changed my_like_range... to correctly calculate min_length & max_length
      strings/ctype-latin1.c:
        Added new argument to strnncollsp() to allow one to define if end space are significant or not
      strings/ctype-mb.c:
        Added new argument to strnncollsp() to allow one to define if end space are significant or not
        Changed my_like_range... to correctly calculate min_length & max_length
      strings/ctype-simple.c:
        Added new argument to strnncollsp() to allow one to define if end space are significant or not
        Changed my_like_range... to correctly calculate min_length & max_length
      strings/ctype-sjis.c:
        Added new argument to strnncollsp() to allow one to define if end space are significant or not
        Changed my_like_range... to correctly calculate min_length & max_length
      strings/ctype-tis620.c:
        Added new argument to strnncollsp() to allow one to define if end space are significant or not
        Changed my_like_range... to correctly calculate min_length & max_length
      strings/ctype-uca.c:
        Added new argument to strnncollsp() to allow one to define if end space are significant or not
      strings/ctype-ucs2.c:
        Changed my_like_range... to correctly calculate min_length & max_length
      strings/ctype-utf8.c:
        Added new argument to strnncollsp() to allow one to define if end space are significant or not
      strings/ctype-win1250ch.c:
        Changed my_like_range... to correctly calculate min_length & max_length
      strings/decimal.c:
        Fixed include files usage
        Fixed some compiler warnings
      tests/client_test.c:
        Ensure tests works with VARCHAR
      a8ea31fa
  17. 25 Nov, 2004 1 commit
  18. 30 Sep, 2004 1 commit
    • unknown's avatar
      Final solution for bug# 4302 "Ambiguos order by when renamed column is · 53edc92c
      unknown authored
      identical to another in result"
      According to SQL standard queries like 
      "select t1.a as col from t1, t2 order by a" should return an error if
      both tables contain field a.
      
      
      mysql-test/r/order_by.result:
        Updated test to conform SQL-standard.
      mysql-test/t/order_by.test:
        Updated test to conform SQL-standard.
      sql/item.cc:
        find_item_in_list() has now one more out parameter which is not used
        in item.cc functions.
      sql/mysql_priv.h:
        find_item_in_list(): Added boolean out parameter "unaliased" which
        indicates that we have found field by its original name and not by
        its alias in item (select) list.
      sql/sql_base.cc:
        find_item_in_list(): Added boolean out parameter "unaliased" which
        indicates that we have found field by its original name and not by
        its alias in item (select) list. This means that additional check is
        required to ensure there will be no ambiguity if we would search for this
        field in all tables.
      sql/sql_select.cc:
        find_order_in_list(): If we have found field in select list by its
        original name and not by its alias then we should perform additional
        check to ensure that there will be no ambiguity if we will search for
        this field in all tables. Also small cleanup.
      53edc92c
  19. 09 Sep, 2004 1 commit
    • unknown's avatar
      After merge fixes of merge with 4.1 that included the new arena code. · 33efc967
      unknown authored
      Fixed (together with Guilhem) bugs in mysqlbinlog regarding --offset
      Prefix addresses with 0x for easier comparisons of debug logs
      Fixed problem where MySQL choosed index-read even if there would be a much better range on the same index
      This fix changed some 'index' queries to 'range' queries in the test suite
      Don't create 'dummy' WHERE clause for trivial WHERE clauses where we can remove the WHERE clause.
      This fix removed of a lot of 'Using where' notes in the test suite.
      Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
      Give NOTE instead of WARNING for safe field-type conversions
      
      
      Makefile.am:
        Don't automaticly update files from bk
      client/mysqlbinlog.cc:
        Merge with 4.1 (+ apply bug fixes for --offset and --start-position)
      include/my_sys.h:
        Faster clear_alloc_root()
      mysql-test/r/bdb.result:
        Updated results after merge
      mysql-test/r/create.result:
        Updated results after merge
      mysql-test/r/func_group.result:
        Updated results after merge
      mysql-test/r/func_if.result:
        Updated results after merge
      mysql-test/r/heap_btree.result:
        Updated results after merge
      mysql-test/r/index_merge.result:
        Updated results after merge
      mysql-test/r/index_merge_ror.result:
        Updated results after merge
      mysql-test/r/innodb.result:
        Updated results after merge
      mysql-test/r/join_outer.result:
        Updated results after merge
      mysql-test/r/mysqlbinlog2.result:
        Updated results after merge
      mysql-test/r/negation_elimination.result:
        Updated results after merge
      mysql-test/r/null.result:
        Updated results after merge
        Added more tests
      mysql-test/r/null_key.result:
        Updated results after merge
        Added more tests
      mysql-test/r/order_by.result:
        Updated results after merge
      mysql-test/r/range.result:
        Updated results after merge
        Added more tests
      mysql-test/r/rpl_charset.result:
        Updated results after merge
      mysql-test/r/sp-error.result:
        Updated results after merge
      mysql-test/r/sp.result:
        Updated results after merge
        Added delete of some stored procedures in an attempt to be able to re-run test even if it aborts in the middle
      mysql-test/r/type_blob.result:
        Updated results after merge
        (Some warnings are now notes)
      mysql-test/r/user_var.result:
        Updated results after merge
        Added more tests
      mysql-test/r/variables.result:
        Updated results after merge
      mysql-test/r/view.result:
        Updated results after merge
      mysql-test/t/mysqlbinlog2.test:
        Updated tests to use new positions
      mysql-test/t/null.test:
        More tests
      mysql-test/t/null_key.test:
        More tests
      mysql-test/t/range.test:
        More tests
      mysql-test/t/rpl_charset.test:
        Avoid big diffs in the future if tests changes
      mysql-test/t/sp-error.test:
        Updated error numbers
      mysql-test/t/sp-security.test:
        Updated error numbers
      mysql-test/t/sp.test:
        Updated results after merge
        Added delete of some stored procedures in an attempt to be able to re-run test even if it aborts in the middle
      mysql-test/t/user_var.test:
        More tests
      mysql-test/t/view.test:
        Updated error numbers
      mysys/my_alloc.c:
        Write into debug log the address of the allocated area
      sql/ha_isam.cc:
        Prefix addresses with 0x for easier comparisons of debug logs
      sql/ha_myisam.cc:
        Prefix addresses with 0x for easier comparisons of debug logs
      sql/ha_ndbcluster.cc:
        Add missing enum to switch
      sql/handler.cc:
        remove compiler warning
      sql/item.cc:
        More debugging
        Simple cleanup
      sql/item.h:
        Move Item::cleanup() to item.cc
      sql/item_cmpfunc.cc:
        Fix arena code
      sql/item_subselect.cc:
        After merge fixes
      sql/item_subselect.h:
        After merge fixes
      sql/item_sum.cc:
        Updated comment
      sql/log_event.cc:
        Remove wrong test
      sql/mysql_priv.h:
        Indentation fixes
      sql/mysqld.cc:
        After merge fixes
        Added 0x to pointers in debug log
      sql/opt_range.cc:
        Fixed problem where MySQL choosed index-read even if there would be a much better range on the same index
        This fix changed some 'index' queries to 'range' queries in the test suite
      sql/set_var.cc:
        Indentation fixes
      sql/sp_head.cc:
        Set state to INITIALIZED to make SP work with new arena code
      sql/sql_base.cc:
        After merge fixes
      sql/sql_class.cc:
        More debugging
        Use clear_alloc_root() instead of init_alloc_root() as the former is faster
      sql/sql_class.h:
        New method 'only_prepare()'
      sql/sql_lex.cc:
        After merge fixes
      sql/sql_lex.h:
        After merge fixes
      sql/sql_parse.cc:
        Fix for timezone tables. (The old way to add timezone tables to global list in 'create_total_list' doesn't work anymore)
        Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
      sql/sql_prepare.cc:
        After merge fixes
      sql/sql_select.cc:
        Don't create 'dummy' WHERE clause for trivial WHERE clauses where we can remove the WHERE clause.
        This fix removed of a lot of 'Using where' notes in the test suite
      sql/sql_table.cc:
        Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
      sql/sql_union.cc:
        After merge fix
      sql/sql_view.cc:
        After merge fix
      sql/table.cc:
        After merge fix
      sql/tztime.cc:
        Update timezone table handling to use new table lists structure
      sql/tztime.h:
        Update timezone table handling to use new table lists structure
      sql/unireg.cc:
        Use 0x before pointers
      33efc967
  20. 07 Sep, 2004 1 commit
  21. 20 Aug, 2004 1 commit
    • unknown's avatar
      Fix for bug#4302 "ambiguos order by when renamed column is identical to another in result" · f9c3cb5f
      unknown authored
      When in find_item_in_list() we are looking for item we should take into account unaliased 
      names of the fields but only if item with such aliased name is not found.
      Also we should ignore aliases when looking for fully specified field.
      
      
      mysql-test/r/order_by.result:
        Fixed wrong (non-standard) test results
        Added test case for bug #4302
        Added tests for other ambiguos and potentially ambigous cases in order by clause
      mysql-test/t/order_by.test:
        Fixed wrong (non-standard) test results
        Added test case for bug #4302
        Added tests for other ambiguos and potentially ambigous cases in order by clause
      sql/sql_select.cc:
        We should ignore only not_found_item errors when searching for item in find_order_in_list() 
        to be able to catch ambiguities.
      f9c3cb5f
  22. 22 Jun, 2004 1 commit
    • unknown's avatar
      Range optimizer fix: · b482176b
      unknown authored
      If cost(full_scan_on_shortest_covering_index) < cost(best_range_scan) <  cost(full_table_scan)
        use full_scan_on_shortest_covering_index
      (before this fix best_range_scan was used)
      
      
      b482176b
  23. 17 May, 2004 1 commit
  24. 15 May, 2004 1 commit
    • unknown's avatar
      bad old merge fixed · b40430e0
      unknown authored
      mysql-test/r/order_by.result:
        buggy results bug#3681
      mysql-test/t/order_by.test:
        test for bug#3681
      b40430e0
  25. 29 Mar, 2004 1 commit
    • unknown's avatar
      false/true -> FALSE/TRUE · ceeaa24d
      unknown authored
      Fixes after last merge
      
      
      mysql-test/r/bdb-crash.result:
        fixed bad merge
      mysql-test/r/myisam.result:
        after merge fix
      mysql-test/r/order_by.result:
        fixed bad merge
      mysql-test/t/order_by.test:
        after merge fix
      sql/field_conv.cc:
        false/true -> FALSE/TRUE
      sql/handler.cc:
        false/true -> FALSE/TRUE
      sql/item.cc:
        false/true -> FALSE/TRUE
      sql/item_cmpfunc.cc:
        false/true -> FALSE/TRUE
      sql/item_sum.cc:
        false/true -> FALSE/TRUE
      sql/slave.cc:
        false/true -> FALSE/TRUE
      sql/sql_acl.cc:
        false/true -> FALSE/TRUE
      sql/sql_cache.cc:
        after merge fix
      sql/sql_help.cc:
        false/true -> FALSE/TRUE
      sql/sql_olap.cc:
        false/true -> FALSE/TRUE
      sql/sql_parse.cc:
        false/true -> FALSE/TRUE
      sql/sql_select.cc:
        fix after bad merge
      sql/sql_table.cc:
        fix after bad merge
      sql/sql_test.cc:
        false/true -> FALSE/TRUE
      ceeaa24d
  26. 26 Mar, 2004 1 commit
    • unknown's avatar
      order_by.result: · 9cc75495
      unknown authored
        result of the test case for FORCE INDEX on ORDER BY
      order_by.test:
        test case for FORCE INDEX on ORDER BY
      sql_select.cc:
        Changing behaviour that MySQL server takes FORCE INDEX clause into account when optimising ORDER BY clause
      
      
      sql/sql_select.cc:
        Changing behaviour that MySQL server takes FORCE INDEX clause into account when optimising ORDER BY clause
      mysql-test/t/order_by.test:
        test case for FORCE INDEX on ORDER BY
      mysql-test/r/order_by.result:
        result of the test case for FORCE INDEX on ORDER BY
      9cc75495
  27. 17 Mar, 2004 1 commit
    • unknown's avatar
      Added test case for the bug #3155: strange results with index (x, y) ... WHERE... · 47f561de
      unknown authored
      Added test case for the bug #3155: strange results with index (x, y) ... WHERE x=val_1 AND y>=val_2 ORDER BY pk;
      (thankee Monty)
      
      
      mysql-test/r/order_by.result:
        Added test case for the bug #3155: strange results with index (x, y) ... WHERE x=val_1 AND y>=val_2 ORDER BY pk;
      mysql-test/t/order_by.test:
        Added test case for the bug #3155: strange results with index (x, y) ... WHERE x=val_1 AND y>=val_2 ORDER BY pk;
      47f561de
  28. 16 Feb, 2004 1 commit
    • unknown's avatar
      After merge fixes · a07e48ec
      unknown authored
      Added more DBUG statements
      Ensure that we are comparing end space with BINARY strings
      Use 'any_db' instead of '' to mean any database. (For HANDLER command)
      Only strip ' ' when comparing CHAR, not other space-like characters (like \t)
      
      
      BitKeeper/deleted/.del-ctype_tis620.result-old~3578ceb0b8284685:
        Delete: mysql-test/r/ctype_tis620.result-old
      BitKeeper/deleted/.del-ctype_tis620.test-old~ffb1bbd2935d1aba:
        Delete: mysql-test/t/ctype_tis620.test-old
      client/mysqlbinlog.cc:
        Added DBUG statements
        Added call of my_end() to free all used memory on exit
      heap/hp_info.c:
        After merge fixes
      heap/hp_open.c:
        After merge fixes
      include/heap.h:
        After merge fixes
      include/m_ctype.h:
        Use pchar instead of 'int' for character parameters.
        Added 'my_binary_compare()'
      include/m_string.h:
        Fixed wrong define
      innobase/ibuf/ibuf0ibuf.c:
        After merge fixes
      innobase/srv/srv0start.c:
        After merge fixes
      mysql-test/r/alter_table.result:
        Fixed results after merge
      mysql-test/r/auto_increment.result:
        Fixed results after merge
      mysql-test/r/bdb.result:
        Fixed results after merge
      mysql-test/r/binary.result:
        Fixed results after merge
      mysql-test/r/create.result:
        Fixed results after merge
      mysql-test/r/ctype_mb.result:
        Fixed results after merge
      mysql-test/r/ctype_tis620.result:
        Fixed results after merge
      mysql-test/r/ctype_utf8.result:
        Fixed results after merge
      mysql-test/r/delete.result:
        Fixed results after merge
      mysql-test/r/func_compress.result:
        Fixed results after merge
      mysql-test/r/func_gconcat.result:
        Fixed results after merge
      mysql-test/r/func_group.result:
        Fixed results after merge
      mysql-test/r/func_str.result:
        Fixed results after merge
      mysql-test/r/innodb.result:
        Fixed results after merge
      mysql-test/r/insert.result:
        Fixed results after merge
      mysql-test/r/insert_select.result:
        Fixed results after merge
      mysql-test/r/key.result:
        Fixed results after merge
      mysql-test/r/loaddata.result:
        Fixed results after merge
      mysql-test/r/lock.result:
        Fixed results after merge
      mysql-test/r/myisam.result:
        Fixed results after merge
      mysql-test/r/null.result:
        Fixed results after merge
      mysql-test/r/null_key.result:
        Fixed results after merge
      mysql-test/r/order_by.result:
        Fixed results after merge
      mysql-test/r/query_cache.result:
        Fixed results after merge
      mysql-test/r/range.result:
        Fixed results after merge
      mysql-test/r/rpl_multi_delete.result:
        Fixed results after merge
      mysql-test/r/rpl_until.result:
        Fixed results after merge
      mysql-test/r/subselect.result:
        Fixed results after merge
      mysql-test/r/subselect_innodb.result:
        Fixed results after merge
      mysql-test/r/type_blob.result:
        Fixed results after merge
      mysql-test/r/type_datetime.result:
        Fixed results after merge
      mysql-test/r/type_decimal.result:
        Fixed results after merge
      mysql-test/r/type_enum.result:
        Fixed results after merge
      mysql-test/r/type_float.result:
        Fixed results after merge
      mysql-test/r/type_ranges.result:
        Fixed results after merge
      mysql-test/r/type_time.result:
        Fixed results after merge
      mysql-test/r/type_timestamp.result:
        Fixed results after merge
      mysql-test/r/type_uint.result:
        Fixed results after merge
      mysql-test/r/type_year.result:
        Fixed results after merge
      mysql-test/r/variables.result:
        Fixed results after merge
      mysql-test/r/warnings.result:
        Fixed results after merge
      mysql-test/t/case.test:
        Fixed shifted error messages
      mysql-test/t/create.test:
        Fixed shifted error messages
      mysql-test/t/ctype_collate.test:
        Fixed shifted error messages
      mysql-test/t/ctype_tis620.test:
        Merge with 4.0 ctype_tis620 test
      mysql-test/t/delete.test:
        Fixed shifted error messages
      mysql-test/t/derived.test:
        Fixed shifted error messages
      mysql-test/t/fulltext.test:
        Fixed shifted error messages
      mysql-test/t/func_in.test:
        Fixed shifted error messages
      mysql-test/t/func_str.test:
        Fixed shifted error messages
      mysql-test/t/func_test.test:
        Fixed shifted error messages
      mysql-test/t/grant.test:
        Fixed shifted error messages
      mysql-test/t/innodb.test:
        Change to 4.1 syntax
      mysql-test/t/key_cache.test:
        Fixed shifted error messages
      mysql-test/t/myisam.test:
        New test of blob and end space
      mysql-test/t/row.test:
        Fixed shifted error messages
      mysql-test/t/rpl_until.test:
        Fixed shifted error messages
      mysql-test/t/subselect.test:
        Fixed shifted error messages
      mysql-test/t/subselect_innodb.test:
        Fix test to take into account foreign key constraints
      mysql-test/t/union.test:
        Fixed shifted error messages
      mysql-test/t/user_var.test:
        Fixed shifted error messages
      mysql-test/t/variables.test:
        Fixed shifted error messages
      mysys/my_handler.c:
        Merge with 4.0 code
      sql/ha_heap.cc:
        After merge fixes
      sql/handler.cc:
        After merge fixes
      sql/item.cc:
        After merge fixes
      sql/item_cmpfunc.cc:
        Ensure that we are comparing end space with BINARY strings
      sql/item_cmpfunc.h:
        Ensure that we are comparing end space with BINARY strings
      sql/log_event.cc:
        More DBUG statements
        Ensure that we use all options to LOAD DATA in replication
      sql/opt_range.cc:
        After merge fixes
      sql/sql_db.cc:
        After merge fixes
      sql/sql_handler.cc:
        After merge fixes
        Use 'any_db' instead of '' to mean 'no database comparison'
      sql/sql_parse.cc:
        After merge fixes
      sql/sql_select.cc:
        After merge fixes
        Added function comment for setup_group()
      sql/sql_string.cc:
        Added stringcmp() for binary comparison.
        Added function comments for sortcmp() and stringcmp()
      sql/sql_string.h:
        Added stringcmp()
      sql/sql_table.cc:
        After merge fixes
      sql/sql_update.cc:
        After merge fixes
      sql/sql_yacc.yy:
        Use 'any_db' instead of '' to mean any database. Using "" causes a 'wrong db name' error.
      strings/ctype-big5.c:
        Strip only end space, not other space characters.
      strings/ctype-bin.c:
        Removed some not needed functions.
        Added function comments
        Don't remove end space in comparisons
        Change my_wildcmp_bin() to be 'identical' with other similar code
      strings/ctype-czech.c:
        Strip only end space, not other space characters.
      strings/ctype-gbk.c:
        Strip only end space, not other space characters.
      strings/ctype-latin1.c:
        Strip only end space, not other space characters.
      strings/ctype-mb.c:
        Strip only end space, not other space characters.
      strings/ctype-simple.c:
        Strip only end space, not other space characters.
      strings/ctype-sjis.c:
        Strip only end space, not other space characters.
      strings/ctype-tis620.c:
        Added usage of my_instr_simple. This needs to be cleaned up!
      strings/ctype-utf8.c:
        Strip only end space, not other space characters.
      strings/ctype-win1250ch.c:
        Strip only end space, not other space characters.
        Fixed indentation
      strings/strto.c:
        Code cleanup
      a07e48ec
  29. 31 Jan, 2004 1 commit
    • unknown's avatar
      fix for the bug #2419: order by ignores rows. · abc17f8f
      unknown authored
      null_ref_key moved to TABLE_REF.
      new null range created if necessary.
      
      
      mysql-test/r/order_by.result:
        fix for the bug #2419: order by ignores rows
      mysql-test/t/order_by.test:
        fix for the bug #2419: order by ignores rows
      sql/item_subselect.cc:
        fix for the bug #2419: order by ignores rows
      sql/opt_range.cc:
        fix for the bug #2419: order by ignores rows
      sql/sql_select.cc:
        fix for the bug #2419: order by ignores rows
      sql/sql_select.h:
        fix for the bug #2419: order by ignores rows
      abc17f8f
  30. 21 Dec, 2003 1 commit
    • unknown's avatar
      Portability fixes found during 5.0 test compilation · d31c6628
      unknown authored
      Fixed bug in ORDER BY on a small column (Bug #2147)
      Fixed error from pthread_mutex_destroy() when one had wrong errmsg file
      
      
      
      client/mysqltest.c:
        Added handling of error on query send
        (Needed for init_connection.test)
      mysql-test/mysql-test-run.sh:
        Added tracing of mysqldump and mysqlbinlog
      mysql-test/r/init_connect.result:
        Updated tests
      mysql-test/r/order_by.result:
        Added test for bug filesort bug
      mysql-test/t/init_connect-master.opt:
        Added proper quoting (for Solaris and OSF)
      mysql-test/t/init_connect.test:
        Portability fix
      mysql-test/t/order_by.test:
        Added test for bug #2147 (bug in filesort)
      sql/filesort.cc:
        Fixed bug in filesort (Bug #2147)
      sql/item.h:
        Clear 'fixed' on cleanup (For prepared statements)
      sql/item_func.cc:
        Protect mutex destroy.
        (Fixed error from pthread_mutex_destroy() when one had wrong errmsg file)
      sql/log_event.cc:
        Portability fix
      sql/sql_class.h:
        Fixed compiler warning
      sql/sql_prepare.cc:
        Portability fix. (Some compilers doesn't support jump over variables declared in for())
      d31c6628
  31. 10 Dec, 2003 1 commit
    • unknown's avatar
      WorkLog#1323 · 80ec8079
      unknown authored
      Deprecate the use of TYPE=... Preferred syntax is ENGINE=
      
      
      include/mysqld_error.h:
        New warning for deprecated syntax
      sql/lex.h:
        Introduce ENGINE keyword
        Sort order of symbols
      sql/share/czech/errmsg.txt:
        New warning for deprecated syntax
      sql/share/danish/errmsg.txt:
        New warning for deprecated syntax
      sql/share/dutch/errmsg.txt:
        New warning for deprecated syntax
      sql/share/english/errmsg.txt:
        New warning for deprecated syntax
      sql/share/estonian/errmsg.txt:
        New warning for deprecated syntax
      sql/share/french/errmsg.txt:
        New warning for deprecated syntax
      sql/share/german/errmsg.txt:
        New warning for deprecated syntax
      sql/share/greek/errmsg.txt:
        New warning for deprecated syntax
      sql/share/hungarian/errmsg.txt:
        New warning for deprecated syntax
      sql/share/italian/errmsg.txt:
        New warning for deprecated syntax
      sql/share/japanese/errmsg.txt:
        New warning for deprecated syntax
      sql/share/korean/errmsg.txt:
        New warning for deprecated syntax
      sql/share/norwegian-ny/errmsg.txt:
        New warning for deprecated syntax
      sql/share/norwegian/errmsg.txt:
        New warning for deprecated syntax
      sql/share/polish/errmsg.txt:
        New warning for deprecated syntax
      sql/share/portuguese/errmsg.txt:
        New warning for deprecated syntax
      sql/share/romanian/errmsg.txt:
        New warning for deprecated syntax
      sql/share/russian/errmsg.txt:
        New warning for deprecated syntax
      sql/share/serbian/errmsg.txt:
        New warning for deprecated syntax
      sql/share/slovak/errmsg.txt:
        New warning for deprecated syntax
      sql/share/spanish/errmsg.txt:
        New warning for deprecated syntax
      sql/share/swedish/errmsg.txt:
        New warning for deprecated syntax
      sql/share/ukrainian/errmsg.txt:
        New warning for deprecated syntax
      sql/sql_show.cc:
        Change TYPE= with ENGINE=
      sql/sql_yacc.yy:
        Introduce ENGINE keyword,
        Deprecate TYPE= syntax,
        Introduce SHOW ENGINE syntax,
        Deprecate SHOW INNODB/BDB syntax.
      mysql-test/r/alias.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/alter_table.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/auto_increment.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/bdb-alter-table-1.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/bdb-crash.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/bdb-deadlock.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/bdb.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/bdb_cache.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/case.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/cast.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/constraints.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/create.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/ctype_collate.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/ctype_latin1_de.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/ctype_many.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/ctype_mb.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/ctype_recoding.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/ctype_ucs.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/delete.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/distinct.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/fulltext.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/fulltext2.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/fulltext_distinct.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/fulltext_left_join.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/func_compress.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/func_date_add.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/func_group.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/func_if.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/func_str.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/func_system.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/func_test.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/func_time.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/gis-rtree.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/group_by.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/handler.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/heap.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/heap_auto_increment.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/heap_btree.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/heap_hash.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/help.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/innodb-deadlock.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/innodb.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/innodb_cache.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/innodb_handler.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/insert_select.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/isam.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/join.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/join_crash.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/join_outer.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/key.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/lock.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/lock_tables_lost_commit.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/merge.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/mix_innodb_myisam_binlog.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/multi_update.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/myisam.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/null.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/null_key.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/order_by.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/query_cache.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/range.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/repair_part1.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/replace.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/rollback.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/rpl000006.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/rpl_flush_tables.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/rpl_insert_id.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/rpl_relayrotate.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/select.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/select_found.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/show_check.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/sql_mode.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/status.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/subselect.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/subselect2.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/subselect_innodb.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/symlink.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/temp_table.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/type_blob.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/type_datetime.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/type_enum.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/type_nchar.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/type_set.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/union.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/update.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/r/warnings.result:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/alias.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/alter_table.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/auto_increment.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/bdb-alter-table-1.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/bdb-crash.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/bdb-deadlock.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/bdb.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/bdb_cache.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/create.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/ctype_ucs.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/delete.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/distinct.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/fulltext.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/fulltext2.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/fulltext_distinct.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/fulltext_left_join.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/func_compress.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/func_date_add.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/func_group.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/func_if.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/func_str.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/func_test.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/func_time.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/gis-rtree.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/group_by.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/handler.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/heap.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/heap_auto_increment.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/heap_btree.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/heap_hash.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/help.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/innodb-deadlock.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/innodb.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/innodb_cache.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/innodb_handler.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/insert_select.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/isam.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/join.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/join_crash.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/join_outer.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/key.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/lock.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/lock_tables_lost_commit.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/merge.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/mix_innodb_myisam_binlog.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/multi_update.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/myisam.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/null.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/null_key.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/order_by.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/outfile.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/query_cache.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/query_cache_merge.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/range.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/repair_part1.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/replace.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/rollback.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/rpl000006.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/rpl_flush_tables.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/rpl_insert_id.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/rpl_relayrotate.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/select.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/select_found.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/show_check.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/sql_mode.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/status.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/subselect.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/subselect2.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/subselect_innodb.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/symlink.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/temp_table.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/type_datetime.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/type_set.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/union.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/update.test:
        Change occurances of TYPE= to ENGINE=
      mysql-test/t/warnings.test:
        Change occurances of TYPE= to ENGINE=
        New test for deprecated syntax
      80ec8079
  32. 28 Nov, 2003 1 commit
  33. 04 Nov, 2003 1 commit
    • unknown's avatar
      Removed some warnings reported by valgrind · 0712ce9e
      unknown authored
      After merge fixes.
      Now code compiles, but there is still some valgrind warnings that needs to be fixed
      
      
      myisam/mi_rnext_same.c:
        handle case where rtree_find_next() returns an error
        (assume this means that there was no more keys)
      myisam/rt_index.c:
        Code cleanup
      mysql-test/r/func_crypt.result:
        Update results
      mysql-test/r/func_group.result:
        Update results
      mysql-test/r/null_key.result:
        Update results
      mysql-test/r/order_by.result:
        Update results
      mysql-test/r/query_cache.result:
        Update results
      mysql-test/r/range.result:
        Update results
      mysql-test/r/rpl_trunc_binlog.result:
        Update results
      mysql-test/t/fulltext.test:
        Fix error numbers
      mysql-test/t/func_crypt.test:
        Fixed test for 4.1
      mysql-test/t/range.test:
        Moved tests to be in sync with 4.0
      mysys/test_charset.c:
        Removed acccess to non existing functions
      sql-common/client.c:
        Merge fix
      sql/item_strfunc.cc:
        Simple code cleanup
        Don't call ->c_ptr() when you don't need a 0 terminated string
        (Causes warnings from valgrind)
      sql/log_event.cc:
        After merge fixes
      sql/protocol.cc:
        Change default catalog name to 'def'
      sql/spatial.cc:
        Code cleanup
      sql/sql_class.cc:
        After merge fixes
      sql/time.cc:
        Ensure that time object is cleared on error
      sql/unireg.cc:
        Removed warning reported by valgrind
      0712ce9e
  34. 03 Nov, 2003 1 commit
    • unknown's avatar
      fix for bug #1724 'WHERE ... IN() optimizer behaviour · 22bc137c
      unknown authored
      has changed since 4.0.14'
      We need to calculate cost of RANGE
      scan if it is present instead of cost of 
      FULL scan.
      
      
      mysql-test/r/order_by.result:
        more accurate row estimation
        for RANGE scan
      mysql-test/r/range.result:
        added test case for bug #1724
        'WHERE ... IN() optimizer behaviour has changed since 4.0.14'
      mysql-test/r/select.result:
        please ignore
      mysql-test/t/range.test:
        added test case for bug #1724
        'WHERE ... IN() optimizer behaviour has changed since 4.0.14'
      sql/sql_select.cc:
        fix for bug #1724 'WHERE ... IN() optimizer behaviour 
        has changed since 4.0.14'
        We need to calculate cost of RANGE
        scan instead of cost of FULL scan
        if RANGE is present
        Few comments cleaned up.
      22bc137c
  35. 08 Oct, 2003 1 commit
    • unknown's avatar
      Fixes after merge · 1ead85e6
      unknown authored
      mysql-test/std_data/trunc_binlog.000001:
        Rename: mysql-test/std_data/trunc_binlog.001 -> mysql-test/std_data/trunc_binlog.000001
      client/mysqltest.c:
        Fixed merge problem
      mysql-test/mysql-test-run.sh:
        Fixed merge problem
      mysql-test/r/distinct.result:
        Fix after merge
      mysql-test/r/drop_temp_table.result:
        Fix after merge
      mysql-test/r/join_outer.result:
        Fix after merge
      mysql-test/r/mysqldump.result:
        Fix after merge
      mysql-test/r/null_key.result:
        Fix after merge
      mysql-test/r/order_by.result:
        Fix after merge
      mysql-test/r/rpl_alter.result:
        Fix after merge
      mysql-test/r/rpl_loaddata.result:
        Fix after merge
      mysql-test/r/rpl_loaddata_rule_m.result:
        Fix after merge
      mysql-test/r/rpl_trunc_binlog.result:
        Fix after merge
      mysql-test/r/select_safe.result:
        Fix after merge
      mysql-test/t/insert.test:
        Fix after merge
      mysql-test/t/mysqlbinlog.test:
        Fix after merge
      mysql-test/t/rpl000009.test:
        Fix after merge
      mysql-test/t/rpl_alter.test:
        Fix after merge
      mysql-test/t/rpl_loaddata_rule_m.test:
        Fix after merge
      mysql-test/t/rpl_trunc_binlog.test:
        Fix after merge
      sql-common/client.c:
        Fix after merge
      sql/item_subselect.cc:
        Fix after merge
      sql/repl_failsafe.cc:
        Fix after merge
      sql/slave.cc:
        Fix after merge
      sql/sql_insert.cc:
        Fix after merge
      1ead85e6
  36. 17 Sep, 2003 1 commit
    • unknown's avatar
      Applied Monty corrections to the FULL SCAN · c5e6bcea
      unknown authored
      optimiser bug patch.
      
      
      mysql-test/r/distinct.result:
        test results reverted
      mysql-test/r/order_by.result:
        test results reverted
      sql/sql_select.cc:
        found_constrain renamed to found_constraint
        We don't perform full cartesian product in 
        case when JOIN BUFFER is used: it was taken
        into account.
        s->read_time may contain range index read time,
        so to get full table scan time is necessary to
        call s->table->file->scan_time().
      c5e6bcea
  37. 18 Aug, 2003 1 commit
    • unknown's avatar
      After merge fixes · 2901c3b8
      unknown authored
      Use server character set if --default-character-set is not used
      Added convert_string() for more efficient alloc+character-set convert of strings
      
      
      BitKeeper/deleted/.del-convert.result~a3b56e1db6f498e9:
        Delete: mysql-test/r/convert.result
      BitKeeper/deleted/.del-convert.test~f4ceb743194dfe72:
        Delete: mysql-test/t/convert.test
      BitKeeper/deleted/.del-make_win_src_distribution.old~5c9ebdc4a852b43b:
        Delete: scripts/make_win_src_distribution.old
      client/mysql.cc:
        Use server character set if --default-character-set is not used
      client/mysqltest.c:
        Code cleanup (merge identical code)
        More debug messages
      heap/hp_create.c:
        After merge fix
      include/m_ctype.h:
        After merge fix
      include/my_global.h:
        Remove size_str (we already have size_s)
      include/mysql_com.h:
        After merge fix
      libmysql/libmysql.c:
        After merge fix
      libmysqld/Makefile.am:
        After merge fix
      mysql-test/r/auto_increment.result:
        After merge fix
      mysql-test/r/create.result:
        After merge fix
      mysql-test/r/ctype_latin1_de.result:
        After merge fix
      mysql-test/r/distinct.result:
        After merge fix
      mysql-test/r/drop.result:
        After merge fix
      mysql-test/r/fulltext.result:
        After merge fix
      mysql-test/r/func_gconcat.result:
        After merge fix
      mysql-test/r/func_str.result:
        After merge fix
      mysql-test/r/func_test.result:
        After merge fix
      mysql-test/r/grant.result:
        After merge fix
      mysql-test/r/group_by.result:
        After merge fix
      mysql-test/r/handler.result:
        After merge fix
      mysql-test/r/heap.result:
        After merge fix
      mysql-test/r/heap_btree.result:
        After merge fix
      mysql-test/r/heap_hash.result:
        After merge fix
      mysql-test/r/innodb.result:
        After merge fix
      mysql-test/r/insert.result:
        After merge fix
      mysql-test/r/insert_select.result:
        After merge fix
      mysql-test/r/join_outer.result:
        After merge fix
      mysql-test/r/key.result:
        After merge fix
      mysql-test/r/key_cache.result:
        After merge fix
      mysql-test/r/loaddata.result:
        After merge fix
      mysql-test/r/myisam.result:
        After merge fix
      mysql-test/r/null.result:
        After merge fix
      mysql-test/r/null_key.result:
        After merge fix
      mysql-test/r/order_by.result:
        After merge fix
      mysql-test/r/rpl_do_grant.result:
        After merge fix
      mysql-test/r/rpl_error_ignored_table.result:
        After merge fix
      mysql-test/r/rpl_ignore_grant.result:
        After merge fix
      mysql-test/r/rpl_loaddata.result:
        After merge fix
      mysql-test/r/rpl_log.result:
        After merge fix
      mysql-test/r/rpl_log_pos.result:
        After merge fix
      mysql-test/r/rpl_max_relay_size.result:
        After merge fix
      mysql-test/r/rpl_replicate_do.result:
        After merge fix
      mysql-test/r/rpl_reset_slave.result:
        After merge fix
      mysql-test/r/rpl_rotate_logs.result:
        After merge fix
      mysql-test/r/rpl_user_variables.result:
        After merge fix
      mysql-test/r/select.result:
        After merge fix
      mysql-test/r/select_safe.result:
        After merge fix
      mysql-test/r/subselect.result:
        After merge fix
      mysql-test/r/type_blob.result:
        After merge fix
      mysql-test/r/type_decimal.result:
        After merge fix
      mysql-test/r/type_float.result:
        After merge fix
      mysql-test/r/type_ranges.result:
        After merge fix
      mysql-test/r/type_time.result:
        After merge fix
      mysql-test/r/type_uint.result:
        After merge fix
      mysql-test/r/union.result:
        After merge fix
      mysql-test/r/warnings.result:
        After merge fix
      mysql-test/t/auto_increment.test:
        After merge fix
      mysql-test/t/case.test:
        After merge fix
      mysql-test/t/ctype_collate.test:
        After merge fix
      mysql-test/t/ctype_latin1_de.test:
        After merge fix
      mysql-test/t/drop.test:
        After merge fix
      mysql-test/t/func_in.test:
        After merge fix
      mysql-test/t/func_set.test:
        After merge fix
      mysql-test/t/func_str.test:
        After merge fix
      mysql-test/t/func_test.test:
        After merge fix
      mysql-test/t/grant.test:
        After merge fix
      mysql-test/t/group_by.test:
        After merge fix
      mysql-test/t/handler.test:
        After merge fix
      mysql-test/t/heap.test:
        After merge fix
      mysql-test/t/heap_btree.test:
        After merge fix
      mysql-test/t/heap_hash.test:
        After merge fix
      mysql-test/t/innodb.test:
        After merge fix
      mysql-test/t/insert_select.test:
        After merge fix
      mysql-test/t/key.test:
        After merge fix
      mysql-test/t/key_cache.test:
        After merge fix
      mysql-test/t/lock_tables_lost_commit-master.opt:
        After merge fix
      mysql-test/t/lock_tables_lost_commit.test:
        After merge fix
      mysql-test/t/myisam.test:
        After merge fix
      mysql-test/t/row.test:
        After merge fix
      mysql-test/t/subselect.test:
        After merge fix
      mysql-test/t/type_decimal.test:
        After merge fix
      mysql-test/t/type_ranges.test:
        After merge fix
      mysql-test/t/type_uint.test:
        After merge fix
      mysql-test/t/variables.test:
        After merge fix
      mysql-test/t/warnings.test:
        After merge fix
      scripts/make_win_src_distribution.sh:
        after merge fixes
      sql-common/client.c:
        After merge fix
        Change my_connect() to use poll()
        If character set is not given, use servers character set.
      sql/field.cc:
        After merge fix
        Don't give warnings when storing data in fields in optimizer.
      sql/ha_myisammrg.h:
        After merge fix
      sql/log.cc:
        After merge fix
      sql/log_event.cc:
        After merge fix
      sql/mysqld.cc:
        After merge fix
      sql/opt_range.cc:
        After merge fix
      sql/set_var.cc:
        Code cleanup
        Fixed wrong usage of base_names (like medium.key_buffer) that caused core dumps
      sql/set_var.h:
        Fixed wrong usage of base_names (like medium.key_buffer) that caused core dumps
      sql/slave.cc:
        After merge fix
      sql/sql_acl.cc:
        After merge fix
        Code cleanup
      sql/sql_class.cc:
        Added convert_string() for more efficient alloc+character-set convert of strings
        Add cached flags to avoid calling mysql_charset_same() during parsing.
      sql/sql_class.h:
        Added convert_string() for more efficient alloc+character-set convert of strings
        Add cached flags to avoid calling mysql_charset_same() during parsing.
      sql/sql_handler.cc:
        After merge fix
      sql/sql_lex.h:
        After merge fix
      sql/sql_parse.cc:
        Optimize and fix memory reference errors reported by valgrind
      sql/sql_repl.cc:
        After merge fix
      sql/sql_yacc.yy:
        After merge fix
        Avoid calling mysql_charset_same() when parsing identifiers
      strings/ctype-latin1.c:
        Port latin_de conversion code from 4.0
      2901c3b8
  38. 29 Jun, 2003 1 commit
  39. 27 Jun, 2003 1 commit
    • unknown's avatar
      Added thread variable max_seeks_for_key · c2cb9b97
      unknown authored
      Change optimizer to prefer key lookups before table scan
      Change table scans to be done after tables with constrains on scanned table 
      
      
      mysql-test/r/distinct.result:
        Update results
      mysql-test/r/group_by.result:
        Update results
      mysql-test/r/heap.result:
        Update results
      mysql-test/r/join.result:
        Update results
      mysql-test/r/key_diff.result:
        Update results
      mysql-test/r/myisam.result:
        Update results
      mysql-test/r/order_by.result:
        Update results
      mysql-test/r/select_safe.result:
        Update results
      mysql-test/t/distinct.test:
        Change test to be repeatable
      mysql-test/t/join.test:
        Change test to be repeatable
      mysql-test/t/select_safe.test:
        Add tests for MAX_SEEKS_FOR_KEY
      sql/handler.h:
        Optimize structure for 64 bit machines (and to avoid problems with gdb)
      sql/item_cmpfunc.cc:
        Initialize not_null_tables_cache properly
      sql/mysqld.cc:
        Added max_seeks_for_key
      sql/set_var.cc:
        Added max_seeks_for_key
      sql/sql_class.h:
        Added max_seeks_for_key
      sql/sql_select.cc:
        Added max_seeks_for_key
        Change optimizer to prefer key lookups before table scan.
        Change table scans to be done after tables with constrains on scanned table
      c2cb9b97