does not work well together". Now using simplier and more correct
implementation of st_lex::unlink_first_table()/link_first_table_back()
(It also nicely handles case when global table list is created because
of implictly used time zone tables). (2nd attempt)
Fix for bug #7705 "CONVERT_TZ() crashes with subquery/WHERE on index
column". Implemented new approach for caching objects for constant
time zone arguments. Now instead of determining whenever these arguments
are constants and performing time zone lookup at fix_fields() stage, we
do it on first get_date() invocation.
Cleanup of global @@time_zone variable handling.
mysql-test/r/timezone2.result:
Added test for bugs #7705 "CONVERT_TZ() crashes with subquery/WHERE on
index column" and #7899 "CREATE TABLE .. SELECT .. and CONVERT_TZ()
function does not work well together".
mysql-test/t/timezone2.test:
Added test for bugs #7705 "CONVERT_TZ() crashes with subquery/WHERE on
index column" and #7899 "CREATE TABLE .. SELECT .. and CONVERT_TZ()
function does not work well together".
sql/item_timefunc.cc:
Item_func_convert_tz():
New approach for caching objects for constant time zone arguments.
Now instead of determining whenever these arguments are constants
and performing time zone lookup at fix_fields() stage, we do it
on first get_date() invocation. This works better in cases when
const_item() for these arguments returns true only on get_date()
stage but not on fix_fields() stage (e.g. this happens in quries
with joins or derived tables).
sql/item_timefunc.h:
Item_func_convert_tz():
Added from_tz_cached/to_tz_cached members indicating whenever we
already have Time_zone object representing one of constant time zone
arguments.
sql/set_var.cc:
Cleaned up global @@time_zone variable handling. Now we use proper
locking when we are setting or reading its value.
sql/set_var.h:
Removed declaration of sys_var_thd_time_zone::get_tz_ptr() method, which
no longer used.
sql/sql_lex.cc:
st_lex::unlink_first_table(), st_lex::link_first_table_back():
Simplify implementation according to Monty's suggestion.
Instead doing something special if global and local table lists
are the same, we simply save/restore pointers to first elements
of both global and local lists (which works even when this lists
are the same!). This handles nicely the case when we have separate
global table list becuase time zone tables are implicitly used.
sql/tztime.cc:
Backport of Monty's fixes from 5.0, which give us nicer error messages
if we haven't found time zone with such name or its description.
into mysql.com:/home/jonas/src/mysql-5.0
mysql-test/r/ndb_index_unique.result:
Auto merged
mysql-test/t/ndb_index_unique.test:
Auto merged
sql/sql_insert.cc:
Auto merged
mysql-test/r/subselect.result:
cleaning up of results of subselects test
mysql-test/t/subselect.test:
cleaning up of results of subselects test
sql/item_subselect.cc:
call result object cleupup on engine cleunup
sql/sql_class.cc:
added cleanup of select_max_min_finder_subselect
sql/sql_class.h:
added cleanup of select_max_min_finder_subselect
mysql-test/r/ndb_index_unique.result:
Auto merged
mysql-test/t/ndb_index_unique.test:
Auto merged
sql/ha_ndbcluster.h:
Auto merged
sql/ha_ndbcluster.cc:
merge bug#8101 and setBound usage if id instead of name
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb
sql/ha_ndbcluster.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_select.cc:
Auto merged
Test cases using common object (database,user,table,..) names could probably
destroy customer data, when connecting to an already running server.
This Changeset contains an auxiliary routine include/testdb_only.inc" which
should be sourced by tests doing such dangerous things.
The test case will get a "[skipped]" when the environment variable
USE_RUNNING_SERVER is not 0 .
The modified mysql-test-run.sh sets USE_RUNNING_SERVER to 0, when
the "mysql-test-run" starts its own server, aka there was no "--extern"
option.
mysql-test/mysql-test-run.sh:
If mysql-test-run spawns the server by itself, USE_RUNNING_SERVER will be set to 0 instead of "".
If the option "--extern" was detected, USE_RUNNING_SERVER will be set to 1 instead of "1".
Several comparisons have to be changed
[ -z "$USE_RUNNING_SERVER" ] --> [ $USE_RUNNING_SERVER -eq 0 ]
[ -n "$USE_RUNNING_SERVER" ] --> [ $USE_RUNNING_SERVER -eq 1 ]
USE_RUNNING_SERVER will be exported.
Added test case for bug #7672 that existed only in 4.0.
mysql-test/t/order_by.test:
Added test case for bug #7672 that existed only in 4.0.
mysql-test/r/order_by.result:
Added test case for bug #7672 that existed only in 4.0.
Added a test case for bug #7672.
sql_yacc.yy:
Fixed bug #7672.
Made queries of the form (SELECT ...) ORDER BY ... to
be equivalent to SELECT ... ORDER BY ...
sql/sql_yacc.yy:
Fixed bug #7672.
Made queries of the form (SELECT ...) ORDER BY ... to
be equivalent to SELECT ... ORDER BY ...
mysql-test/t/order_by.test:
Added a test case for bug #7672.
mysql-test/r/order_by.result:
Added a test case for bug #7672.
tool does, with the column names as attributes on <field>
elements, instead of trying to use the column name as the
element name. Also fix some encoding issues. (Bug #7811)
client/mysql.cc:
Quote > and " in XML output, and use <field name="XXX"></field>
instead of <XXX></XXX>, to make the output more like
mysqldump --xml and avoid having to turn XXX into a sensible
element name.
mysql-test/mysql-test-run.sh:
Less restricted permissions.
mysql-test/r/rpl_rotate_logs.result:
If the path where mysql-test-run was run was symlinked, this test could
fail. This is a fix.
mysql-test/t/rpl_rotate_logs.test:
If the path where mysql-test-run was run was symlinked, this test could
fail. This is a fix.
changed ndb_restore test somewhat to fisrt make the tables in myisam
mysql-test/mysql-test-run.sh:
backported ndb_mgm options from 5.0
mysql-test/ndb/ndbcluster.sh:
backported ndb_mgm options from 5.0
mysql-test/r/ndb_restore.result:
changed ndb_restore test somewhat to fisrt make the tables in myisam
mysql-test/t/ndb_restore.test:
changed ndb_restore test somewhat to fisrt make the tables in myisam
into patrick-galbraiths-computer.local:/Users/patg/mysql-5.0
BitKeeper/etc/logging_ok:
auto-union
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/ha_federated.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/set_var.cc:
Auto merged
BitKeeper/deleted/.del-sort.c~e2e56b5a37ce86f4:
Auto merged
client/mysql.cc:
Auto merged
client/mysqlbinlog.cc:
Auto merged
client/mysqldump.c:
Auto merged
client/mysqltest.c:
Auto merged
myisam/ft_boolean_search.c:
Auto merged
myisam/mi_packrec.c:
Auto merged
myisam/sort.c:
Auto merged
mysql-test/r/fulltext.result:
Auto merged
sql/item_create.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/log.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_acl.h:
Auto merged
sql/sql_analyse.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
sql/sql_db.cc:
Auto merged
sql/tztime.cc:
Auto merged
tests/client_test.c:
Auto merged
- Do not allow a column list as part of SHOW WITH WHERE task.
- The WHERE clause must accept field names which are
valid in SHOW, not INFORMATION_SCHEMA names.
mysql-test/r/information_schema.result:
The test correction
mysql-test/t/information_schema.test:
The test correction
sql/sql_base.cc:
Process field translation table for 'show' commands
sql/sql_parse.cc:
schema_table_seformed is always true for 'show' commands
sql/sql_show.cc:
- Do not allow a column list as part of SHOW WITH WHERE task.
- The WHERE clause must accept field names which are
valid in SHOW, not INFORMATION_SCHEMA names.
sql/sql_yacc.yy:
Do not allow a column list as part of SHOW WITH WHERE task
sql/table.h:
A new 'schema_table_reformed' variable in table_list
If schema_table_reformed is true select items should be
translated using field translation table
mysql-test/r/subselect.result:
Forward reference detection
mysql-test/t/subselect.test:
Forward reference detection
sql/item.cc:
now forward reference is detected via ref_pointer_array, because some literal constants are 'fixed' just after creation
sql/sql_base.cc:
fill ref_pointer_array with zerows for forward reference detection.
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
mysys/mf_keycache.c:
Auto merged
sql/item.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/table.cc:
Auto merged
mysql-test/r/subselect.result:
Comparison subquery and row with nested rows
mysql-test/t/subselect.test:
Comparison subquery and row with nested rows
sql/item_subselect.cc:
check that row elements have the same dimention that SELECT list elements
fixed cols() method call (it have to be called only after fix_fields())
mysql-test/r/subselect.result:
Comparison subquery with * and row
mysql-test/t/subselect.test:
Comparison subquery with * and row
sql/item_cmpfunc.h:
initialization allowed_arg_cols for autodetection
sql/item_func.cc:
support of allowed_arg_cols autodetection by first argument
sql/item_func.h:
commant
sql/item_subselect.cc:
correct column number fetching for subqueries
sql/sql_lex.h:
method to check that UNION is prepared