1. 29 Mar, 2007 3 commits
  2. 28 Mar, 2007 4 commits
    • unknown's avatar
      Merge mysql.com:/home/psergey/mysql-4.1-bug26625 · edd5a859
      unknown authored
      into  mysql.com:/home/psergey/mysql-4.1-bug26624-r2
      
      
      edd5a859
    • unknown's avatar
      BUG#26624: high mem usage (crash) in range optimizer · 9639eb3d
      unknown authored
      - Added PARAM::alloced_sel_args where we count the # of SEL_ARGs
        created by SEL_ARG tree cloning operations.
      - Made the range analyzer to shortcut and not do any more cloning 
        if we've already created MAX_SEL_ARGS SEL_ARG objects in cloning.
      - Added comments about space complexity of SEL_ARG-graph 
        representation.
      
      
      mysql-test/r/range.result:
        BUG#26624: Testcase
      mysql-test/t/range.test:
        BUG#26624: Testcase
      9639eb3d
    • unknown's avatar
      Delete: sql/mysqld.cc.rej · 60189d35
      unknown authored
      60189d35
    • unknown's avatar
      BUG#26625: crash in range optimizer (out of mem) · 425304f5
      unknown authored
      - Define Sql_alloc::operator new() as thow() so that C++ compiler
        handles NULL return values
      (there is no testcase as there is no portable way to set limit on the 
      amount of memory that a process can allocate)
      
      
      sql/sql_list.h:
        BUG#26625: crash in range optimizer (out of mem) 
        - Define Sql_alloc::operator new() as thow() so that C++ compiler
          handles NULL return values
      425304f5
  3. 27 Mar, 2007 1 commit
    • unknown's avatar
      Fixed bug #27348. · ec3de562
      unknown authored
      If a set function with a outer reference s(outer_ref) cannot be aggregated 
      the outer query against which the reference has been resolved then MySQL
      interpretes s(outer_ref) in the same way as it would interpret s(const).
      Hovever the standard requires throwing an error in this situation.
      Added some code to support this requirement in ansi mode.
      Corrected another minor bug in Item_sum::check_sum_func.
       
      
      
      mysql-test/r/subselect.result:
        Added a test case for bug #27348.
      mysql-test/t/subselect.test:
        Added a test case for bug #27348.
      sql/item_sum.cc:
        Fixed bug #27348.
        If a set function with a outer reference s(outer_ref) cannot be aggregated 
        the outer query against which the reference has been resolved then MySQL
        interprets s(outer_ref) in the same way as it would interpret s(const).
        Hovever the standard requires throwing an error in this situation.
        Added some code to support this requirement in ansi mode.
        Corrected another minor bug in Item_sum::check_sum_func.
      ec3de562
  4. 26 Mar, 2007 10 commits
    • unknown's avatar
      WL3527: 5.1 · 689910ac
      unknown authored
       renamed "--old-mode" to "--old" to prevent
       ambiguity.
       "old" now appears in SHOW VARIABLES as a
       read-only option.
      
      
      mysql-test/r/group_by.result:
        WL3527: 5.1 test case
      mysql-test/t/group_by.test:
        WL3527: 5.1 test case
      sql/mysqld.cc:
        WL3527: 5.1
         renamed the "old-mode" to "old" to fit
         the options naming scheme
      sql/set_var.cc:
        WL3527: 5.1
         added "-old" as read-only system variable
      sql/set_var.h:
        WL3527: 5.1
         added class for boolean pointer read-only 
         option to support the "--old" option.
      sql/sql_base.cc:
        fixed 5.0->5.1 merge problems.
      689910ac
    • unknown's avatar
      Merge magare.gmz:/home/kgeorge/mysql/work/WL3527-5.0-opt · e256e9a9
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/work/WL3527-after-merge-5.1-opt
      
      
      mysql-test/r/select.result:
        null-merge
      mysql-test/t/select.test:
        null-merge
      sql/sql_yacc.yy:
        null-merge
      e256e9a9
    • unknown's avatar
      Merge magare.gmz:/home/kgeorge/mysql/work/WL3527-5.0-opt · 9887430f
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/work/WL3527-5.1-opt
      
      
      mysql-test/r/gis.result:
        Auto merged
      mysql-test/t/gis.test:
        Auto merged
      sql/field.h:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item_sum.cc:
        Auto merged
      sql/item_sum.h:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_delete.cc:
        Auto merged
      sql/sql_insert.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      mysql-test/r/subselect.result:
        merge 5.0-opt -> 5.1-opt
      mysql-test/t/subselect.test:
        merge 5.0-opt -> 5.1-opt
      sql/sql_base.cc:
        merge 5.0-opt -> 5.1-opt
      9887430f
    • unknown's avatar
      WL3527: 5.0 part: · 6e93d293
      unknown authored
      enabled the optional FOR JOIN to all the three
      clauses : USE, FORCE and IGNORE
      
      
      mysql-test/r/select.result:
        WL3527: 5.0 part: test cases
      mysql-test/t/select.test:
        WL3527: 5.0 part: test cases
      6e93d293
    • unknown's avatar
      Merge magare.gmz:/home/kgeorge/mysql/work/B27164-4.1-opt · ec5051ff
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/work/B27164-5.0-opt
      
      
      mysql-test/t/gis.test:
        Auto merged
      mysql-test/r/gis.result:
        merge 4.1-opt -> 5.0-opt
      sql/field.h:
        merge 4.1-opt -> 5.0-opt
      ec5051ff
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.1-opt · a88dac08
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/work/B26303-5.1-opt
      
      
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      a88dac08
    • unknown's avatar
      Bug #27164: not reseting the data pointer · 3335f68d
      unknown authored
       to 0 causes wrong (large) length to be read
       from the row in _mi_calc_blob_length() when 
       storing NULL values in (e.g) POINT columns.
       This large length is then used to allocate
       a block of memory that (on some OSes) causes
       trouble.
       Fixed by calling the base class's 
       Field_blob::reset() from Field_geom::reset()
       that is called when storing a NULL value into
       the column.
      
      
      mysql-test/r/gis.result:
        Bug #27164: test case
      mysql-test/t/gis.test:
        Bug #27164: test case
      sql/field.h:
        Bug #27164: not reseting the data pointer
         to 0 causes wrong (large) length to be read
         from the row in _mi_calc_blob_length() when 
         storing NULL values in (e.g) POINT columns.
         This large length is then used to allocate
         a block of memory that (on some OSes) causes
         trouble.
      3335f68d
    • unknown's avatar
      Bug #26303: Reserve is not called before qs_append(). · 9e6a5959
      unknown authored
      This may lead to buffer overflow.
      The String::qs_append() function will append a string
      without checking if there's enough space.
      So qs_append() must be called beforehand to ensure 
      there's enough space in the buffer for the subsequent 
      qs_append() calls.
      Fixed Item_case_expr::print() to make sure there's
      enough space before appending data by adding a call to 
      String::reserve() to make sure qs_append() will have 
      enough space.
      
      
      mysql-test/r/sp-code.result:
        Bug #26303: test case
      mysql-test/t/sp-code.test:
        Bug #26303: test case
      sql/item.cc:
        Bug #26303: added a call to String::reserve() to
         make sure qs_append will have enough space
      sql/item.h:
        Bug #26303: m_case_expr_id made unsigned 
        because it's offset in an array.
      9e6a5959
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · 43afb278
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug27229
      
      
      43afb278
    • unknown's avatar
      This is a fix for the memory corruption occurred in one of test cases · d95c307f
      unknown authored
      from func_group.test after the patch for bug #27229 had been applied.
      The memory corruption happened because in some rare cases the function
      count_field_types underestimated the number of elements in
      in the array param->items_to_copy.
      
      
      sql/item_sum.cc:
        The return value of the Item_sum::update_used_tables method
        should not depend on the place of aggregation of the set 
        function for which the Item_sum object has been created.
      sql/sql_select.cc:
        This is a fix for the memory corruption occurred in one of test cases
        from func_group.test after the patch for bug #27229 had been applied.
        The memory corruption happened because in some rare cases the function
        count_field_types underestimated the number of elements in
        in the array param->items_to_copy.
        
        Currently it's not guaranteed that after JOIN::prepare() the 
        used_tables attribute is calculated for all items. For example
        for the expression SUM(outer_ref)+1 used_tables() must return
        OUTER_REF_TABLE_BIT. Yet by the moment when the used_tables
        attribute is calculated in JOIN::prepare SUM(outer_ref) has
        not been substituted for Item_aggregate_ref yet.
        By this reason additional calls of the method update_used_tables
        are needed for some items passed as parameters to the function
        create_tmp_table.
      d95c307f
  5. 23 Mar, 2007 4 commits
  6. 22 Mar, 2007 18 commits
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · a220fc48
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug27229
      
      
      sql/item.cc:
        Auto merged
      sql/item_sum.cc:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      a220fc48
    • unknown's avatar
      Fixed bug #27229: crash when a set function aggregated in outer · 1f8bdbe4
      unknown authored
      context was used as an argument of GROUP_CONCAT.
      Ensured correct setting of the depended_from field in references
      generated for set functions aggregated in outer selects.
      A wrong value of this field resulted in wrong maps returned by 
      used_tables() for these references.
      Made sure that a temporary table field is added for any set function
      aggregated in outer context when creation of a temporary table is 
      needed to execute the inner subquery. 
      
      
      mysql-test/r/subselect.result:
        Added a test case for bug #27229.
      mysql-test/t/subselect.test:
        Added a test case for bug #27229.
      sql/item.cc:
        Fixed bug #27229: crash when a set function aggregated in outer
        context was used as an argument of GROUP_CONCAT.
        Ensured correct setting of the depended_from field in references
        generated for set functions aggregated in outer selects.
      sql/item_sum.cc:
        Fixed bug #27229: crash when a set function aggregated in outer
        context was used as an argument of GROUP_CONCAT.
        Added the field aggr_sel to the objects of the class Item_sum.
        In any Item_sum object created for a set function this field 
        has to contain a pointer to the select where the set function
        is aggregated.
      sql/item_sum.h:
        Fixed bug #27229: crash when a set function aggregated in outer
        context was used as an argument of GROUP_CONCAT.
        Added the field aggr_sel to the objects of the class Item_sum.
        In any Item_sum object created for a set function this field 
        has to contain a pointer to the select where the set function
        is aggregated.
        Added a method that says whether a set function is aggregated
        in outer context and, if so, returns the aggregating select.
        Removed the field nest_level_tables_count introduced by the
        patch for bug 24484 as aggr_sel->join->tables contains the
        sane number.
      sql/sql_base.cc:
        Fixed bug #27229: crash when a set function aggregated in outer
        context was used as an argument of GROUP_CONCAT.
        Added the field aggr_sel to the objects of the class Item_sum.
        Removed changes introduced by the patch for bug 24484 as 
        the field leaf_count of the THD class is not used anymore.
      sql/sql_class.h:
        Fixed bug #27229: crash when a set function aggregated in outer
        context was used as an argument of GROUP_CONCAT.
        Added the field aggr_sel to the objects of the class Item_sum.
        Removed changes introduce by the patch for bug 24484 as 
        the field leaf_count of the THD class is not used anymore.
      sql/sql_insert.cc:
        Fixed bug #27229: crash when a set function aggregated in outer
        context was used as an argument of GROUP_CONCAT.
        Added the field aggr_sel to the objects of the class Item_sum.
        Removed changes introduce by the patch for bug 24484 as 
        the field leaf_count of the THD class is not used anymore.
      sql/sql_select.cc:
        Fixed bug #27229: crash when a set function aggregated in outer
        context was used as an argument of GROUP_CONCAT.
        When creating a temporary table a field is added in it for any 
        set function aggregated in outer context.
      1f8bdbe4
    • unknown's avatar
      merging · b4efce0c
      unknown authored
      b4efce0c
    • unknown's avatar
      Merge mysql.com:/home/hf/work/mrg/mysql-5.0-opt · 7bc01344
      unknown authored
      into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt
      
      
      sql/sql_view.cc:
        Auto merged
      7bc01344
    • unknown's avatar
      merging · 3aa9cea3
      unknown authored
      3aa9cea3
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 3e6787d3
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/26813-bug-5.0-opt-mysql
      
      
      3e6787d3
    • unknown's avatar
      sql_view.cc: · 842eaa44
      unknown authored
        Post-fix for bug#26813.
      
      
      sql/sql_view.cc:
        Post-fix for bug#26813.
      842eaa44
    • unknown's avatar
      Merge mysql.com:/home/hf/work/mrg/mysql-5.0-opt · 646b2cbb
      unknown authored
      into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt
      
      
      mysql-test/r/view_grant.result:
        Auto merged
      mysql-test/t/view_grant.test:
        Auto merged
      sql/sql_view.cc:
        Auto merged
      646b2cbb
    • unknown's avatar
      Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 3206447b
      unknown authored
      into  mysql.com:/home/hf/work/mrg/mysql-5.0-opt
      
      
      3206447b
    • unknown's avatar
      Merge mysql.com:/home/hf/work/mrg/mysql-5.0-opt · 2c5395ee
      unknown authored
      into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt
      
      
      mysql-test/r/insert_select.result:
        Auto merged
      mysql-test/t/insert_select.test:
        Auto merged
      sql/field.h:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item_sum.cc:
        Auto merged
      sql/sql_select.h:
        Auto merged
      mysql-test/r/create.result:
        merging
      mysql-test/r/temp_table.result:
        SCCS merged
      mysql-test/r/type_float.result:
        merging
      mysql-test/r/union.result:
        merging
      mysql-test/t/temp_table.test:
        merging
      2c5395ee
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-5.0-opt · b8c101df
      unknown authored
      into  mysql.com:/home/hf/work/mrg/mysql-5.0-opt
      
      
      b8c101df
    • unknown's avatar
      Merge mysql.com:/home/hf/work/mrg/mysql-5.0-opt · 3a222d57
      unknown authored
      into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt
      
      
      sql/item_cmpfunc.cc:
        Auto merged
      3a222d57
    • unknown's avatar
      Merge mysql.com:/home/hf/work/mrg/mysql-4.1-opt · 45b55666
      unknown authored
      into  mysql.com:/home/hf/work/mrg/mysql-5.0-opt
      
      
      45b55666
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-5.1 · 1cc700a7
      unknown authored
      into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt
      
      
      sql/item_cmpfunc.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      1cc700a7
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-5.0 · 96793a96
      unknown authored
      into  mysql.com:/home/hf/work/mrg/mysql-5.0-opt
      
      
      sql/item_cmpfunc.cc:
        Auto merged
      96793a96
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-4.1 · 55f991c2
      unknown authored
      into  mysql.com:/home/hf/work/mrg/mysql-4.1-opt
      
      
      55f991c2
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 9558c66c
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/26813-bug-5.0-opt-mysql
      
      
      9558c66c
    • unknown's avatar
      Bug#26813: The SUPER privilege is wrongly required to alter a view created by · 9b774e8f
      unknown authored
      another user.
      
      When the DEFINER clause isn't specified in the ALTER statement then it's loaded
      from the view definition. If the definer differs from the current user then
      the error is thrown because only a super-user can set other users as a definers.
      
      Now if the DEFINER clause is omitted in the ALTER VIEW statement then the
      definer from the original view is used without check.
      
      
      mysql-test/t/view_grant.test:
        Added a test case for the bug#27006: The SUPER privilege is wrongly required
        to alter a view created by another user.
      mysql-test/r/view_grant.result:
        Added a test case for the bug#27006: The SUPER privilege is wrongly required
        to alter a view created by another user.
      sql/sql_view.cc:
        Bug#26813: The SUPER privilege is wrongly required to alter a view created by
        another user.
        Now if the DEFINER clause is omitted in the ALTER VIEW statement then the
        definer from the original view is used without check.
      9b774e8f