An error occurred fetching the project authors.
  1. 31 May, 2006 1 commit
    • unknown's avatar
      BUG#18198: Many strange partition functions were allowed, now only strictly... · a706b2a3
      unknown authored
      BUG#18198: Many strange partition functions were allowed, now only strictly allowed functions are ok
      
      
      mysql-test/r/partition_error.result:
        New test cases
      mysql-test/t/partition_error.test:
        New test cases
      sql/item.h:
        Added method check_partition_func_processor for check if item tree is valid
      sql/item_cmpfunc.h:
        Added method check_partition_func_processor for check if item tree is valid
      sql/item_func.h:
        Added method check_partition_func_processor for check if item tree is valid
      sql/item_strfunc.h:
        Added method check_partition_func_processor for check if item tree is valid
      sql/item_timefunc.h:
        Added method check_partition_func_processor for check if item tree is valid
      sql/item_xmlfunc.h:
        Added method check_partition_func_processor for check if item tree is valid
      a706b2a3
  2. 25 Apr, 2006 2 commits
    • unknown's avatar
      Fix compile failure on Win32 · 3486ba01
      unknown authored
      3486ba01
    • unknown's avatar
      BUG#15872: Don't run the range analyzer on "t1.keypart NOT IN (const1, ..., )", as that consumes · 15e00f1f
      unknown authored
      too much memory. Instead, either create the equvalent SEL_TREE manually, or create only two ranges that
      strictly include the area to scan
      (Note: just to re-iterate: increasing NOT_IN_IGNORE_THRESHOLD will make optimization run slower for big 
      IN-lists, but the server will not run out of memory. O(N^2) memory use has been eliminated)
      
      
      mysql-test/r/func_in.result:
        Testcase for BUG#15872
      mysql-test/t/func_in.test:
        Testcase for BUG#15872
      sql/item.cc:
        BUG#15872: Added Item_decimal::set_decimal_value()
      sql/item.h:
        UG#15872: Added Item_decimal::set_decimal_value()
      sql/item_cmpfunc.h:
        BUG#15872: Added in_vector::create_item(), in_vector::value_to_item() and their implementations in concrete
        classes.
      sql/opt_range.cc:
        BUG#15872: Don't run the range analyzer on "t1.keypart NOT IN (const1, ..., )", as that 
        consumes too much memory. Instead, either 
         A) create the equivalent SEL_TREE manually, making use of the fact that item_not_in->array
            has an ordered IN-list, or
         B) create only two ranges: (-inf|NULL) < X < min_value_from_in_list,  max_value_from_in_list < X
        (Choose #B if the IN-list has > 10K elements)
      15e00f1f
  3. 08 Apr, 2006 1 commit
    • unknown's avatar
      BUG#18198: Errors due to too much allowed in partition functions · 09250cc6
      unknown authored
      Added functions to enable/disable allowed/disallowed partition functions
      
      
      sql/item.h:
        Added functions to enable/disable allowed/disallowed partition functions
      sql/item_cmpfunc.h:
        Added functions to enable/disable allowed/disallowed partition functions
      sql/item_func.h:
        Added functions to enable/disable allowed/disallowed partition functions
      sql/item_strfunc.h:
        Added functions to enable/disable allowed/disallowed partition functions
      sql/item_timefunc.h:
        Added functions to enable/disable allowed/disallowed partition functions
      sql/item_xmlfunc.h:
        Added functions to enable/disable allowed/disallowed partition functions
      sql/partition_info.cc:
        Added functions to enable/disable allowed/disallowed partition functions
      sql/share/errmsg.txt:
        Added new error message
      09250cc6
  4. 04 Apr, 2006 1 commit
  5. 01 Apr, 2006 1 commit
    • unknown's avatar
      Fixed bug #16504. · 5ef6e903
      unknown authored
      Multiple equalities were not adjusted after reading constant tables.
      It resulted in neglecting good index based methods that could be
      used to access of other tables.
      
      
      mysql-test/r/having.result:
        Adjusted a test case results after fix for bug #16504.
      mysql-test/r/select.result:
        Added a test case for bug #16504.
      mysql-test/r/subselect.result:
        Adjusted a test case results after fix for bug #16504.
      mysql-test/r/varbinary.result:
        Adjusted a test case results after fix for bug #16504.
      mysql-test/t/select.test:
        Added a test case for bug #16504.
      sql/item.cc:
        Fixed bug #16504.
        An Item_equal object may contain only a constant member.
        It may happen after reading constant tables.
      sql/item_cmpfunc.cc:
        Fixed bug #16504.
        Added method Item_equal::check_const that check appearance of new 
        constant items in a multiple equality.
      sql/item_cmpfunc.h:
        Fixed bug #16504.
        Added method Item_equal::check_const that check appearance of new 
        constant items in a multiple equality.
      sql/sql_select.cc:
        Fixed bug #16504.
        Adjusted multiple equalities after reading constant tables.
        Fixed a few typo in comments.
      5ef6e903
  6. 25 Feb, 2006 1 commit
    • unknown's avatar
      Fixed compiler warnings from gcc 4.0.2: · f5f01b15
      unknown authored
      - Added empty constructors and virtual destructors to many classes and structs
      - Removed some usage of the offsetof() macro to instead use C++ class pointers
      
      
      configure.in:
        Added comment
      ndb/include/ndbapi/NdbDictionary.hpp:
        Fixed compiler warnings from gcc 4.0.2
      sql/field.cc:
        Fixed compiler warnings from gcc 4.0.2
      sql/handler.h:
        Fixed compiler warnings from gcc 4.0.2
      sql/item.h:
        Fixed compiler warnings from gcc 4.0.2
      sql/item_cmpfunc.h:
        Fixed compiler warnings from gcc 4.0.2
      sql/log_event.h:
        Fixed compiler warnings from gcc 4.0.2
      sql/mysql_priv.h:
        Fixed compiler warnings from gcc 4.0.2
        For find_table_in_list I fixed it to use proper C++ class pointers instead of C style pointers
      sql/opt_range.cc:
        Fixed compiler warnings from gcc 4.0.2
      sql/parse_file.h:
        Fixed compiler warnings from gcc 4.0.2
      sql/sp_rcontext.h:
        Fixed compiler warnings from gcc 4.0.2
      sql/spatial.h:
        Fixed compiler warnings from gcc 4.0.2
      sql/sql_base.cc:
        Fixed compiler warnings from gcc 4.0.2
      sql/sql_cache.h:
        Fixed compiler warnings from gcc 4.0.2
      sql/sql_class.h:
        Fixed compiler warnings from gcc 4.0.2
      sql/sql_parse.cc:
        Fixed compiler warnings from gcc 4.0.2
        (Not pretty, but seams to work...)
      sql/sql_select.h:
        Fixed compiler warnings from gcc 4.0.2
      sql/sql_update.cc:
        Fixed compiler warnings from gcc 4.0.2
      sql/table.h:
        Fixed compiler warnings from gcc 4.0.2
      sql/tztime.cc:
        Fixed compiler warnings from gcc 4.0.2
      sql/tztime.h:
        Fixed compiler warnings from gcc 4.0.2
      f5f01b15
  7. 14 Jan, 2006 1 commit
    • unknown's avatar
      A fix and a test case for Bug#12734 " prepared statement may · 04a78106
      unknown authored
      return incorrect result set for a select SQL request"
      
      
      mysql-test/r/ps.result:
        Test results fixed (Bug#12734)
      mysql-test/t/ps.test:
        A test case for Bug#12734
      sql/item_cmpfunc.cc:
        Reset canDoTurboBM in Item_func_like::cleanup()
      sql/item_cmpfunc.h:
        Add Item_func_like::cleanup()
      04a78106
  8. 11 Jan, 2006 1 commit
    • unknown's avatar
      Fixed bug #15633: Evaluation of Item_equal for non-const table caused wrong · 593bed0d
      unknown authored
      select result
      
      Item equal objects are employed only at the optimize phase. Usually they are not
      supposed to be evaluated.  Yet in some cases we call the method val_int() for
      them. Here we have to take care of restricting the predicate such an object
      represents f1=f2= ...=fn to the projection of known fields fi1=...=fik.
      
      Added a check for field's table being const in Item_equal::val_int().
      If the field's table is not const val_int() just skips that field when
      evaluating Item_equal.
      
      
      mysql-test/t/select.test:
        Added test case for bug #15633: Evaluation of Item_equal for non-const table caused wrong select result
      mysql-test/r/select.result:
        Added test case for bug #15633: Evaluation of Item_equal for non-const table caused wrong select result
      mysql-test/r/func_group.result:
        Corrected test result for bug #12882 after fix for bug#15633
      sql/item_cmpfunc.h:
        Fixed bug #15633: Evaluation of Item_equal for non-const table caused wrong select result
        Added comment about fields from non-const tables in class description.
      sql/item_cmpfunc.cc:
        Fixed bug #15633: Evaluation of Item_equal for non-const table caused wrong select result
        Added check for field's table being const in Item_equal::val_int().
      593bed0d
  9. 09 Dec, 2005 1 commit
    • unknown's avatar
      Fix bug #15268 Unchecked null value caused server crash · cb06e0c1
      unknown authored
      cmp_item_sort_string::cmp() wasn't checking values_res variable for null.
      Later called function was dereferenced it and crashed server.
      
      Added null check to cmp_item_sort_string::cmp().
      
      
      
      sql/item_cmpfunc.h:
        Fix bug#15268  Unchecked null value caused server crash
        Added null check to cmp_item_sort_string::cmp().
      mysql-test/t/select.test:
        Test case for bug#15268 Unchecked null value caused server crash
      mysql-test/r/select.result:
        Test case for bug#15268 Unchecked null value caused server crash
      cb06e0c1
  10. 21 Oct, 2005 1 commit
    • unknown's avatar
      fix for bug #12595 (ESCAPE must be exactly 1 character long) · ccc051cd
      unknown authored
      ESCAPE has length of 1 if specified and sql_mode is NO_BACKSLASH_ESCAPES
      or has length of 0 or 1 in every other situation.
      (approved patch applied on a up-to-date tree re-commit) 
      
      
      mysql-test/r/select.result:
        results of test for bug 12595
      mysql-test/t/select.test:
        test for bug #12595 (ESCAPE must be exactly one character long)
      sql/item_cmpfunc.cc:
        if ESCAPE was in the statement check whether its length is
        different than 1. In NO_BACKSLASH_ESCAPES mode only length of 1 is
        allowed, otherwise the length could be 0 or 1 character (code point
        in the sense of Unicode).
      sql/item_cmpfunc.h:
        pass variable from the parsing stage - whether
        ESCAPE clause was found in the statement
      sql/sql_help.cc:
        pass FALSE for escape_used_in_parsing because we
        want the default mode of no error checking - our internal code.
      sql/sql_lex.cc:
        initialized variable used to transfer information during
        parsing up in the stack when reducing in the grammar
      sql/sql_lex.h:
        new variable used for transfering information when
        reducing in the grammar.
      sql/sql_yacc.yy:
        initialize Lex->escape_used and then use it when reducing.
        This is needed as fix for bug #12595 to distinguish between
        situation where ESCAPE was found and when not because internally
        we may pass a string an empty string and there is no other way
        to find out whether this is correct or not in case of 
        NO_BACKSLASH_ESCAPES mode, which allows only length of 1 if
        ESCAPE is part of the SQL statement.
      ccc051cd
  11. 29 Sep, 2005 1 commit
    • unknown's avatar
      Many files: · 72340d67
      unknown authored
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      my_regex.h:
        Rename: regex/regex.h -> regex/my_regex.h
      
      
      client/mysqltest.c:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      os2/MySQL-Source.icc:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/Makefile.am:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/debug.c:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/debug.ih:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/engine.c:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/engine.ih:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/main.c:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/main.ih:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/regcomp.c:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/regerror.c:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/regerror.ih:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/my_regex.h:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/regexec.c:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/regfree.c:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      regex/reginit.c:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      sql/item_cmpfunc.cc:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      sql/item_cmpfunc.h:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      sql/mysqld.cc:
        Prefix regex functions/types with "my_" as our
        library is not compatible with normal regex lib.
      72340d67
  12. 08 Sep, 2005 1 commit
  13. 06 Sep, 2005 2 commits
    • unknown's avatar
      item_cmpfunc.h: · f1cc5049
      unknown authored
        Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
         for some expressions.
         The classes Item_func_between, Item_func_if, Item_func_in are modified.
         Item_func_between/in objects can represent now [NOT]BETWEEN/IN expressions.
         The class Item_func_opt_neg is added to factor out the functionality
         common for the modified classes Item_func_between and Item_func_in.
      item_cmpfunc.cc:
        Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
         for some expressions.
         Added Item_func_between::fix_fields(), Item_func_if::fix_fields(),
         Item_func_in::fix_fields(). They correct generic calculation of
         the not_null_tables attribute when it is needed.
         Modified Item_func_between::val_int(), Item_func_in::val_int().
      opt_range.cc:
        Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
         for some expressions.
         The function get_mm_tree() is modified. There cannot be NOT before
         BETWEEN/IN anymore. Rather Item_func_between/in objects can represent
         now [NOT]BETWEEN/IN expressions.
      sql_yacc.yy:
        Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
         for some expressions.
         Item_func_between/in objects can represent now [NOT]BETWEEN/IN expresions.
      join_outer.result:
        Fixed some testcases results (bugs #12101, #12102)
      join_outer.test:
        Added testcases for bugs #12101, #12102
      
      
      mysql-test/t/join_outer.test:
        Added testcases for bugs #12101, #12102
      mysql-test/r/join_outer.result:
        Fixed some testcases results (bugs #12101, #12102)
      sql/sql_yacc.yy:
        Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
         for some expressions.
         Item_func_between/in objects can represent now [NOT]BETWEEN/IN expresions.
      sql/opt_range.cc:
        Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
         for some expressions.
         The function get_mm_tree() is modified. There cannot be NOT before
         BETWEEN/IN anymore. Rather Item_func_between/in objects can represent
         now [NOT]BETWEEN/IN expressions.
      sql/item_cmpfunc.cc:
        Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
         for some expressions.
         Added Item_func_between::fix_fields(), Item_func_if::fix_fields(),
         Item_func_in::fix_fields(). They correct generic calculation of
         the not_null_tables attribute when it is needed.
         Modified Item_func_between::val_int(), Item_func_in::val_int().
      sql/item_cmpfunc.h:
        Fixed bugs #12101, #12102: wrong calculation of not_null_tables()
         for some expressions.
         The classes Item_func_between, Item_func_if, Item_func_in are modified.
         Item_func_between/in objects can represent now [NOT]BETWEEN/IN expressions.
         The class Item_func_opt_neg is added to factor out the functionality
         common for the modified classes Item_func_between and Item_func_in.
      f1cc5049
    • unknown's avatar
      item_cmpfunc.h: · e254105b
      unknown authored
        Bug 12611 : ESCAPE + LIKE do not work when the escape char is a multibyte one
        Forgot to commit this file in the previous changeset,
        together with other files.
      
      
      sql/item_cmpfunc.h:
        Bug 12611 : ESCAPE + LIKE do not work when the escape char is a multibyte one
        Forgot to commit this file in the previous changeset,
        together with other files.
      e254105b
  14. 30 Aug, 2005 1 commit
    • unknown's avatar
      Fix bug #12489 wrongly printed strcmp() function results in creation of broken · 0ccb16d6
      unknown authored
      view.
      
      For Item_func_strcmp print() was not defined and for this class was called
      print_op of it's parent class. Because of this strcmp() was printed wrongly
      and this results int creation of broken view.
      
      Added function Item_func_strcmp::print() which correctly prints strcmp()
      function.
      
      
      sql/item_cmpfunc.h:
        Fix bug #12489 wrongly printed strcmp() function results in creation of broken view.
      mysql-test/r/view.result:
        Test case for bug #12489 wrongly printed strcmp() function results in creation of broken view.
      mysql-test/t/view.test:
        Test case for bug #12489 wrongly printed strcmp() function results in creation of broken view.
      0ccb16d6
  15. 18 Aug, 2005 1 commit
    • unknown's avatar
      stop on NULL comparison only if it is allowed (BUG#12509) · 341f8221
      unknown authored
      mysql-test/r/row.result:
        Correct NULL handling in row comporison
      mysql-test/t/row.test:
        Correct NULL handling in row comporison (BUG#12509)
      sql/item_cmpfunc.cc:
        stop on NULL comparison only if it is allowed
      sql/item_cmpfunc.h:
        support optimisation in case of processing WHERE/HAVING, where NULL and FALSE are equal
      341f8221
  16. 13 Aug, 2005 1 commit
    • unknown's avatar
      fixed convertion and handling IN subqueries with rows (BUG#11867) · 19b4760f
      unknown authored
      mysql-test/r/subselect.result:
        testst of IN subqueries with row
      mysql-test/t/subselect.test:
        tests of ion subqueries with row
      sql/item.h:
        add method to prevent of removing Item_ref_null_helper from HAVING
      sql/item_cmpfunc.h:
        Prevented removing of Item_test_isnotnull from HAVING
      sql/item_subselect.cc:
        fixed converting row IN subqueries
      sql/sql_select.cc:
        fixed debug print
      19b4760f
  17. 04 Jul, 2005 2 commits
    • unknown's avatar
      After merge fixes · 5d82b41e
      unknown authored
      mysql-test/r/group_by.result:
        After merge fix
        (Put test in same order as in 4.1)
      mysql-test/t/group_by.test:
        After merge fix
        (Put test in same order as in 4.1)
      sql/item_cmpfunc.cc:
        After merge fix (+ simple fix to not allow compiler to do tail optimization)
      sql/item_cmpfunc.h:
        After merge fix
      5d82b41e
    • unknown's avatar
      Fixes during review of new code · 306ebf7b
      unknown authored
      - Mostly indentation fixes
      - Added missing test
      - Ensure that Item_func_case() checks for stack overruns
      - Use real_item() instead of (Item_ref*) item
      - Fixed wrong error handling
      
      
      myisam/mi_unique.c:
        Improved comments
      myisam/myisampack.c:
        Updated version number
      mysql-test/r/group_by.result:
        Added test that was lost during earlier merge
      mysql-test/r/information_schema.result:
        Safety fix: Drop procedures before used
      mysql-test/t/group_by.test:
        Added test that was lost during earlier merge
      mysql-test/t/information_schema.test:
        Safety fix: Drop procedures before used
      mysys/hash.c:
        Updated comment
      sql/field.cc:
        false -> FALSE
      sql/ha_ndbcluster.cc:
        Fix some style issues
        - No () around argument to 'case'
        - Space before ( in switch and if
        - Removed 'goto'
        - Added {}
        - Added () to make expressions easier to read
        - my_snprintf -> strmov
      sql/handler.cc:
        if( -> if (
      sql/item.cc:
        Indentation changes
      sql/item.h:
        false -> FALSE
      sql/item_cmpfunc.cc:
        Ensure that Item_func_case() check for stack overrun properly
      sql/item_cmpfunc.h:
        Ensure that Item_func_case() check for stack overrun properly
      sql/item_func.cc:
        Indentation fixes
        Fixed wrong goto label
      sql/mysqld.cc:
        Remove test for opt_disable_networking as this flag can never be set here
      sql/opt_range.cc:
        Simplify code
      sql/sql_class.h:
        Move define out from middle of class definition
      sql/sql_parse.cc:
        Remove extra empty lines
      sql/sql_select.cc:
        use real_item() instead of (Item_ref*) item
        Modifed function comment to be align with others
        Simple optimization
      sql/sql_union.cc:
        Portability fix:
        Don't use 'bool_variable|=...'
      sql/sql_view.cc:
        Move List_iterator_fast out from loops (rewind is faster than creating a new itearator)
      strings/ctype-utf8.c:
        if( -> if (
      strings/ctype.c:
        Remove disabled code
      strings/decimal.c:
        Indentation fixes
      strings/xml.c:
        Indentation fixes
      306ebf7b
  18. 01 Jul, 2005 1 commit
    • unknown's avatar
      Name resolution context added (BUG#6443) · b4f595b9
      unknown authored
      include/my_bitmap.h:
        new bitmap operation
      mysql-test/r/view.result:
        added warnings
        Correct inserting data check (absence of default value) for view underlying tables (BUG#6443)
      mysql-test/t/view.test:
        Correct inserting data check (absence of default value) for view underlying tables (BUG#6443)
      mysys/my_bitmap.c:
        new bitmap operation
      sql/field.h:
        index of field in table added
      sql/item.cc:
        Name resolution context added
        table list removed from fix_fields() arguments
      sql/item.h:
        Name resolution context added
        table list removed from fix_fields() arguments
      sql/item_cmpfunc.cc:
        table list removed from fix_fields() arguments
      sql/item_cmpfunc.h:
        table list removed from fix_fields() arguments
      sql/item_func.cc:
        table list removed from fix_fields() arguments
      sql/item_func.h:
        table list removed from fix_fields() arguments
      sql/item_row.cc:
        table list removed from fix_fields() arguments
      sql/item_row.h:
        table list removed from fix_fields() arguments
      sql/item_strfunc.cc:
        fixed server crash on NULL argument
      sql/item_strfunc.h:
        table list removed from fix_fields() arguments
      sql/item_subselect.cc:
        table list removed from fix_fields() arguments
      sql/item_subselect.h:
        table list removed from fix_fields() arguments
      sql/item_sum.cc:
        table list removed from fix_fields() arguments
      sql/item_sum.h:
        table list removed from fix_fields() arguments
      sql/item_timefunc.cc:
        table list removed from fix_fields() arguments
      sql/item_timefunc.h:
        table list removed from fix_fields() arguments
      sql/item_uniq.h:
        table list removed from fix_fields() arguments
      sql/log_event.cc:
        Name resolution context added
      sql/log_event.h:
        Name resolution context added
      sql/mysql_priv.h:
        Name resolution context added
      sql/set_var.cc:
        table list removed from fix_fields() arguments
      sql/share/errmsg.txt:
        new error message
      sql/sp.cc:
        Name resolution context added
      sql/sp_head.cc:
        table list removed from fix_fields() arguments
      sql/sp_head.h:
        Name resolution context added
      sql/sql_base.cc:
        table list removed from fix_fields() arguments
        Name resolution context added
      sql/sql_class.cc:
        renamed variable
      sql/sql_delete.cc:
        Name resolution context added
      sql/sql_derived.cc:
        Name resolution context added
      sql/sql_do.cc:
        table list removed from fix_fields() arguments
      sql/sql_handler.cc:
        Name resolution context added
      sql/sql_help.cc:
        Name resolution context added
      sql/sql_insert.cc:
        Name resolution context added
        table list removed from fix_fields() arguments
      sql/sql_lex.cc:
        Name resolution context added
      sql/sql_lex.h:
        removed resolve mode (information stored into name resolution context)
      sql/sql_load.cc:
        table list removed from fix_fields() arguments
      sql/sql_olap.cc:
        Name resolution context added
      sql/sql_parse.cc:
        Name resolution context added
      sql/sql_prepare.cc:
        table list removed from fix_fields() arguments
      sql/sql_select.cc:
        table list removed from fix_fields() arguments
      sql/sql_show.cc:
        Name resolution context added
      sql/sql_trigger.cc:
        table list removed from fix_fields() arguments
      sql/sql_udf.h:
        table list removed from fix_fields() arguments
      sql/sql_union.cc:
        Name resolution context added
      sql/sql_update.cc:
        Name resolution context added
      sql/sql_view.cc:
        Name resolution context added
      sql/sql_view.h:
        table list removed from fix_fields() arguments
      sql/sql_yacc.yy:
        Name resolution context added
      sql/table.cc:
        Name resolution context added
        merged view processing moved
      sql/table.h:
        merged view processing moved
      b4f595b9
  19. 28 Jun, 2005 1 commit
    • unknown's avatar
      fixed not_null_tables() for IN() (BUG#9393) · 3aca0a0c
      unknown authored
      (IN() remove NULL rows only for tables from first argument (value which we looking for in IN() list) but not for tables from IN() list)
      Also it will be better change Item::not_null_tables() to prohibit this optimisation by default for new created items in 5.0 or 5.1.
      
      
      mysql-test/r/select.result:
        IN with outer join condition
      mysql-test/t/select.test:
        IN with outer join condition
      sql/item_cmpfunc.h:
        correct not_null_tables() for IN
      3aca0a0c
  20. 02 Jun, 2005 1 commit
    • unknown's avatar
      item_func.h: · 21989e7d
      unknown authored
        Fixed bug #9939: a wrong conversion of arguments
        for functions COALESCE and IFNULL.
        The str_op virtual method was added into Item_func_numhybrid.
      item_func.cc:
        Fixed bug #9939: a wrong conversion of arguments
        for functions COALESCE and IFNULL.
        The str_op virtual method was added into Item_func_numhybrid.
      item_cmpfunc.h, item_cmpfunc.cc:
        Fixed bug #9939: a wrong conversion of arguments
        for functions COALESCE and IFNULL.
        Item_func_coalesce and Item_func_ifnull now
        inherit from a modified Item_func_numhybrid.
      case.test, case.result:
        Added test cases for bug #9939.
      
      
      mysql-test/r/case.result:
        Added test cases for bug #9939.
      mysql-test/t/case.test:
        Added test cases for bug #9939.
      sql/item_cmpfunc.cc:
        Fixed bug #9939: a wrong conversion of arguments
        for functions COALESCE and IFNULL.
        Item_func_coalesce and Item_func_ifnull now
        inherit from a modified Item_func_numhybrid.
      sql/item_cmpfunc.h:
        Fixed bug #9939: a wrong conversion of arguments
        for functions COALESCE and IFNULL.
        Item_func_coalesce and Item_func_ifnull now
        inherit from a modified Item_func_numhybrid.
      sql/item_func.cc:
        Fixed bug #9939: a wrong conversion of arguments
        for functions COALESCE and IFNULL.
        The str_op virtual method was added into Item_func_numhybrid.
      sql/item_func.h:
        Fixed bug #9939: a wrong conversion of arguments
        for functions COALESCE and IFNULL.
        he str_op virtual method was added into Item_func_numhybrid.
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      21989e7d
  21. 06 May, 2005 1 commit
    • unknown's avatar
      Fixes while reviewing new code · ab54e167
      unknown authored
      Added option --count to mysqlshow (to show number of rows)
      Fixed possible core dump in information schema
      
      
      client/client_priv.h:
        --count for mysqlshow
      client/mysqlshow.c:
        Added option --count to be used when the user want's number of rows per table in the output
        (We shouldn't use count(*) as default as this can be a slow operation)
      mysys/my_thr_init.c:
        Correct comment
      sql/ha_berkeley.cc:
        Remove not used variable
      sql/ha_berkeley.h:
        Remove not used variable
      sql/ha_innodb.cc:
        Remove not used function
      sql/ha_ndbcluster.cc:
        false -> FALSE
        true -> TRUE
      sql/handler.cc:
        Added and fixed comments
        Remove 'strange' code to remove compiler warnings (better to do things like this with attribute)
      sql/item.cc:
        false -> FALSE
      sql/item_cmpfunc.cc:
        Fixed indentation
      sql/item_cmpfunc.h:
        marked BETWEEN as a bool function
      sql/item_func.cc:
        Simple optimzation
      sql/key.cc:
        Removed wrong code
      sql/log.cc:
        Check result from open_index_file()
      sql/mysql_priv.h:
        Simplyfy some test of netware
      sql/mysqld.cc:
        Fixed indentation
        Check result form open_index_file()
        Simplify code with IF_NETWARE()
      sql/opt_range.cc:
        false -> FALSE
        true -> TRUE
        Fixed indentation
      sql/opt_sum.cc:
        Fixed comments
      sql/sp_head.cc:
        Simple optimzation
        Move variable declarations to begining of blocks
      sql/sql_acl.cc:
        Fix long lines
        Rename xx -> column
        Move declaration to beginning of block
      sql/sql_parse.cc:
        Removed comment
      sql/sql_select.cc:
        Indentation fixes
      sql/sql_show.cc:
        Fixed reference outside of array (possible core dump)
      sql/sql_table.cc:
        Simplify code
        Combine common code
      sql/sql_test.cc:
        false -> FALSE
      sql/sql_trigger.cc:
        false -> false
        true -> TRUE
      sql/sql_yacc.yy:
        Simpler test
      sql/unireg.cc:
        Added comment
      ab54e167
  22. 05 May, 2005 1 commit
    • unknown's avatar
      A lot of fixes to Precision math · 6de14a23
      unknown authored
      Mostly about precision/decimals of the results of the operations
      
      
      include/decimal.h:
        decimal interface changed a little
      sql/field.cc:
        a lot of precision/decimals related changes to the Field_new_decimal
      sql/field.h:
        Field_new_decimal interface changed
      sql/ha_ndbcluster.cc:
        f->precision should be used here
      sql/item.cc:
        precision/decimals counting related changes
      sql/item.h:
        precision/decimals counting related changes
      sql/item_cmpfunc.cc:
        precision/decimals counting related changes
      sql/item_cmpfunc.h:
        precision/decimals counting related changes
      sql/item_func.cc:
        precision/decimals counting related changes
      sql/item_func.h:
        precision/decimals counting related changes
      sql/item_sum.cc:
        precision/decimals counting related changes
      sql/item_sum.h:
        precision/decimals counting related changes
      sql/my_decimal.cc:
        precision/decimals counting related changes
      sql/my_decimal.h:
        precision/decimals counting related changes
      sql/mysqld.cc:
        precision/decimals counting related changes
      sql/set_var.cc:
        precision/decimals counting related changes
      sql/sp_head.cc:
        dbug_decimal_print was replaced with dbug_decimal_as_string
      sql/sql_class.h:
        div_precincrement variable added
      sql/sql_parse.cc:
        precision/decimals counting related changes
      sql/sql_select.cc:
        precision/decimals counting related changes
      sql/sql_show.cc:
        Field::representation_length was removed
      strings/decimal.c:
        decimal_actual_fraction was introduced
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      6de14a23
  23. 04 May, 2005 1 commit
    • unknown's avatar
      BUG#10241 cygwin port: invalid pragma interface directives · 9ab5f614
      unknown authored
       - Introduce ifdefs so we can control when to use #pragma interface on cygwin
      
      
      include/my_global.h:
        Turn on use of #pragma implementation and #pragma interface if compiled with GCC and platform != Cygwin
      include/raid.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/examples/ha_archive.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/examples/ha_example.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/field.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_berkeley.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_blackhole.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_heap.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_innodb.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_isam.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_isammrg.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_myisam.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_myisammrg.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/ha_ndbcluster.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/handler.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_cmpfunc.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_func.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_geofunc.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_strfunc.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_subselect.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_sum.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/item_timefunc.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/opt_range.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/procedure.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/protocol.h:
        replace __GNUC__ with USE_PRAGMA_IMPLEMENTATION
      sql/set_var.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/sql_class.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/sql_list.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/sql_select.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/sql_string.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/sql_udf.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      sql/tztime.h:
        replace __GNUC__ with USE_PRAGMA_INTERFACE
      9ab5f614
  24. 14 Mar, 2005 1 commit
  25. 13 Mar, 2005 3 commits
    • unknown's avatar
      Item_func_isnotnull::not_null_tables - return 0 if not top-level item · 7a105aff
      unknown authored
      mysql-test/r/join_outer.result:
        test for some obscure usage of IS NOT NULL
      mysql-test/t/join_outer.test:
        test for some obscure usage of IS NOT NULL
      7a105aff
    • unknown's avatar
      correct not_null_tables() for XOR and AND · 2427f369
      unknown authored
      correct top_level_item for XOR
      
      
      mysql-test/r/join_outer.result:
        one more test
      mysql-test/t/join_outer.test:
        one more test
      2427f369
    • unknown's avatar
      join_outer.result, join_outer.test: · 7cecea52
      unknown authored
        Added a test case for bug #9017.
      item_cmpfunc.h:
        A wrong not_null_tables method for Item_cond_xor
        caused a conversion of a left join into an inner join
        that was not valid.
      
      
      sql/item_cmpfunc.h:
        A wrong not_null_tables method for Item_cond_xor
        caused a conversion of a left join into an inner join
        that was not valid.
      mysql-test/t/join_outer.test:
        Added a test case for bug #9017.
      mysql-test/r/join_outer.result:
        Added a test case for bug #9017.
      7cecea52
  26. 10 Mar, 2005 1 commit
    • unknown's avatar
      Fix for BUG#8711: "<=>" may have true value for NULL arguments, so make · 7c90fa7b
      unknown authored
      Item_func_equal::not_null_tables() always return 0.
      
      
      mysql-test/r/join_outer.result:
        Testcase for BUG#8711
      mysql-test/t/join_outer.test:
        Testcase for BUG#8711
      sql/item_cmpfunc.h:
        Fix for BUG#8711: "<=>" may have true value for NULL arguments, i.e. it can accept NULL-complemented 
        table rows. This differs from assumptions made in Item_func::not_null_tables(), so add 
        Item_func_equal::not_null_tables().
        Item_func_equal::not_null_tables_cache value doesn't make sense now, but we still let it be
        calculated (and ignore it)
      7c90fa7b
  27. 03 Mar, 2005 1 commit
    • unknown's avatar
      Fixes for bug#8115 "Server Crash with prepared statement" · 2860a772
      unknown authored
       and bug#8849 "problem with insert statement with table alias's": 
      make equality propagation work in stored procedures and prepared 
      statements.
      Equality propagation can change AND/OR structure of ON expressions,
      so the fix is to provide each execution of PS/SP with it's own
      copy of AND/OR tree. We have been doing that already for WHERE clauses,
      now ON clauses are also copied.
      
      
      mysql-test/r/ps.result:
        Bug#8115: test results fixed.
      mysql-test/r/sp.result:
        Bug#8849: test results fixed.
      mysql-test/t/ps.test:
        A test case for Bug#8115 "Server Crash with prepared statement".
      mysql-test/t/sp.test:
        A test case for Bug#8849 "problem with insert statement with table 
        alias's".
      sql/item_cmpfunc.cc:
        Comment a parse tree transformation.
      sql/item_cmpfunc.h:
        Comment how Item_equal works with PS/SP.
      sql/mysql_priv.h:
        Add declaration for init_stmt_after_parse.
      sql/sp_head.cc:
        Call init_stmt_after_parse in restore_lex(), which is used to
        grab TABLE_LIST and SELECT_LEX list of a parsed substatement of
        stored procedure. This is a necessary post-init step which 
        must be done for any statement which can be executed many times.
      sql/sql_prepare.cc:
        Implement init_stmt_after_parse() which prepares AND/OR
        structure of all ON expressions and WHERE clauses of a statement
        for copying.
      sql/sql_select.cc:
        Implementation of equality propagation inspected with regard to 
        prepared statements and stored procedures. We now restore
        AND/OR structure of every ON expression in addition to AND/OR
        structure of WHERE clauses when reexecuting a PS/SP.
      sql/table.h:
        Add declaration for TABLE::prep_on_expr.
      2860a772
  28. 02 Mar, 2005 1 commit
    • unknown's avatar
      bug#8151 - truncate leaves a transaction open · e1ba1632
      unknown authored
      deadlock in MYSQL_LOG::new_file()
      style fixes
      
      
      mysql-test/r/innodb.result:
        one more test for truncate
      mysql-test/t/innodb.test:
        one more test for truncate
      sql/ha_innodb.cc:
        bug#8151 - truncate leaves a transaction open
      sql/handler.cc:
        bug#8151 - truncate leaves a transaction open
      sql/item.h:
        style fix
      sql/item_cmpfunc.cc:
        style fix
      sql/item_cmpfunc.h:
        style fix
      sql/item_func.cc:
        style fix
      sql/item_func.h:
        style fix
      sql/log.cc:
        let new_file() to lock LOCK_index,
        don't check for prepared_xids in rotate_and_purge()
        increase thread_safe_increment when LOCK_log is taken
      sql/log_event.cc:
        mysqlbinlog now prints a warning if binlog was not closed properly
      sql/sql_class.h:
        comments
      sql/sql_repl.cc:
        DBUG_ENTER tag corrected
      e1ba1632
  29. 08 Feb, 2005 1 commit
    • unknown's avatar
      Precision Math implementation · 91db48e3
      unknown authored
      BitKeeper/etc/ignore:
        Added client/decimal.c client/my_decimal.cc client/my_decimal.h to the ignore list
      91db48e3
  30. 24 Jan, 2005 1 commit
    • unknown's avatar
      fixed column number fetchinmg for subqueries. (BUG#8020) · d514a06a
      unknown authored
      fixed cols() method call (it have to be called only after fix_fields())
      
      
      mysql-test/r/subselect.result:
        Comparison subquery with * and row
      mysql-test/t/subselect.test:
        Comparison subquery with * and row
      sql/item_cmpfunc.h:
        initialization allowed_arg_cols for autodetection
      sql/item_func.cc:
        support of allowed_arg_cols autodetection by first argument
      sql/item_func.h:
        commant
      sql/item_subselect.cc:
        correct column number fetching for subqueries
      sql/sql_lex.h:
        method to check that UNION is prepared
      d514a06a
  31. 18 Jan, 2005 1 commit
    • unknown's avatar
      Fix for valgrind failures in get_mm_tree. · 97d30585
      unknown authored
      mysql-test/r/join_outer.result:
        Corrected table names
      mysql-test/t/join_outer.test:
        Corrected table names
      sql/item_cmpfunc.h:
        Fix for valgrind failure (unitialized read Item_func_trig_cond->const_item_cache in get_mm_tree):
         Since get_mm_tree can be called for an instance of Item_func_trig_cond, make Item_func_trig_cond::const_item() return false.
         get_mm_tree will assume Item_func_trig_cond are unknown functions and will not build range access plans for them
      97d30585
  32. 17 Dec, 2004 1 commit
  33. 29 Nov, 2004 1 commit
    • unknown's avatar
      compatibility fixes · 26fe3289
      unknown authored
      mysql-test/r/strict.result:
        fixed
      mysql-test/r/view.result:
        rolled back
      mysql-test/t/information_schema.test:
        fix for 2GB file size limit
      mysql-test/t/ps_1general.test:
        fix for 2GB file size limit
      mysql-test/t/view.test:
        fix for 2GB file size limit
      sql/field.cc:
        double->int conversion troubles
        cleanup
      sql/item_cmpfunc.h:
        warning fixed
      sql/sql_select.cc:
        division by zero fixed
      26fe3289
  34. 26 Nov, 2004 1 commit
    • unknown's avatar
      Fixes while reviewing code · 60af9206
      unknown authored
      (Cleanups and better bug fixes)
      
      
      mysql-test/r/select.result:
        Fixed test after wrong merge
      mysql-test/t/select.test:
        Fixed test after wrong merge
      scripts/mysql_fix_privilege_tables.sh:
        Don't read defaults files
      sql/item_cmpfunc.cc:
        Fix wrong value for not_null_tables_cache
      sql/item_cmpfunc.h:
        Remove wrong patch (flags are set in fix_length_and_dec())
      sql/item_func.h:
        Fix wrong value for not_null_tables_cache
      sql/slave.cc:
        Fixed indentation
      60af9206
  35. 18 Nov, 2004 1 commit
    • unknown's avatar
      reporting empty result added in case of max/min optimisation of ALL/ANY/SOME subqueries · 9438c2ca
      unknown authored
      fixed null processing in NOT operation used in ALL subquery (Bug #6247)
      
      
      mysql-test/r/subselect.result:
        new tests of ALL/ANY wiews
      mysql-test/t/subselect.test:
        new tests of ALL/ANY wiews
      sql/item_cmpfunc.cc:
        fixed special NOT ALL processing
        fixed processing max/min optimized subqueries with empty results (added methods to detect empty results) and special NOP operation to process them for SOME/ANY sobqueries
      sql/item_cmpfunc.h:
        fixed processing max/min optimized subqueries with empty results (added methods to detect empty results) and special NOP operation to process them for SOME/ANY sobqueries
      sql/item_subselect.cc:
        reporting empty result added for max/min subqueries
      sql/item_subselect.h:
        reporting empty result added for max/min subqueries
      sql/item_sum.cc:
        reporting empty result added fox max/min aggregate functions
      sql/item_sum.h:
        reporting empty result added fox max/min aggregate functions
      sql/sql_class.cc:
        reporting empty result added for max/min subqueries
      sql/sql_parse.cc:
        reporting empty result added for max/min subqueries
      sql/sql_union.cc:
        reporting empty result added for max/min subqueries
      9438c2ca