- 26 May, 2006 1 commit
-
-
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.
-
- 15 May, 2006 10 commits
-
-
unknown authored
into mysql.com:/users/lthalmann/bk/mysql-5.0-rpl
-
unknown authored
into dl145j.mysql.com:/tmp/andrei/5.0 sql/mysql_priv.h: Auto merged sql/sql_base.cc: Auto merged
-
unknown authored
sql/item.cc: After-merge fixes. sql/item.h: After-merge fixes. sql/item_func.cc: After-merge fixes. sql/item_func.h: After-merge fixes. sql/sp_head.cc: After-merge fixes.
-
unknown authored
into mysql.com:/usr/local/mysql/tmp-5.0 sql/sp_head.cc: Manual merge.
-
unknown authored
into mysql.com:/home/alexi/innodb/mysql-5.0-ss547
-
unknown authored
into mysql.com:/home/alexi/innodb/mysql-5.0-ss547-work Null merge innobase/os/os0file.c: Null merge sql/ha_innodb.cc: Null merge
-
unknown authored
specific to 5.0 version of the patch is motivated by the fact that a wrapper over MYSQLLOG::write can not help in 5.0 where query's charset is embedded into event instance in the constructor. sql/mysql_priv.h: this 4.1 specific code does not help in 5.0 sql/sql_base.cc: No wrapper similar to 4.1's version is done since Query_log_event constructor takes care of encodings in 5.0 whereas log::write method does it in 4.1. We can introduce an additional constuctor for Query_log_event to pass desired (i.e system_character_info) charset different from THD's version. But I am delaying this while there are not more bugs similar to this one reported.
-
unknown authored
Fix BUG#19542 "InnoDB doesn't increase the Handler_read_prev counter". innobase/os/os0file.c: Applied innodb-5.0-ss547 snapshot. Check the page trailers also after writing to disk. This improves the chances of diagnosing Bug 18886. os_file_check_page_trailers(): New function for checking that two copies of the LSN stamped on the pages match. os_aio_simulated_handle(): Call os_file_check_page_trailers() before and after os_file_write(). sql/ha_innodb.cc: Applied innodb-5.0-ss547 snapshot. Increment statistic counter in ha_innobase::index_prev().
-
unknown authored
Fix BUG#19542 "InnoDB doesn't increase the Handler_read_prev counter. innobase/os/os0file.c: Applied innodb-4.1-ss29 snapshot. Check the page trailers also after writing to disk. This improves the chances of diagnosing Bug 18886. os_file_check_page_trailers(): New function for checking that two copies of the LSN stamped on the pages match. os_aio_simulated_handle(): Call os_file_check_page_trailers() before and after os_file_write(). sql/ha_innodb.cc: Applied innodb-4.1-ss29 snapshot. Increment statistic counter in ha_innobase::index_prev().
-
unknown authored
Stored procedure execution sometimes placed the address of auto variables in the list of Item changes to undo in THD::rollback_item_tree_changes(). This could cause stack corruption. sql/sp_head.cc: Avoid storing address of auto variables in global rollback list, to prevent stack memory corruption. sql/sp_head.h: Avoid storing address of auto variables in global rollback list, to prevent stack memory corruption. sql/sp_rcontext.cc: Avoid storing address of auto variables in global rollback list, to prevent stack memory corruption. sql/sp_rcontext.h: Avoid storing address of auto variables in global rollback list, to prevent stack memory corruption. sql/sql_class.cc: Avoid storing address of auto variables in global rollback list, to prevent stack memory corruption.
-
- 14 May, 2006 5 commits
-
-
unknown authored
into mysql.com:/opt/local/work/mysql-5.0-runtime-merge mysql-test/mysql-test-run.pl: Auto merged mysql-test/r/im_options_set.result: Auto merged mysql-test/r/im_options_unset.result: Auto merged mysql-test/r/trigger-grant.result: Auto merged sql/item.cc: Auto merged sql/item_func.cc: Auto merged sql/item_func.h: Auto merged sql/mysql_priv.h: Auto merged sql/sp_head.cc: Auto merged sql/sql_parse.cc: Auto merged sql/share/errmsg.txt: Auto merged sql/sql_table.cc: Auto merged sql/sql_yacc.yy: Auto merged
-
unknown authored
into mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/5.0 mysql-test/t/rpl_temporary.test: Auto merged mysql-test/t/mysqlbinlog.test: manual merge
-
unknown authored
manual merge to account 5.0 specific names of TABLE class sql/mysql_priv.h: manual merge: changing to 5.0's TABLE class names sql/sql_base.cc: manual merge: whitespaces and 5.0 TABLE's names
-
unknown authored
fixing names length. Got an issue when merged to 5.0, decided to fix starting from 4.1 mysql-test/t/mysqlbinlog.test: fixing temp table name to fit to 64 bytes for 5.0 mysql-test/t/rpl_temporary.test: fixing temp table name to fit to 64 bytes for 5.0
-
unknown authored
into mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/5.0 mysql-test/r/mysqlbinlog.result: Auto merged sql/mysql_priv.h: Auto merged mysql-test/r/drop_temp_table.result: manual merge use local mysql-test/r/mix_innodb_myisam_binlog.result: manual merge use local mysql-test/r/rpl_temporary.result: manual merge use local mysql-test/t/mysqlbinlog.test: manual merge mysql-test/t/rpl_temporary.test: manual merge. More than the bugs fixes: using disconnect con1 from 4.1's version instead of kill con1. sql/sql_base.cc: manual merge, should be in sync with 4.1's version.
-
- 13 May, 2006 6 commits
-
-
unknown authored
into rurik.mysql.com:/home/igor/dev/mysql-5.0-2
-
unknown authored
over two views when using syntax with curly braces. Each outer join operation must be placed in a separate nest. This was not done when the syntax with curly braces was used. In some cases, in particular, for queries with outer join operation over views it could cause a crash. mysql-test/r/join_outer.result: Added a test case for bug #19396. mysql-test/t/join_outer.test: Added a test case for bug #19396.
-
unknown authored
fixing a path to find charset by $MYSQL client. I believe the fix is done what should be by default. mysql-test/t/mysqlbinlog.test: --character-sets-dir=../sql/share/charsets is added otherwise client/.libs/lt-mysql searches in /usr/local/mysql ... A bug? mysql-test/t/rpl_temporary.test: --character-sets-dir=../sql/share/charsets/
-
unknown authored
remove initialization of unsigned_flag for Item_decimal mysql-test/r/case.result: Bug#17048 CREATE TABLE ... SELECT truncate values result fix mysql-test/r/metadata.result: Bug#17048 CREATE TABLE ... SELECT truncate values result fix mysql-test/r/ps_2myisam.result: Bug#17048 CREATE TABLE ... SELECT truncate values result fix mysql-test/r/ps_3innodb.result: Bug#17048 CREATE TABLE ... SELECT truncate values result fix mysql-test/r/ps_4heap.result: Bug#17048 CREATE TABLE ... SELECT truncate values result fix mysql-test/r/ps_5merge.result: Bug#17048 CREATE TABLE ... SELECT truncate values result fix mysql-test/r/ps_6bdb.result: Bug#17048 CREATE TABLE ... SELECT truncate values result fix mysql-test/r/ps_7ndb.result: Bug#17048 CREATE TABLE ... SELECT truncate values result fix mysql-test/r/type_float.result: Bug#17048 CREATE TABLE ... SELECT truncate values result fix mysql-test/r/type_newdecimal.result: Bug#17048 CREATE TABLE ... SELECT truncate values result fix
-
unknown authored
into rurik.mysql.com:/home/igor/dev/mysql-5.0-2
-
unknown authored
itself when executing queries referring to a view with GROUP BY an expression containing non-constant interval. It happened because Item_date_add_interval::eq neglected the fact that the method can be applied to an expression of the form date(col) + interval time_to_sec(col) second at the time when col could not be evaluated yet. An attempt to evaluate time_to_sec(col) in this method resulted in a crash. mysql-test/r/view.result: Added a test case for bug #19490. mysql-test/t/view.test: Added a test case for bug #19490. sql/item_timefunc.cc: Fixed bug #19490. The bug that caused server crash manifested itself when executing queries referring to a view with GROUP BY an expression containing non-constant interval. It happened because Item_date_add_interval::eq neglected the fact that the method can be applied to an expression of the form date(col) + interval time_to_sec(col) second at the time when col could not be evaluated yet. An attempt to evaluate time_to_sec(col) in this method resulted in a crash. The code of Item_date_add_interval::eq was corrected.
-
- 12 May, 2006 18 commits
-
-
unknown authored
into mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/4.1 mysql-test/r/rpl_temporary.result: Auto merged mysql-test/t/rpl_temporary.test: Auto merged sql/sql_base.cc: Auto merged sql/mysql_priv.h: manual merge, a comment added
-
unknown authored
into mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/4.1
-
unknown authored
A pattern to generate binlog for DROPped temp table in close_temporary_tables was buggy: could not deal with a grave-accent-in-name table. The fix exploits `append_identifier()' for quoting and duplicating accents. mysql-test/r/rpl_temporary.result: results changed mysql-test/t/rpl_temporary.test: more correct internal table emulation; typo of @@session in bug#17263. sql/mysql_priv.h: bool is_user_table(TABLE * table) is added to answer wheather temporary table was created explicitly. sql/sql_base.cc: Utilizing `append_identifier' to quote. `close_temporary_tables' once again recoded I hope to become much simplier than previously. No-binlog branch is separated completely the rest that adopts String's methods.
-
unknown authored
Change mode to -rw-rw-r-- include/decimal.h: Change mode to -rw-rw-r-- mysql-test/r/archive_gis.result: Change mode to -rw-rw-r-- mysql-test/r/bdb_gis.result: Change mode to -rw-rw-r-- mysql-test/r/binlog.result: Change mode to -rw-rw-r-- mysql-test/r/compress.result: Change mode to -rw-rw-r-- mysql-test/r/federated_archive.result: Change mode to -rw-rw-r-- mysql-test/r/federated_bug_13118.result: Change mode to -rw-rw-r-- mysql-test/r/im_daemon_life_cycle.result: Change mode to -rw-rw-r-- mysql-test/r/im_life_cycle.result: Change mode to -rw-rw-r-- mysql-test/r/im_options_set.result: Change mode to -rw-rw-r-- mysql-test/r/im_options_unset.result: Change mode to -rw-rw-r-- mysql-test/r/im_utils.result: Change mode to -rw-rw-r-- mysql-test/r/innodb-big.result: Change mode to -rw-rw-r-- mysql-test/r/innodb_gis.result: Change mode to -rw-rw-r-- mysql-test/r/innodb_notembedded.result: Change mode to -rw-rw-r-- mysql-test/r/mysql.result: Change mode to -rw-rw-r-- mysql-test/r/mysqldump-max.result: Change mode to -rw-rw-r-- mysql-test/r/ndb_bitfield.result: Change mode to -rw-rw-r-- mysql-test/r/ndb_condition_pushdown.result: Change mode to -rw-rw-r-- mysql-test/r/ndb_gis.result: Change mode to -rw-rw-r-- mysql-test/r/rpl_ignore_revoke.result: Change mode to -rw-rw-r-- mysql-test/r/rpl_trigger.result: Change mode to -rw-rw-r-- mysql-test/r/rpl_view.result: Change mode to -rw-rw-r-- mysql-test/r/sp-code.result: Change mode to -rw-rw-r-- mysql-test/r/sp-destruct.result: Change mode to -rw-rw-r-- mysql-test/r/sp-dynamic.result: Change mode to -rw-rw-r-- mysql-test/r/sp-vars.result: Change mode to -rw-rw-r-- mysql-test/r/sp_trans.result: Change mode to -rw-rw-r-- mysql-test/r/sum_distinct-big.result: Change mode to -rw-rw-r-- mysql-test/r/trigger-compat.result: Change mode to -rw-rw-r-- mysql-test/r/trigger-grant.result: Change mode to -rw-rw-r-- mysql-test/r/trigger-trans.result: Change mode to -rw-rw-r-- mysql-test/r/type_bit_innodb.result: Change mode to -rw-rw-r-- mysql-test/r/type_newdecimal.result: Change mode to -rw-rw-r-- mysql-test/r/user_limits.result: Change mode to -rw-rw-r-- mysql-test/r/view_grant.result: Change mode to -rw-rw-r-- mysql-test/r/view_query_cache.result: Change mode to -rw-rw-r-- mysql-test/r/xa.result: Change mode to -rw-rw-r-- mysql-test/std_data/bug16266.000001: Change mode to -rw-rw-r-- mysql-test/std_data/vchar.frm: Change mode to -rw-rw-r-- mysql-test/t/binlog-master.opt: Change mode to -rw-rw-r-- mysql-test/t/binlog.test: Change mode to -rw-rw-r-- mysql-test/t/flush_read_lock_kill-master.opt: Change mode to -rw-rw-r-- mysql-test/t/flush_read_lock_kill.test: Change mode to -rw-rw-r-- mysql-test/t/sp_trans.test: Change mode to -rw-rw-r-- mysql-test/t/xa.test: Change mode to -rw-rw-r-- mysys/my_mmap.c: Change mode to -rw-rw-r-- sql/sql_array.h: Change mode to -rw-rw-r-- strings/decimal.c: Change mode to -rw-rw-r--
-
unknown authored
configure.in: Auto merged mysql-test/include/rpl_stmt_seq.inc: Auto merged mysql-test/r/blackhole.result: Auto merged mysql-test/r/ctype_cp932_binlog.result: Auto merged mysql-test/r/fulltext2.result: Auto merged mysql-test/r/ctype_ucs_binlog.result: Auto merged mysql-test/r/grant2.result: Auto merged mysql-test/r/innodb_handler.result: Auto merged mysql-test/r/insert_update.result: Auto merged mysql-test/r/ndb_update.result: Auto merged mysql-test/r/not_embedded_server.result: Auto merged mysql-test/r/repair.result: Auto merged mysql-test/r/query_cache_notembedded.result: Auto merged mysql-test/r/rpl_create_database.result: Auto merged mysql-test/r/rpl_multi_update3.result: Auto merged mysql-test/r/rpl_slave_status.result: Auto merged mysql-test/r/timezone_grant.result: Auto merged mysql-test/t/create_select_tmp.test: Auto merged mysql-test/t/gis-rtree.test: Auto merged mysql-test/t/grant2.test: Auto merged mysql-test/t/handler.test: Auto merged mysql-test/t/insert_update.test: Auto merged mysql-test/t/mysqltest.test: Auto merged mysql-test/t/repair.test: Auto merged mysql-test/t/rpl_ddl.test: Auto merged mysql-test/t/rpl_multi_query.test: Auto merged mysql-test/t/rpl_rewrite_db.test: Auto merged sql/sql_bitmap.h: Auto merged sql/sql_handler.cc: Auto merged zlib/Makefile.am: Auto merged mysql-test/std_data/trunc_binlog.000001: SCCS merged
-
unknown authored
Change mode to -rw-rw-r-- Ereport.pl, Ecreate.pl, Ecompare.pl: Change mode to -rwxrwxr-- bdb/dist/s_dir: Change mode to -rw-rw-r-- myisam/ftbench/Ecompare.pl: Change mode to -rwxrwxr-- myisam/ftbench/Ecreate.pl: Change mode to -rwxrwxr-- myisam/ftbench/Ereport.pl: Change mode to -rwxrwxr-- myisam/ftbench/README: Change mode to -rw-rw-r-- myisammrg/myrg_rnext_same.c: Change mode to -rw-rw-r-- mysql-test/include/rpl_stmt_seq.inc: Change mode to -rw-rw-r-- mysql-test/misc/kill_master.sh: Change mode to -rw-rw-r-- mysql-test/r/blackhole.result: Change mode to -rw-rw-r-- mysql-test/r/ctype_cp1250_ch.result: Change mode to -rw-rw-r-- mysql-test/r/ctype_cp932_binlog.result: Change mode to -rw-rw-r-- mysql-test/r/ctype_euckr.result: Change mode to -rw-rw-r-- mysql-test/r/ctype_gb2312.result: Change mode to -rw-rw-r-- mysql-test/r/ctype_ucs_binlog.result: Change mode to -rw-rw-r-- mysql-test/r/fulltext2.result: Change mode to -rw-rw-r-- mysql-test/r/func_des_encrypt.result: Change mode to -rw-rw-r-- mysql-test/r/grant2.result: Change mode to -rw-rw-r-- mysql-test/r/insert_update.result: Change mode to -rw-rw-r-- mysql-test/r/ndb_database.result: Change mode to -rw-rw-r-- mysql-test/r/ndb_update.result: Change mode to -rw-rw-r-- mysql-test/r/not_embedded_server.result: Change mode to -rw-rw-r-- mysql-test/r/query_cache_notembedded.result: Change mode to -rw-rw-r-- mysql-test/r/rpl_create_database.result: Change mode to -rw-rw-r-- mysql-test/r/rpl_drop_db.result: Change mode to -rw-rw-r-- mysql-test/r/rpl_dual_pos_advance.result: Change mode to -rw-rw-r-- mysql-test/r/rpl_insert_select.result: Change mode to -rw-rw-r-- mysql-test/r/rpl_multi_update3.result: Change mode to -rw-rw-r-- mysql-test/r/rpl_multi_update4.result: Change mode to -rw-rw-r-- mysql-test/r/rpl_slave_status.result: Change mode to -rw-rw-r-- mysql-test/r/rpl_trunc_temp.result: Change mode to -rw-rw-r-- mysql-test/r/timezone_grant.result: Change mode to -rw-rw-r-- mysql-test/std_data/master-bin.000001: Change mode to -rw-rw-r-- mysql-test/t/ctype_latin1.test: Change mode to -rw-rw-r-- mysql-test/t/fulltext2.test: Change mode to -rw-rw-r-- mysql-test/t/gis-rtree.test: Change mode to -rw-rw-r-- mysql-test/t/grant2.test: Change mode to -rw-rw-r-- mysql-test/t/insert_update.test: Change mode to -rw-rw-r-- mysql-test/t/mysqltest.test: Change mode to -rw-rw-r-- mysql-test/t/rpl_ddl.test: Change mode to -rw-rw-r-- mysql-test/t/rpl_insert_ignore.test: Change mode to -rw-rw-r-- mysql-test/t/rpl_multi_query.test: Change mode to -rw-rw-r-- mysql-test/t/rpl_rewrite_db-slave.opt: Change mode to -rw-rw-r-- mysql-test/t/rpl_rewrite_db.test: Change mode to -rw-rw-r-- mysql-test/t/subselect2.test: Change mode to -rw-rw-r-- mysql-test/t/union-master.opt: Change mode to -rw-rw-r-- mysys/mf_tempdir.c: Change mode to -rw-rw-r-- mysys/my_crc32.c: Change mode to -rw-rw-r-- mysys/my_gethwaddr.c: Change mode to -rw-rw-r-- mysys/my_getsystime.c: Change mode to -rw-rw-r-- scripts/mysql_prepare_privilege_tables_for_5.sql: Change mode to -rw-rw-r-- sql/sql_bitmap.h: Change mode to -rw-rw-r-- zlib/Makefile.am: Change mode to -rw-rw-r--
-
unknown authored
BitKeeper/deleted/.del-master-bin.001~8917149781db8413: Auto merged myisammrg/myrg_range.c: Auto merged mysql-test/r/innodb_handler.result: Auto merged mysql-test/r/repair.result: Auto merged mysql-test/std_data/trunc_binlog.000001: Auto merged mysql-test/t/bulk_replace.test: Auto merged mysql-test/t/create_select_tmp.test: Auto merged mysql-test/t/ctype_tis620.test: Auto merged mysql-test/t/handler.test: Auto merged mysql-test/t/innodb_handler.test: Auto merged mysql-test/t/repair.test: Auto merged mysql-test/t/rpl_commit_after_flush.test: Auto merged mysql-test/t/rpl_free_items.test: Auto merged sql/sql_handler.cc: Auto merged
-
unknown authored
Change mode to -rw-rw-r-- dbug_add_tags.pl: Change mode to -rwxrwxr-- dbug/dbug_add_tags.pl: Change mode to -rwxrwxr-- myisammrg/myrg_range.c: Change mode to -rw-rw-r-- mysql-test/r/innodb_handler.result: Change mode to -rw-rw-r-- mysql-test/r/repair.result: Change mode to -rw-rw-r-- mysql-test/std_data/master-bin.001: Change mode to -rw-rw-r-- mysql-test/std_data/trunc_binlog.001: Change mode to -rw-rw-r-- mysql-test/t/bulk_replace.test: Change mode to -rw-rw-r-- mysql-test/t/create_select_tmp.test: Change mode to -rw-rw-r-- mysql-test/t/ctype_tis620.test: Change mode to -rw-rw-r-- mysql-test/t/handler.test: Change mode to -rw-rw-r-- mysql-test/t/innodb_handler.test: Change mode to -rw-rw-r-- mysql-test/t/mix_innodb_myisam_binlog-master.opt: Change mode to -rw-rw-r-- mysql-test/t/repair.test: Change mode to -rw-rw-r-- mysql-test/t/rpl_commit_after_flush.test: Change mode to -rw-rw-r-- mysql-test/t/rpl_free_items-slave.opt: Change mode to -rw-rw-r-- mysql-test/t/rpl_free_items.test: Change mode to -rw-rw-r-- scripts/mysql_secure_installation.sh: Change mode to -rw-rw-r-- sql/sql_handler.cc: Change mode to -rw-rw-r-- support-files/mysql-multi.server.sh: Change mode to -rw-rw-r--
-
unknown authored
into mysql.com:/home/kgeorge/mysql/5.0/B7549 mysql-test/r/subselect.result: Auto merged
-
unknown authored
replaced get_field(MEM_ROOT *mem, Field *field) with get_field(MEM_ROOT *mem, Field *field, String *res). It allows to avoid strlen(). mysql-test/r/information_schema.result: Fix for bug#18177 any access to INFORMATION_SCHEMA.ROUTINES crashes test case mysql-test/t/information_schema.test: Fix for bug#18177 any access to INFORMATION_SCHEMA.ROUTINES crashes test case
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/5.0
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/5.0
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.0
-
unknown authored
-
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 mysql.com:/home/gluh/MySQL/Merge/5.0
-
unknown authored
mysql-test/r/information_schema.result: Fix for bug#19236 bad COLUMNS.CHARACTER_MAXIMUM_LENGHT and CHARACTER_OCTET_LENGTH test case mysql-test/r/join.result: Fix for bug#19236 bad COLUMNS.CHARACTER_MAXIMUM_LENGHT and CHARACTER_OCTET_LENGTH result fix mysql-test/t/information_schema.test: Fix for bug#19236 bad COLUMNS.CHARACTER_MAXIMUM_LENGHT and CHARACTER_OCTET_LENGTH test case
-