Collect all tables and SPs refered by a statement, and open all tables
with an implicit LOCK TABLES. Do find things refered by triggers and views,
we open them first (and then repeat this until nothing new is found), before
doing the actual lock tables.
mysql-test/r/view.result:
view and group_concat()
mysql-test/t/view.test:
view and group_concat()
sql/item.cc:
comments added
sql/sql_select.cc:
fixed ORDER/GROUP BY processing for view support
mysql-test/r/view.result:
view over other view setup
mysql-test/t/view.test:
view over other view setup
sql/table.cc:
before using ancestor, check that it exists
mysql-test/r/view.result:
Resolving view fields in subqueries in VIEW
mysql-test/t/view.test:
Resolving view fields in subqueries in VIEW
sql/table.cc:
emulation of main table list by ancestor list added to view preparation routine to allow subqueries resolve item from outer query corectly
mysql-test/r/view.result:
query cache part moved to separate test
mysql-test/t/view.test:
query cache part moved to separate test
sql/item_func.cc:
fixed for safety
sql/sql_base.cc:
do not use real table call with view
fixed wrapping * substitured items
fixed fix_fields call parameter (refference)
sql/sql_yacc.yy:
added initialisation of SELECT in commands which can use subqueries
sql/table.cc:
fised fix_fields call parameter
sql/table.h:
new view specific method
Add support for warnings for prepare of prepared statements
Fixed test to work with --ps-protocol
Fixed some test results
libmysql/libmysql.c:
Add support for warnings for prepare of prepared statements
mysql-test/r/func_concat.result:
After merge fixes
mysql-test/r/select.result:
Delete conflicting tables form previous tests
mysql-test/r/view.result:
New code from 4.1 fixed old error
mysql-test/t/create.test:
Ensure that --ps-protocol return same results as normal test
mysql-test/t/func_group.test:
Remove not needed --disable_ps_protocol
mysql-test/t/func_time.test:
Ensure that --ps-protocol return same results as normal test
mysql-test/t/having.test:
Ensure that --ps-protocol return same results as normal test
mysql-test/t/insert_select.test:
Remove not needed --disable_ps_protocol
mysql-test/t/select.test:
Ensure that --ps-protocol return same results as normal test
mysql-test/t/sp.test:
Fixed comment
mysql-test/t/system_mysql_db_fix.test:
Fix that results is same as from system_mysql_db.test
mysql-test/t/trigger.test:
Added comment
mysql-test/t/type_blob.test:
Remove not needed --disable_ps_protocol
mysql-test/t/union.test:
Run most of the test with --ps-protocol
mysql-test/t/user_limits.test:
Ensure that --ps-protocol return same results as normal test
mysql-test/t/view.test:
Removed --error as bug is now fixed
mysql-test/t/warnings.test:
Ensure that --ps-protocol return same results as normal test
ndb/include/Makefile.am:
Don't automaticly use SCCS files
sql/ha_ndbcluster.cc:
Removed compiler warning
sql/log_event.cc:
After merge fix
sql/sql_class.h:
After merge fix
sql/sql_insert.cc:
After merge fix
sql/sql_load.cc:
After merge fix
sql/sql_prepare.cc:
Add support for warnings for prepare of prepared statements
sql/sql_update.cc:
After merge fixes
config/ac-macros/character_sets.m4:
Added latin1_spanish_ci
dbug/dbug_analyze.c:
Remove compiler warnings
include/my_handler.h:
Reorder structure arguments to be more optimal
innobase/dict/dict0load.c:
Fixed wrong define tag (for MySQL 5.0)
innobase/fil/fil0fil.c:
Fixed compiler warning
innobase/os/os0file.c:
Fixed compiler warning
myisam/ft_boolean_search.c:
Fixed compiler warning
myisam/ft_static.c:
Update to use new HA_KEYSEG structure
myisam/mi_open.c:
Simple optimization
myisammrg/myrg_static.c:
Removed compiler warning
mysql-test/r/grant.result:
Update results after merge
mysql-test/r/index_merge.result:
Update results after merge
mysql-test/r/information_schema_inno.result:
Add missing drop table
mysql-test/r/lowercase_table.result:
safety fix
mysql-test/r/multi_update.result:
safety fix
mysql-test/r/ps_1general.result:
safety fix
mysql-test/r/ps_2myisam.result:
Update results after merge
(set is not anymore of binary type)
mysql-test/r/ps_3innodb.result:
Update results after merge
mysql-test/r/ps_4heap.result:
Update results after merge
mysql-test/r/ps_5merge.result:
Update results after merge
mysql-test/r/ps_6bdb.result:
Update results after merge
mysql-test/r/show_check.result:
Update results after merge
mysql-test/r/subselect.result:
Update results after merge
(added missing quotes)
mysql-test/r/timezone2.result:
Update results after merge
mysql-test/r/view.result:
Update results after merge
(note that INSERT IGNORE will work again after next merge from 4.1)
mysql-test/t/derived.test:
Removed empty line
mysql-test/t/grant.test:
Update results after merge
mysql-test/t/information_schema_inno.test:
added missing drop table
mysql-test/t/lowercase_table.test:
safety fix
mysql-test/t/multi_update.test:
safety fix
mysql-test/t/ps_1general.test:
safety fix
mysql-test/t/view.test:
update error codes after merge
ndb/src/mgmsrv/main.cpp:
after merge fix
ndb/tools/ndb_test_platform.cpp:
removed compiler warnings
regex/main.c:
remove compiler warnings
sql/field.cc:
Remove compiler warning
sql/gen_lex_hash.cc:
Added DBUG support
sql/ha_myisam.cc:
Removed warning from valgrind
sql/ha_ndbcluster.cc:
Remove compiler warning
sql/item_cmpfunc.cc:
Better to use val_int() instead of val_real() as we don't want Item_func_nop_all to return different value than the original ref element
sql/mysqld.cc:
Remove compiler warning
sql/sql_acl.cc:
More debugging
sql/sql_lex.cc:
Remove unnecessary 'else'
sql/sql_parse.cc:
After merge fixes
Simplify reset of thd->server_status for SQLCOM_CALL
sql/sql_prepare.cc:
After merge fixes
Removed possible core dump in mysql_stmt_fetch()
sql/sql_update.cc:
After merge fixes (together with Sanja)
strings/ctype-czech.c:
Remove compiler warning
strings/ctype-ucs2.c:
Remove compiler warning
strings/ctype-win1250ch.c:
Remove compiler warning
strings/xml.c:
Remove compiler warning
tests/client_test.c:
Fix test to work with 5.0
vio/test-sslserver.c:
Portability fix
more max_rows for show table status
comment spellchecking...
mysql-test/r/view.result:
more max_rows for show table status
mysql-test/t/view.test:
more max_rows for show table status
comment spellchecking...
mysql-test/r/view.result:
changes in error number, and key in view processing
mysql-test/t/view.test:
changes in error number, and key in view processing
sql/mysql_priv.h:
changes functions
sql/sp.cc:
now we report to setup_tables(), are we setuping SELECT...INSERT
sql/sql_base.cc:
fixed finding table, taking in account join view, which can have not TABLE pointer
now we report to setup_tables(), are we setuping SELECT...INSERT and ennumerete insert table separately
sql/sql_delete.cc:
now we report to setup_tables(), are we setuping SELECT...INSERT
sql/sql_help.cc:
now we report to setup_tables(), are we setuping SELECT...INSERT
sql/sql_insert.cc:
fixed returning value of functions
sql/sql_load.cc:
now we report to setup_tables(), are we setuping SELECT...INSERT
removed second setup_tables call (merge)
sql/sql_olap.cc:
now we report to setup_tables(), are we setuping SELECT...INSERT
sql/sql_parse.cc:
UPDATE->MULTIUPDATE switching fixed
sql/sql_prepare.cc:
UPDATE->MULTIUPDATE switching fixed
sql/sql_select.cc:
now we report to setup_tables(), are we setuping SELECT...INSERT
sql/sql_update.cc:
UPDATE->MULTIUPDATE switching fixed
sql/sql_view.cc:
returning value fixed
sql/sql_view.h:
returning value fixed
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_help.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_view.h:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_help.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_view.h:
Auto merged
sql/sql_yacc.yy:
Auto merged
into sanja.is.com.ua:/home/bell/mysql/bk/work-view-5.0
mysql-test/r/view.result:
Auto merged
mysql-test/t/view.test:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/table.h:
Auto merged
into sanja.is.com.ua:/home/bell/mysql/bk/work-view-5.0
mysql-test/r/view.result:
Auto merged
mysql-test/t/view.test:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.h:
Auto merged
- open and create derived tables
- detect which tables should be locked for write
- lock and fill derived tables
some unitialized variables fixed
mysql-test/r/lock_multi.result:
correct results returned
mysql-test/r/multi_update.result:
correct results returned
mysql-test/r/view.result:
correct results returned
mysql-test/t/multi_update.test:
correct results returned
mysql-test/t/view.test:
correct results returned
sql/mysql_priv.h:
derived tables processing splited on table creation and table filling
sql/sql_base.cc:
derived tables processing splited on table creation and table filling
sql/sql_class.h:
function to detect when we need fill derived tables
sql/sql_derived.cc:
derived tables processing splited on table creation and table filling
sql/sql_lex.cc:
fixed uninitialized value
sql/sql_load.cc:
fixed uninitialized value
sql/sql_parse.cc:
initialization muved (will be done for all queries)
sql/sql_prepare.cc:
preparation of multiupdate changed a bit because new locking procedure
sql/sql_update.cc:
new lock for multiupdate:
- open and create derived tables
- detect which tables should be locked for write
- lock and fill derived tables
sql/table.h:
place to store select_result between creation and filling tables
FOUND is not a reserved keyword anymore
Added Item_field::set_no_const_sub() to be able to mark fields that can't be substituted
Added 'simple_select' method to be able to quickly determinate if a select_result is a normal SELECT
Note that the 5.0 tree is not yet up to date: Sanja will have to fix multi-update-locks for this merge to be complete
BUILD/SETUP.sh:
Portability fix
client/mysqltest.c:
Portability fix
mysql-test/r/drop.result:
updated results
mysql-test/r/func_str.result:
New warnings (after merge)
mysql-test/r/insert.result:
Updated tests
mysql-test/r/join_nested.result:
Updated results (because of new column types in 5.0)
mysql-test/r/lock_multi.result:
Temporarly wrong results until Sanja fixes multi-update-lock in 5.0
mysql-test/r/multi_update.result:
Temporary fix until Sanja fixes multi-update locking
mysql-test/r/ps_1general.result:
Update of results after merge
mysql-test/r/ps_2myisam.result:
Update of results after merge
mysql-test/r/ps_3innodb.result:
Update of results after merge
mysql-test/r/ps_4heap.result:
Update of results after merge
mysql-test/r/ps_5merge.result:
Update of results after merge
mysql-test/r/ps_6bdb.result:
Update of results after merge
mysql-test/r/query_cache.result:
Update of results after merge
mysql-test/r/range.result:
New results for new tests
mysql-test/r/rpl_auto_increment.result:
Update with new 4.0 information
mysql-test/r/rpl_charset.result:
After merge fixes
mysql-test/r/subselect.result:
After merge fixes
mysql-test/r/view.result:
Temporary fix until multi-update-locking is fixed
mysql-test/t/drop.test:
Safety fix
mysql-test/t/multi_update.test:
Temporary fix until multi-update-locking is fixed
mysql-test/t/rpl_charset.test:
More comments
mysql-test/t/sp-error.test:
Updated comments
mysql-test/t/view.test:
Temporary fix until multi-update-locking is fixed
scripts/mysql_fix_privilege_tables.sh:
Better error message
sql-common/client.c:
More debugging
sql/ha_ndbcluster.cc:
After merge fixes
sql/handler.cc:
After merge fixes
sql/item.cc:
Simple optimization of creating item
After merge fixed
Added Item_field::set_no_const_sub() to be able to mark fields that can't be substituted
The problem is that if you compare a string field to a binary string, you can't replace the field with a string constant as the binary comparison may then fail (The original field value may be in a different case)
sql/item.h:
Added Item::set_no_const_sub() to be able to mark fields that can't be substituted
sql/item_cmpfunc.cc:
Mark fields compared as binary to not be substituted.
sql/item_func.cc:
After merge fix
sql/log_event.cc:
After merge fix
sql/mysql_priv.h:
After merge fix
sql/opt_range.cc:
After merge fix
sql/protocol.cc:
Made flags uint instead of int (as it's used as a bit mask)
sql/protocol.h:
Made flags uint instead of int (as it's used as a bit mask)
sql/protocol_cursor.cc:
Made flags uint instead of int (as it's used as a bit mask)
Indentation cleanups
sql/sp.cc:
After merge fixes
Removed compiler warnings
sql/sp_head.cc:
After merge fixes
sql/sql_base.cc:
After merge fixes
Removed 'send_error' from 'insert_fields()' as the error is sent higher up
sql/sql_class.cc:
Give assert if set_n_backup_item_arena is used twice
sql/sql_class.h:
Give assert if set_n_backup_item_arena is used twice
After merge fixes
Added 'simple_select' method to be able to quickly determinate if a select_result is a normal SELECT
sql/sql_handler.cc:
After merge fixes
sql/sql_parse.cc:
After merge fixes
sql/sql_prepare.cc:
After merge fixes
sql/sql_select.cc:
After merge fixes
Moved 'build_equal_items' to optimize_cond() (logical place)
sql/sql_table.cc:
After merge fixes
sql/sql_trigger.cc:
After merge fixes
sql/sql_update.cc:
After merge fixes
(This should be fixed by Sanja to have lower granuality locking of tables in multi-update)
sql/sql_view.cc:
After merge fixes
sql/sql_yacc.yy:
After merge fixes
Don't have FOUND as a reserved keyword
FOUND is not a reserved keyword anymore
Added Item_field::set_no_const_sub() to be able to mark fields that can't be substituted
Added 'simple_select' method to be able to quickly determinate if a select_result is a normal SELECT
Note that the 5.0 tree is not yet up to date: Sanja will have to fix multi-update-locks for this merge to be complete
mysql-test/r/view.result:
test of CHECK TABLE for VIEW
mysql-test/t/view.test:
test of CHECK TABLE for VIEW
sql/handler.h:
new check message
sql/sql_table.cc:
view support for admin table
sql/sql_view.cc:
check of view MD5 added
sql/sql_view.h:
check of view MD5 added
mysql-test/r/view.result:
Trys update table from which we select using views and subqueries
mysql-test/t/view.test:
Trys update table from which we select using views and subqueries
sql/sql_acl.cc:
fix of fix for bug BUG#5976
sql/sql_base.cc:
protection against temporary tables which have not table->table->table_cache_key
fixed unique check to skip the same table instences
sql/sql_delete.cc:
removed next_independent to allow to check VIEW subqueries
sql/sql_insert.cc:
removed next_independent to allow to check VIEW subqueries
sql/sql_parse.cc:
removed next_independent to allow to check VIEW subqueries
sql/sql_update.cc:
removed next_independent to allow to check VIEW subqueries
sql/sql_view.cc:
removed next_independent to allow to check VIEW subqueries
optimisation to mark as non-updatable views with subqueries by same table.
sql/table.h:
removed next_independent to allow to check VIEW subqueries
mysql-test/r/view.result:
user with global DB privileges test
mysql-test/t/view.test:
user with global DB privileges test
sql/sql_acl.cc:
fixed db/user privileges getting
mysql-test/r/view.result:
LOAD DATA with view and CHECK OPTION
mysql-test/t/view.test:
LOAD DATA with view and CHECK OPTION
sql/log_event.cc:
new parameter for load data
sql/mysql_priv.h:
new parameter for load data
sql/sql_lex.cc:
LOAD DATA supported by view
sql/sql_load.cc:
added support of view and CHECK OPTION of view to LOAD DATA
sql/sql_parse.cc:
new parameter for CHECK OPTION
check option build only according most top VIEW CHECK OPTION TYPE (BUG#5993)
mysql-test/r/view.result:
CASCADED should be used for all underlaying VIEWs
mysql-test/t/view.test:
CASCADED should be used for all underlaying VIEWs
sql/sql_base.cc:
new behaviour of CHECK option build, for mor efficience and more correct.
sql/table.cc:
new behaviour of CHECK option build, for mor efficience and more correct.
sql/table.h:
new behaviour of CHECK option build, for mor efficience and more correct.