- 08 Jun, 2006 1 commit
-
-
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.
-
- 30 May, 2006 3 commits
- 29 May, 2006 16 commits
-
-
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.
-
unknown authored
mysql-test/t/multi_update.test: Auto merged
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.0
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.0
-
unknown authored
-
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
-
unknown authored
into devsrv-b.mysql.com:/users/msvensson/mysql-5.0
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.0
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.0
-
unknown authored
into shellback.(none):/home/msvensson/mysql/mysql-5.0
-
unknown authored
into devsrv-b.mysql.com:/users/msvensson/mysql-5.0
-
unknown authored
client/mysqldump.c: after merge fix. - 'lengths' declaration moved to the beginning of the block.
-
unknown authored
-
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
-
unknown authored
-
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)
-
- 28 May, 2006 1 commit
-
-
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.
-
- 26 May, 2006 7 commits
-
-
unknown authored
into mysql.com:/home/emurphy/iggy/mysql-5.0 sql/mysqld.cc: Auto merged
-
unknown authored
into mysql.com:/home/kgeorge/mysql/5.0/clean
-
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
-
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
-
unknown authored
into mysql.com:/home/kgeorge/mysql/5.0/B14875
-
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.
-
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.
-
- 25 May, 2006 8 commits
-
-
unknown authored
sql/ha_ndbcluster.cc: compile fix for Solaris 10 AMD64 -max GCC
-
unknown authored
into mysql.com:/space/pekka/ndb/version/my50-bug14509
-
unknown authored
into mysql.com:/space/pekka/ndb/version/my50-bug14509 ndb/src/ndbapi/DictCache.cpp: Auto merged ndb/src/ndbapi/DictCache.hpp: Auto merged sql/ha_ndbcluster.cc: Auto merged
-
unknown authored
into mysql.com:/home/kgeorge/mysql/5.0/clean
-
unknown authored
into mysql.com:/home/kgeorge/mysql/5.0/B18742-2
-
unknown authored
into mysql.com:/home/kgeorge/mysql/5.0/B18742-2
-
unknown authored
into mysql.com:/home/kgeorge/mysql/5.0/B19700 sql/item.h: Auto merged
-
unknown authored
The unsigned flag in Item was not propagated through the single value subqueries. This caused the result to be treated as signed. mysql-test/r/subselect.result: Added testcases for bug #19700 mysql-test/t/subselect.test: Added testcases for bug #19700 sql/item.h: Preserved the unsigned flag in Item_subselect sql/item_subselect.cc: Preserved the unsigned flag in Item_subselect
-
- 24 May, 2006 4 commits
-
-
unknown authored
into mysql.com:/home/my/mysql-5.0
-
unknown authored
into mysql.com:/home/my/mysql-5.0 sql/mysqld.cc: Auto merged
-
unknown authored
Replaced COND_refresh with COND_global_read_lock becasue of a bug in NTPL threads when using different mutexes as arguments to pthread_cond_wait() The original code caused a hang in FLUSH TABLES WITH READ LOCK in some circumstances because pthread_cond_broadcast() was not delivered to other threads. This fixes: Bug#16986: Deadlock condition with MyISAM tables Bug#20048: FLUSH TABLES WITH READ LOCK causes a deadlock mysql-test/r/flush.result: Added test case for deadlock with FLUSH TABLES WITH READ LOCK mysql-test/r/lock_multi.result: Test for bug in LOCK TABLE + optimize table mysql-test/t/flush.test: Added test case for deadlock with FLUSH TABLES WITH READ LOCK mysql-test/t/lock_multi.test: Test for bug in LOCK TABLE + optimize table sql/lock.cc: Replaced COND_refresh with COND_global_read_lock becasue of a bug in NTPL threads when using different mutexes as arguments to pthread_cond_wait() The original code caused a hang in FLUSH TABLES WITH READ LOCK in some circumstances because pthread_cond_broadcast() was not delivered to other threads sql/mysql_priv.h: Added COND_global_read_lock sql/mysqld.cc: Added COND_global_read_lock sql/sql_base.cc: More DBUG statements Added a broadcast in remove_table_from_cache() to release any threads waiting in open
-
unknown authored
into april.(none):/home/svoj/devel/mysql/BUG17001/mysql-5.0
-