enable view prepared mode during getting metedata for I_S table
mysql-test/r/information_schema.result:
Fix for bug#15533 crash, information_schema, function, view
test case
mysql-test/t/information_schema.test:
Fix for bug#15533 crash, information_schema, function, view
test case
into mysql.com:/home/dlenev/src/mysql-5.1-merges
mysql-test/r/view.result:
Auto merged
mysql-test/t/view.test:
Auto merged
sql/sql_select.cc:
Auto merged
sql/share/errmsg.txt:
Auto merged
sql/sql_show.cc:
Auto merged
storage/ndb/src/kernel/blocks/backup/Backup.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
Auto merged
storage/ndb/tools/ndb_size.pl:
Auto merged
mysql-test/r/information_schema.result:
Manual merge.
mysql-test/t/information_schema.test:
Manual merge.
sql/sql_trigger.cc:
Manual merge.
1) Fixes breakage in embedded server build for XMLPath push.
2) Hides PARTITION engine from view.
3) Add ENGINES information schema (and it should now be clear from this patch on how to turn any show command into an information schema).
libmysqld/Makefile.am:
Fix for embedded server to build.
mysql-test/r/information_schema.result:
Fix for additional information_schema
mysql-test/r/information_schema_db.result:
Fix for adding additional engines information schema.
mysql-test/t/information_schema.test:
Added test to make sure that engines information schema works.
sql/ha_partition.cc:
Made PARTITION hidden in information schema.
sql/sql_parse.cc:
Added additional case for engine information schema.
sql/sql_show.cc:
Code for ENGINES information schema.
sql/sql_yacc.yy:
Extended grammer to support new ENGINES information schema
sql/table.h:
Comment on dependency in information schema.
libmysqld/item_xmlfunc.cc:
New BitKeeper file ``libmysqld/item_xmlfunc.cc''
1) Fixes breakage in embedded server build for XMLPath push.
2) Hides PARTITION engine from view.
3) Add ENGINES information schema (and it should now be clear from this patch on how to turn any show command into an information schema).
set character_octet_length, character_maximum_length for
binary and varbinary field types
mysql-test/r/information_schema.result:
Fix for bug#14271 I_S: columns has no size for (var)binary columns
test case
mysql-test/t/information_schema.test:
Fix for bug#14271 I_S: columns has no size for (var)binary columns
test case
Bug#14387 SHOW COLUMNS doesn't work on temporary tables.
Bug#15224 SHOW INDEX from temporary table doesn't work.
Restore thd->temporary_tables to be able to process
temporary tables(only for 'show index' & 'show columns').
This should be changed when processing of temporary tables for
I_S tables will be done.
mysql-test/r/information_schema.result:
Bug#12770 DESC cannot display the info. about temporary table
Bug#14387 SHOW COLUMNS doesn't work on temporary tables.
Bug#15224 SHOW INDEX from temporary table doesn't work.
test case
mysql-test/t/information_schema.test:
Bug#12770 DESC cannot display the info. about temporary table
Bug#14387 SHOW COLUMNS doesn't work on temporary tables.
Bug#15224 SHOW INDEX from temporary table doesn't work.
test case
Bug#14387 SHOW COLUMNS doesn't work on temporary tables.
Bug#15224 SHOW INDEX from temporary table doesn't work.
Restore thd->temporary_tables to be able to process
temporary tables(only for 'show index' & 'show columns').
This should be changed when processing of temporary tables for
I_S tables will be done.
store TABLES.TABLE_TYPE in case of error during table opening
mysql-test/r/information_schema.result:
Fix for bug#14476 `information_schema`.`TABLES`.`TABLE_TYPE` with empty value
test case
mysql-test/t/information_schema.test:
Fix for bug#14476 `information_schema`.`TABLES`.`TABLE_TYPE` with empty value
test case
for invalid view
Permit SHOW CREATE VIEW, SHOW CREATE TABLE, and retrieval of metadata from
information_schema for invalid views
mysql-test/r/information_schema.result:
Fix for bug#13818 SHOW CREATE VIEW / TABLE and information_schema.views fail
for invalid view
test case
mysql-test/t/information_schema.test:
Fix for bug#13818 SHOW CREATE VIEW / TABLE and information_schema.views fail
for invalid view
test case
into neptunus.(none):/home/msvensson/mysql/mysql-5.0
client/mysqltest.c:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/t/information_schema.test:
Auto merged
mysql-test/t/myisam.test:
Auto merged
mysql-test/t/sp-security.test:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/structs.h:
Auto merged
information_schema is current database
skip the check of I_S tables if table is derived table
mysql-test/r/information_schema.result:
fix for bug#14089 FROM list subquery always fails when
information_schema is current database
test case
mysql-test/t/information_schema.test:
fix for bug#14089 FROM list subquery always fails when
information_schema is current database
test case
into neptunus.(none):/home/msvensson/mysql/ssl_test/my50-ssl_test
client/mysqltest.c:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/t/information_schema.test:
Auto merged
mysql-test/t/myisam.test:
Auto merged
mysql-test/t/mysqltest.test:
Auto merged
mysql-test/t/rpl_openssl.test:
Auto merged
sql/mysqld.cc:
Auto merged
mysql-test/t/sp-security.test:
Auto merged
sql/sql_show.cc:
Auto merged
sql/structs.h:
Auto merged
mysql-test/r/mysqltest.result:
SCCS merged
- Updated after review
client/mysqltest.c:
Updated after review.
Fix "connect" command to take SSL and/or COMPRESS as options instead of enable/disable_ssl and enable/disable_compress
Commented do_connect, added test cases etc.
Fix safe_get_param to make it possible to call it once for every argument without having any checks inbetween.
Make a copy for query->first_argument since safe_get_param will modify query string. Now connect works inside a while loop as well.
mysql-test/mysql-test-run.pl:
Updated after review
mysql-test/r/connect.result:
Enable test that was previolsy disabled because of "no error handling" in connect
mysql-test/r/mysqltest.result:
Added tests for "connect"
mysql-test/t/compress.test:
Updated after review, use the option argument to connect
mysql-test/t/connect.test:
Enable test that was previolsy disabled because of "no error handling" in connect
Now it's possible to use "--error" before connect, so let's use it.
mysql-test/t/information_schema.test:
Connection user4 was already used
mysql-test/t/myisam.test:
Disconnect con1 so the name can be reused
mysql-test/t/mysqltest.test:
Added tests for "connect"
mysql-test/t/openssl_1.test:
Updated after review, use the option argument to connect
mysql-test/t/sp-security.test:
Disconnect user1 connection so the name can be reused
mysql-test/t/ssl.test:
Updated after review, use the option argument to connect
mysql-test/t/ssl_compress.test:
Updated after review, use the option argument to connect
sql/mysqld.cc:
Updated after review, Compression variable is always available
sql/sql_show.cc:
Updated after review, Compression variable is always available
sql/structs.h:
Updated after review, Compression variable is always available
Fixed problems in test suite where some test failed
Fixed access to not initialized memory in federated
Fixed access to not initialized memory when using BIT fields in internal temporary tables
BitKeeper/etc/ignore:
added libmysqld/sql_cursor.h
mysql-test/r/information_schema.result:
Change view names to 'v#' to not cause massive conflict with other tests if test dies in the middlecd
mysql-test/r/information_schema_inno.result:
Remove used tables at start
mysql-test/r/multi_statement.result:
Remove used tables at start
mysql-test/r/temp_table.result:
Change view names to 'v#' to not cause massive conflict with other tests if test dies in the middle
mysql-test/r/type_bit.result:
More tests
mysql-test/t/information_schema.test:
Change view names to 'v#' to not cause massive conflict with other tests if test dies in the middle
mysql-test/t/information_schema_inno.test:
Remove used tables at start
mysql-test/t/multi_statement.test:
Remove used tables at start
mysql-test/t/temp_table.test:
Change view names to 'v#' to not cause massive conflict with other tests if test dies in the middle
mysql-test/t/type_bit.test:
More tests
mysql-test/valgrind.supp:
Removed some valgrind warnings that isn't errors
sql/ha_federated.cc:
Fixed errors discovered by valgrind:
- Socket was not initialized
- share->scheme was deleted while there was still pointer into it from the hash
sql/item_func.h:
Remove access to table object from cleanup() as the table object may have been dropped earlier (In case of temporary tables or of close_thread_tables() is run before cleanup())
This fixed a bug with access to already freed memory
sql/sql_base.cc:
Reset variables used by fulltext
sql/sql_select.cc:
Fixed various problems with bit fields when used in internal temporary tables.
Calculate space needed for bit fields correctly (previously we allocated more space than needed for rows in heap/myisam tables)
Fixed problems in test suite where some test failed
Fixed access to not initialized memory in federated
Fixed access to not initialized memory when using BIT fields in internal temporary tables
Information_schema DB
Bug#9846 Inappropriate error displayed while
dropping table from 'INFORMATION_SCHEMA'
Bug#10734 Grant of privileges other than 'select' and
'create view' should fail on schema
Bug#10708 SP's can use INFORMATION_SCHEMA as ROUTINE_SCHEMA
cumulative fix for bugs above(after review, 2nd version)
added privilege check for information schema db & tables
Information_schema DB
Bug#9846 Inappropriate error displayed while
dropping table from 'INFORMATION_SCHEMA'
Bug#10734 Grant of privileges other than 'select' and
'create view' should fail on schema
Bug#10708 SP's can use INFORMATION_SCHEMA as ROUTINE_SCHEMA
cumulative fix for bugs above(after review, 2nd version)
added privilege check for information schema db & tables
into rurik.mysql.com:/home/igor/dev/mysql-5.0-0
mysql-test/r/information_schema.result:
Auto merged
mysql-test/t/information_schema.test:
Auto merged
sql/sql_show.cc:
Auto merged
Database name was set incorrectly for any show command
that used sunqueries in its where condition.
information_schema.test, information_schema.result:
Added a test case for bug #12636.
mysql-test/r/information_schema.result:
Added a test case for bug #12636.
mysql-test/t/information_schema.test:
Added a test case for bug #12636.
sql/sql_show.cc:
Database name was set incorrectly for any show command
that used sunqueries in its where condition.
Database name was set incorrectly for any show command
that used sunqueries in its where condition.
information_schema.test, information_schema.result:
Added a test case for bug #12636.
Fixed new bug when running a SP without a default database
mysql-test/r/information_schema.result:
Added test to cover changes made in default handling
mysql-test/r/sp-security.result:
Added test when executing SP without a default database
mysql-test/t/information_schema.test:
Added test to cover changes made in default handling
mysql-test/t/sp-security.test:
Added test when executing SP without a default database
sql/item_strfunc.cc:
Removed wrong push
sql/mysqld.cc:
Indentation fix
sql/sql_base.cc:
Use share->db instead of share->table_cache_key
Remove assert that can never fail (because of test in previous row)
sql/sql_db.cc:
Allow empty database name when called from SP
(To allow on run without a default database)
sql/sql_parse.cc:
Added comment
sql/sql_show.cc:
Indentation fixes
Simplified code by checking for 'wrong' condition first and doing continue instead of going down one level
Simplified precision and decimal handling
Added a comment line for a test case used for bug #12301.
information_schema.result:
Fixed some test cases results (bug #12301).
sql_show.cc:
Fixed bug #12301.
The bug was due to a missing value setting for the NUMERIC_SCALE column
in the get_schema_column_record() function (sql_show.cc).
sql/sql_show.cc:
Fixed bug #12301.
The bug was due to a missing value setting for the NUMERIC_SCALE column
in the get_schema_column_record() function (sql_show.cc).
mysql-test/r/information_schema.result:
Fixed some test cases results (bug #12301).
mysql-test/t/information_schema.test:
Added a comment line for a test case used for bug #12301.
Added a comment line for a test case used for bug #12301.
information_schema.result:
Fixed some test cases results (bug #12301).
sql_show.cc:
Fixed bug #12301.
The bug was due to a missing value setting for the NUMERIC_SCALE column
in the get_schema_column_record() function (sql_show.cc).
"COLUMN_DEFAULT has wrong value if NOT NULL is set"
Show NULL instead of empty string when no default value is set
mysql-test/r/information_schema.result:
test for bug 12518
mysql-test/t/information_schema.test:
test for bug 12518
sql/sql_show.cc:
report NULL for information schema result when there is no default value
into mysql.com:/home/dlenev/src/mysql-5.0-is
mysql-test/r/information_schema.result:
Auto merged
mysql-test/t/information_schema.test:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sp.cc:
Auto merged
sql/sp.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_show.cc:
Auto merged
mysql-test/r/sp.result:
Manual merge
mysql-test/t/sp.test:
Manual merge
sql/sql_class.h:
Manual merge
result set".
To enable full access to contents of I_S tables from stored functions
or statements that use them, we manipulate with thread's open tables
state and ensure that we won't cause deadlock when we open tables by
ignoring flushes and name-locks.
Building of contents of I_S.TABLES no longer requires locking of tables
since we use use handler::info() method with HA_STATUS_AUTO flag instead
of handler::update_auto_increment() for obtaining information about
auto-increment values. But this also means that handlers have to implement
support for HA_STATUS_AUTO flag (particularly InnoDB needs it).
mysql-test/r/alter_table.result:
Updated test results. This change was caused by the fact that now when
we build contents of I_S tables (and thus output of SHOW INDEX) we
don't use instances of tables which may be already opened and locked
by thread (we always use new instance).
mysql-test/r/information_schema.result:
Added test which checks how information about current auto-increment value for
table is reported in INFORMATION_SCHEMA.TABLES view.
mysql-test/r/sp.result:
Added test for bug #10055 "Using stored function with information_schema causes
empty result set".
mysql-test/t/information_schema.test:
Added test which checks how information about current auto-increment value for
table is reported in INFORMATION_SCHEMA.TABLES view.
mysql-test/t/sp.test:
Added test for bug #10055 "Using stored function with information_schema causes
empty result set".
sql/mysql_priv.h:
close_thread_tables():
Get rid of 'stopper' argument which is no longer used. Now when we need
to open and then close some table without touching tables which are already
opened we use THD::reset_n/restore_backup_open_tables_state() methods.
open_tables()/open_normal_and_derived_tables():
Added 'flags' argument to be able open tables even if some has done
a flush or hold namelock on them.
sql/sp.cc:
close_proc_table/open_proc_table_for_read/db_find_routine():
Replaced push_open_tables_state/pop_open_tables_state() methods which
were saving/restoring current open tables state in/from THD::open_state_list
with reset_n_backup_open_tables_state/restore_backup_open_tables_state()
methods which assume that backup storage for this state is allocated on
stack (or elsewhere) by their caller.
open_proc_table_for_read():
Since now we can have several open tables states stacked up we can't rely
rely on checking whether we have some tables open in previous state.
Instead we always assume that some tables are open and we need to ignore
flush while locking mysql.proc. We don't really need
MYSQL_LOCK_IGNORE_GLOBAL_READ_LOCK in this case since we open mysql.proc table
only for reading.
sql/sp.h:
Added declarations of open_proc_table_for_read()/close_proc_table() to be
able to use them in sql_show.cc.
sql/sql_base.cc:
close_thread_tables():
Get rid of 'stopper' argument which is no longer used. Now when we need
to open and then close some table without touching tables which are already
opened we use THD::reset_n/restore_backup_open_tables_state() methods.
open_tables()/open_normal_and_derived_tables():
Added 'flags' argument to be able open tables even if some has done
a flush or hold namelock on them.
sql/sql_class.cc:
Open_tables_state, THD:
Replaced push_open_tables_state/pop_open_tables_state() methods which
were saving/restoring current open tables state in/from THD::open_state_list
with reset_n_backup_open_tables_state/restore_backup_open_tables_state()
methods which assume that backup storage for this state is allocated on
stack (or elsewhere) by their caller.
sql/sql_class.h:
Open_tables_state, THD:
Replaced push_open_tables_state/pop_open_tables_state() methods which
were saving/restoring current open tables state in/from THD::open_state_list
with reset_n_backup_open_tables_state/restore_backup_open_tables_state()
methods which assume that backup storage for this state is allocated on
stack (or elsewhere) by their caller.
sql/sql_handler.cc:
open_tables()/open_normal_and_derived_tables():
Added 'flags' argument to be able open tables even if some has done
a flush or hold namelock on them.
sql/sql_prepare.cc:
open_tables()/open_normal_and_derived_tables():
Added 'flags' argument to be able open tables even if some has done
a flush or hold namelock on them.
sql/sql_show.cc:
get_all_tables():
Now we use THD::reset_n_/restore_backup_open_tables_state() for
saving/restoring open tables state instead of working with it directly
(This also allows us to have proper content of I_S system tables in
statements with stored functions and in stored functions). We also
ignore possible flushes when opening tables (we may create deadlock
otherwise). Also we do all needed manipulations with LEX in this function
and not in get_schema_tables_result() now.
get_schema_tables_record():
Let us use handler::info() method with HA_STATUS_AUTO flag for obtaining
information about table's auto-increment value. This allows to avoid locking
of tables which is needed when we use handler::update_auto_increment() method.
fill_schema_proc():
Now we use open_proc_table_for_read/close_proc_table() for access to
mysql.proc table (so we won't cause deadlock if we already have some
tables open and locked, this also allows us to have proper content in
ROUTINES system table in statements using stored functions/in stored
functions).
get_schema_tables_result():
Moved all manipulations with Open_tables_state and LEX needed for
safe opening of tables to ST_SCHEMA_TABLE::fill_table functions
(i.e. get_all_tables() and fill_schema_proc()).
sql/sql_update.cc:
open_tables()/open_normal_and_derived_tables():
Added 'flags' argument to be able open tables even if some has done
a flush or hold namelock on them.
result set".
To enable full access to contents of I_S tables from stored functions
or statements that use them, we manipulate with thread's open tables
state and ensure that we won't cause deadlock when we open tables by
ignoring flushes and name-locks.
Building of contents of I_S.TABLES no longer requires locking of tables
since we use use handler::info() method with HA_STATUS_AUTO flag instead
of handler::update_auto_increment() for obtaining information about
auto-increment values. But this also means that handlers have to implement
support for HA_STATUS_AUTO flag (particularly InnoDB needs it).
mysql-test/t/information_schema.test:
Stub out column in results that we don't care about, and may vary
mysql-test/r/information_schema.result:
Update results