1. 14 Jun, 2006 1 commit
  2. 11 Jun, 2006 1 commit
  3. 08 Jun, 2006 2 commits
    • unknown's avatar
      Merge mysql.com:/home/kgeorge/mysql/5.0/teamclean · 64742194
      unknown authored
      into  mysql.com:/home/kgeorge/mysql/5.0/B15355
      
      
      64742194
    • unknown's avatar
      Bug #15355: Common natural join column not resolved in prepared statement nested · a7566db7
      unknown authored
        query
      Problem:
      There was a wrong context assigned to the columns that were added in insert_fields()
      when expanding a '*'. When this is done in a prepared statement it causes 
      fix_fields() to fail to find the table that these columns reference.
      Actually the right context is set in setup_natural_join_row_types() called at the 
      end of setup_tables(). However when executed in a context of a prepared statement
      setup_tables() resets the context, but setup_natural_join_row_types() was not
      setting it to the correct value assuming it has already done so.
      
      Solution:
      The top-most, left-most NATURAL/USING join must be set as a 
      first_name_resolution_table in context even when operating on prepared statements.
      
      
      mysql-test/r/join.result:
        testsuite for the bug
      mysql-test/t/join.test:
        testsuite for the bug
      sql/sql_base.cc:
        The context must be set even when executed as prepared statement.
      a7566db7
  4. 06 Jun, 2006 1 commit
    • unknown's avatar
      Fixed bug#15962: CONCAT() in UNION may lead to a data trucation. · 6e80e9a4
      unknown authored
      To calculate its max_length the CONCAT() function is simply sums max_lengths
      of its arguments but when the collation of an argument differs from the 
      collation of the CONCAT() max_length will be wrong. This may lead to a data
      truncation when a tmp table is used, in UNIONS for example.
      
      The Item_func_concat::fix_length_and_dec() function now recalculates the 
      max_length of an argument when the mbmaxlen of the argument differs from the
      mbmaxlen of the CONCAT().
      
      
      mysql-test/t/func_concat.test:
        Added test case for bug#15962:CONCAT() in UNION may lead to a data trucation.
      mysql-test/r/func_concat.result:
        Added test case for bug#15962:CONCAT() in UNION may lead to a data trucation.
      sql/item_strfunc.cc:
        Fixed bug#15962: CONCAT() in UNION may lead to a data trucation.
        The Item_func_concat::fix_length_and_dec() function now recalculates the 
        max_length of an argument when the mbmaxlen of the argument differs from the
        mbmaxlen of the CONCAT().
      6e80e9a4
  5. 03 Jun, 2006 1 commit
    • unknown's avatar
      Merge rurik.mysql.com:/home/igor/mysql-4.1-opt · 5fd2a350
      unknown authored
      into  rurik.mysql.com:/home/igor/mysql-5.0-opt
      
      
      sql/opt_sum.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_select.h:
        Auto merged
      mysql-test/r/func_group.result:
        SCCS merged
      mysql-test/t/func_group.test:
        SCCS merged
      5fd2a350
  6. 02 Jun, 2006 6 commits
    • unknown's avatar
      Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-4.1-opt · ccad0572
      unknown authored
      into  rurik.mysql.com:/home/igor/mysql-4.1-opt
      
      
      ccad0572
    • unknown's avatar
      Fixed bug #18206. · e3e06587
      unknown authored
      The bug report revealed two problems related to min/max optimization:
      1. If the length of a constant key used in a SARGable condition for
      for the MIN/MAX fields is greater than the length of the field an 
      unwanted warning on key truncation is issued;
      2. If MIN/MAX optimization is applied to a partial index, like INDEX(b(4))
      than can lead to returning a wrong result set.
      
      
      mysql-test/r/func_group.result:
        Added test cases for bug #18206.
      mysql-test/t/func_group.test:
        Added test cases for bug #18206.
      sql/opt_sum.cc:
        Fixed bug #18206.
        Suppressed the warning about data truncation when store_val_in_field
        was used to store keys for the field used in MIN/MAX optimization.
        Blocked MIN/MAX optimization for partial keys, such as in INDEX(b(4)).
      sql/sql_select.cc:
        Fixed bug #18206.
        Added a parameter for the function store_val_in_field allowing to
        control setting warnings about data truncation in the function.
      sql/sql_select.h:
        Fixed bug #18206.
        Added a parameter for the function store_val_in_field allowing to
        control setting warnings about data truncation in the function.
      e3e06587
    • unknown's avatar
      Removed duplicate tests from select.test · cbbd0fdb
      unknown authored
      cbbd0fdb
    • unknown's avatar
      bad merge fixed for b4981. · ea3f8453
      unknown authored
      ea3f8453
    • unknown's avatar
      Merge mysql.com:/home/kgeorge/mysql/4.1/B4981 · b05628d2
      unknown authored
      into  mysql.com:/home/kgeorge/mysql/5.0/B4981
      
      
      mysql-test/t/select.test:
        Auto merged
      sql/opt_range.cc:
        Auto merged
      mysql-test/r/select.result:
        merged
      b05628d2
    • unknown's avatar
      Bug #4981: 4.x and 5.x produce non-optimal execution path, · 3390eaa0
      unknown authored
              3.23 regression test failure
      
      The member SEL_ARG::min_flag was not initialized, 
      due to which the condition for no GEOM_FLAG in function 
      key_or did not choose "Range checked for each record" as 
      the correct access method.
      
      
      mysql-test/r/select.result:
        testcase for 'Range checked' access method
      mysql-test/t/select.test:
        testcase for 'Range checked' access method
      sql/opt_range.cc:
        All of the class members initialized
      3390eaa0
  7. 30 May, 2006 3 commits
  8. 29 May, 2006 16 commits
    • unknown's avatar
      Fixed bug#18360: Incorrect type coercion in IN() results in false comparison · c007daba
      unknown authored
      The IN() function uses agg_cmp_type() to aggregate all types of its arguments
      to find out some common type for comparisons. In this particular case the 
      char() and the int was aggregated to double because char() can contain values
      like '1.5'. But all strings which do not start from a digit are converted to
      0. thus 'a' and 'z' become equal. 
      This behaviour is reasonable when all function arguments are constants. But 
      when there is a field or an expression this can lead to false comparisons. In
      this case it makes more sense to coerce constants to the type of the field
      argument.
      
      The agg_cmp_type() function now aggregates types of constant and non-constant
      items separately. If some non-constant items will be found then their
      aggregated type will be returned. Thus after the aggregation constants will be
      coerced to the aggregated type. 
      
      
      mysql-test/t/func_in.test:
        Added test case for bug#18360: Incorrect type coercion in IN() results in false comparison.
      mysql-test/r/func_in.result:
        Added test case for bug#18360: Incorrect type coercion in IN() results in false comparison.
      sql/item_cmpfunc.cc:
        Fixed bug#18360: Incorrect type coercion in IN() results in false comparison.
        The agg_cmp_type() function now aggregates types of constant and non-constant
        items separately. If some non-constant items will be found then their
        aggregated type will be returned. Thus after the aggregation constants will
        be coerced to the aggregated type.
      c007daba
    • unknown's avatar
      Manually merged · c5619333
      unknown authored
      
      mysql-test/t/multi_update.test:
        Auto merged
      c5619333
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.0 · 8e025f51
      unknown authored
      into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      8e025f51
    • unknown's avatar
      Merge 192.168.0.20:mysql/yassl_import/my50-yassl_import · d0703b45
      unknown authored
      into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      d0703b45
    • unknown's avatar
      Add new file md4.cpp to VC++ project file · 71ded739
      unknown authored
      71ded739
    • unknown's avatar
      Import from yaSSL · 34d9365e
      unknown authored
      
      extra/yassl/include/yassl_error.hpp:
        Import patch yassl.diff
      extra/yassl/mySTL/stdexcept.hpp:
        Import patch yassl.diff
      extra/yassl/src/yassl_error.cpp:
        Import patch yassl.diff
      extra/yassl/src/yassl_int.cpp:
        Import patch yassl.diff
      extra/yassl/taocrypt/src/integer.cpp:
        Import patch yassl.diff
      extra/yassl/taocrypt/src/misc.cpp:
        Import patch yassl.diff
      34d9365e
    • unknown's avatar
      Merge msvensson@msvensson.mysql.internal:/home/msvensson/mysql/mysql-5.0 · 40a76b90
      unknown authored
      into  devsrv-b.mysql.com:/users/msvensson/mysql-5.0
      
      
      40a76b90
    • unknown's avatar
      Merge 192.168.0.20:mysql/mysql-5.0 · 9c9ff3d2
      unknown authored
      into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      9c9ff3d2
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.0 · 4834b535
      unknown authored
      into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      4834b535
    • unknown's avatar
      Merge shellback.(none):/home/msvensson/mysql/yassl_import/my50-yassl_import · a14f057e
      unknown authored
      into  shellback.(none):/home/msvensson/mysql/mysql-5.0
      
      
      a14f057e
    • unknown's avatar
      Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-5.0 · 8c64f803
      unknown authored
      into  devsrv-b.mysql.com:/users/msvensson/mysql-5.0
      
      
      8c64f803
    • unknown's avatar
      after merge fix. · 6169a5ab
      unknown authored
      
      
      client/mysqldump.c:
        after merge fix.
          - 'lengths' declaration moved to the beginning of the block.
      6169a5ab
    • unknown's avatar
      Update result file after merge · 1c17a260
      unknown authored
      1c17a260
    • unknown's avatar
      Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1 · acf5b949
      unknown authored
      into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      mysys/default.c:
        Auto merged
      mysql-test/mysql-test-run.pl:
        Merge backport
      mysql-test/mysql-test-run.sh:
        Merge backport
      mysql-test/r/mysqldump.result:
        Manual merge
      mysql-test/t/mysqldump.test:
        Manual merge
      acf5b949
    • unknown's avatar
      manual merge · e9ad2183
      unknown authored
      e9ad2183
    • unknown's avatar
      Merge mysql.com:/usr/home/ram/work/mysql-4.1 · 3ff39504
      unknown authored
      into  mysql.com:/usr/home/ram/work/mysql-5.0
      
      
      client/mysqldump.c:
        merge (used ul)
      mysql-test/r/mysqldump.result:
        merge (used ul)
      mysql-test/t/mysqldump.test:
        merge (used ul)
      3ff39504
  9. 28 May, 2006 1 commit
    • unknown's avatar
      Fixed bug#19225: unchecked error results in server crash · 2264b644
      unknown authored
      In multi-table delete a table for delete can't be used for selecting in
      subselects. Appropriate error was raised but wasn't checked which leads to a
      crash at the execution phase.
      
      The mysql_execute_command() now checks for errors before executing select
      for multi-delete.
      
      
      mysql-test/t/multi_update.test:
        Added test case for bug#19225: unchecked error results in server crash
      mysql-test/r/multi_update.result:
        Added test case for bug#19225: unchecked error results in server crash
      sql/sql_parse.cc:
        Fixed bug#19225: unchecked error results in server crash
        The mysql_execute_command() now checks for errors before executing select for multi-delete.
      2264b644
  10. 26 May, 2006 7 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 22345420
      unknown authored
      into  mysql.com:/home/emurphy/iggy/mysql-5.0
      
      
      sql/mysqld.cc:
        Auto merged
      22345420
    • unknown's avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0 · bce6a702
      unknown authored
      into  mysql.com:/home/kgeorge/mysql/5.0/clean
      
      
      bce6a702
    • unknown's avatar
      Merge mysql.com:/home/kgeorge/mysql/5.0/clean · dd01932a
      unknown authored
      into  mysql.com:/home/kgeorge/mysql/5.0/B18681
      
      
      sql/sql_acl.cc:
        Auto merged
      sql/table.cc:
        Auto merged
      mysql-test/r/view_grant.result:
        resolved conflict
      mysql-test/t/view_grant.test:
        resolved merge conflict
      dd01932a
    • unknown's avatar
      Merge mysql.com:/home/kgeorge/mysql/5.0/clean · 6386c5df
      unknown authored
      into  mysql.com:/home/kgeorge/mysql/5.0/B18681
      
      
      sql/mysql_priv.h:
        Auto merged
      sql/sql_acl.cc:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_insert.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      6386c5df
    • unknown's avatar
      Merge mysql.com:/home/kgeorge/mysql/5.0/clean · 232a7e7c
      unknown authored
      into  mysql.com:/home/kgeorge/mysql/5.0/B14875
      
      
      232a7e7c
    • unknown's avatar
      Bug #14875: Bad view DEFINER makes SHOW CREATE VIEW fail · 419ae6cb
      unknown authored
      When reading a view definition from a .frm file it was
      throwing a SQL error if the DEFINER user is not defined.
      Changed it to a warning to match the (documented) case
      when a view with undefined DEFINER user is created.
      
      
      mysql-test/r/view_grant.result:
        test case for the bug
      mysql-test/t/view_grant.test:
        test case for the bug
      sql/sql_acl.cc:
        Initialized the members to no privileges so even if
        the subsequent checks fail it will still initialize
        the security context.
      sql/table.cc:
        Turned the error of undefined DEFINER user in reading 
        a view definition to a warning.
      419ae6cb
    • unknown's avatar
      BUG#18681: View privileges are broken · d7743c41
      unknown authored
      The check for view security was lacking several points :
      1. Check with the right set of permissions : for each table ref that
      participates in a view there were the right credentials to use in it's
      security_ctx member, but these weren't used for checking the credentials.
      This makes hard enforcing the SQL SECURITY DEFINER|INVOKER property
      consistently.
      2. Because of the above the security checking for views was just ruled out
      in explicit ways in several places.
      3. The security was checked only for the columns of the tables that are
      brought into the query from a view. So if there is no column reference
      outside of the view definition it was not detecting the lack of access to
      the tables in the view in SQL SECURITY INVOKER mode.
      
      The fix below tries to fix the above 3 points.
      
      
      mysql-test/r/grant.result:
        removed nondeterminism (unspecified order) in some test output
      mysql-test/r/view_grant.result:
        Somewhat extended test case for the bug and similar queries.
      mysql-test/t/grant.test:
        removed nondeterminism (unspecified order) in some test output
      mysql-test/t/view_grant.test:
        Somewhat extended test case for the bug and similar queries.
      sql/mysql_priv.h:
        A wrapper for setup_tables that also checks access to the tables
      sql/sql_acl.cc:
        removed artificial security check stop and used the table ref's credentials.
      sql/sql_base.cc:
        a wrapper for setup_tables to check access to the tables
      sql/sql_delete.cc:
        wrapper called.
      sql/sql_insert.cc:
        wrapper called
      sql/sql_load.cc:
        wrapper called
      sql/sql_parse.cc:
        wrapper called and artificial check stop removed
      sql/sql_select.cc:
        wrapper called
      sql/sql_update.cc:
        wrapper called
      sql/table.cc:
        Mask table access to the view error as well.
      d7743c41
  11. 25 May, 2006 1 commit