into bodhi.local:/opt/local/work/mysql-5.0-runtime
heap/hp_block.c:
Auto merged
mysql-test/r/view.result:
Auto merged
server-tools/instance-manager/listener.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_string.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
tests/mysql_client_test.c:
Auto merged
heap/hp_write.c:
SCCS merged
aliases ignored
When a column reference to a column in JOIN USING is resolved and a new
Item is created for this column the user defined name was lost.
This fix preserves the alias by setting the name of the new Item to the
original alias.
mysql-test/r/join.result:
BUG#25106: A USING clause in combination with a VIEW results in column
aliases ignored
- test case
mysql-test/t/join.test:
BUG#25106: A USING clause in combination with a VIEW results in column
aliases ignored
- test case
sql/sql_base.cc:
BUG#25106: A USING clause in combination with a VIEW results in column
aliases ignored
- take the alias of the Item to be replaced and set it into the newly
allocated Item.
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
include/my_global.h:
Auto merged
mysql-test/Makefile.am:
Auto merged
mysql-test/lib/mtr_cases.pl:
Auto merged
mysql-test/lib/mtr_process.pl:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/t/myisam.test:
Auto merged
mysql-test/t/mysqladmin.test:
Auto merged
mysql-test/t/rpl_rotate_logs.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
scripts/mysqlbug.sh:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/item_sum.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_class.h:
Auto merged
Makefile.am:
manual merge
mysql-test/t/trigger.test:
manual merge
strings/ctype-extra.c:
manual merge
correctly.
The Item_func::print method was used to print the Item_func_encode and the
Item_func_decode objects. The last argument to ENCODE and DECODE functions
is a plain C string and thus Item_func::print wasn't able to print it.
The print() method is added to the Item_func_encode class. It correctly
prints the Item_func_encode and the Item_func_decode objects.
mysql-test/t/func_str.test:
Added a test case for bug#23409: Arguments of the ENCODE() and the
> DECODE() functionswere not printed correctly.
mysql-test/r/func_str.result:
Added a test case for bug#23409: Arguments of the ENCODE() and the DECODE() functions were not printed correctly.
sql/item_strfunc.h:
Bug#23409: Arguments of the ENCODE() and the DECODE() functions were not printed correctly.
The print() method is added to the Item_func_encode class.
sql/item_strfunc.cc:
Bug#23409: Arguments of the ENCODE() and the DECODE() functions were not printed correctly.
The print() method is added to the Item_func_encode class. It correctly
prints the Item_func_encode and the Item_func_decode objects.
WHERE is present.
If a DELETE statement with ORDER BY and LIMIT contains a WHERE clause
with conditions that for sure cannot be used for index access (like in
WHERE @var:= field) the execution always follows the filesort path.
It happens currently even when for the above case there is an index that
can be used to speedup sorting by the order by list.
Now if a DELETE statement with ORDER BY and LIMIT contains such WHERE
clause conditions that cannot be used to build any quick select then
the mysql_delete() tries to use an index like there is no WHERE clause at all.
mysql-test/t/delete.test:
Added a test case for bug#17711: DELETE doesn't use index when ORDER BY, LIMIT and non-restricting
WHERE is present.
mysql-test/r/delete.result:
Added a test case for bug#17711: DELETE doesn't use index when ORDER BY, LIMIT and non-restricting WHERE is present.
sql/sql_delete.cc:
Bug#17711: DELETE doesn't use index when ORDER BY, LIMIT and non-restricting WHERE is present.
Now if a DELETE statement with ORDER BY and LIMIT contains such WHERE
clause conditions that cannot be used to build any quick select then
the mysql_delete() tries to use an index like there is no WHERE clause at all.
into tiger.mmj.dk:/Users/mmj/bktrees/mysql-5.0
configure.in:
Auto merged
mysql-test/install_test_db.sh:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
scripts/mysql_install_db.sh:
Auto merged
sql/CMakeLists.txt:
Auto merged
sql/mysqld.cc:
Auto merged
win/configure.js:
Auto merged
This patch is an additional code change to the get_str_len_and_pointer
method in log_events.cc. This change is necessary to correct a problem
encountered on 64-bit SUSE where the auto_increment_* variables were
being overwritten. The change corrects a cast mismatch which caused
the problem.
sql/log_event.cc:
BUG#22645 - LC_TIME_NAMES: Statement not replicated
This patch is an additional code change to the get_str_len_and_pointer,
copy_str_and_move methods and the Query_leg_event constructor to
correct a type mismatch encountered during testing on SUSE 64-bit. The patch changes
the data type of the buffer variables was changed to a new typedef
defined in the Log_event class. The new type is:
typedef unsigned char Byte;
The variables changed include:
pos, start, end, and data_buf
sql/log_event.h:
BUG#22645 - LC_TIME_NAMES: Statement not replicated
This patch adds a new type definition to the Log_event class. The new
type is typedef unsigned char Byte. It is used in place of the uchar
and usigned char definitions in the Query_log_event constructor to
eliminate type conversion problems encountere on SUSE 64-bit.
This patch is an additional code change to the get_str_len_and_pointer
method in log_events.cc. This change is necessary to correct a problem
encountered on 64-bit SUSE where the auto_increment_* variables were
being overwritten. The change corrects a cast mismatch which caused
the problem.
sql/log_event.cc:
BUG#22645 - LC_TIME_NAMES: Statement not replicated
This patch is an additional code change to the get_str_len_and_pointer,
copy_str_and_move methods and the Query_leg_event constructor to
correct a type mismatch encountered during testing on SUSE 64-bit. The patch changes
the data type of the buffer variables was changed to a new typedef
defined in the Log_event class. The new type is:
typedef unsigned char Byte;
The variables changed include:
pos, start, end, and data_buf
sql/log_event.h:
This patch adds a new type definition to the Log_event class. The new
type is typedef unsigned char Byte. It is used in place of the uchar
and usigned char definitions in the Query_log_event constructor to
eliminate type conversion problems encountere on SUSE 64-bit.
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt
libmysql/libmysql.c:
Auto merged
mysql-test/r/join_nested.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/r/type_binary.result:
Auto merged
mysql-test/r/user_var.result:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
mysql-test/t/type_newdecimal.test:
Auto merged
mysql-test/t/user_var.test:
Auto merged
sql/field.h:
Auto merged
sql/filesort.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql-common/client.c:
Auto merged
sql-common/my_time.c:
Auto merged
sql/sql_select.cc:
Auto merged
sql/table.cc:
Auto merged
strings/decimal.c:
Auto merged
sql/mysqld.cc:
manual merge
sql/sql_base.cc:
manual merge
2nd version
During tmp tables cleanup we get the handler for temporary table
and delete table using handler method.
sql/mysql_priv.h:
added function prototype
sql/mysqld.cc:
added call of mysql_rm_tmp_tables() function
sql/sql_base.cc:
mysql_rm_tmp_tables()
-removed from table_cache_init
-During tmp tables cleanup we get the handler for temporary table
and delete table using handler method.
it allows to remove orphan records from data dictionary(InnoDB)
In the method Item_field::fix_fields we try to resolve the name of
the field against the names of the aliases that occur in the select
list. This is done by a call of the function find_item_in_list.
When this function finds several occurrences of the field name
it sends an error message to the error queue and returns 0.
Yet the code did not take into account that find_item_in_list
could return 0 and tried to dereference the returned value.
mysql-test/r/order_by.result:
Added a test case for bug #25427.
mysql-test/t/order_by.test:
Added a test case for bug #25427.
sql/item.cc:
Fixed bug #25427.
In the method Item_field::fix_fields we try to resolve the name of
the field against the names of the aliases that occur in the select
list. This is done by a call of the function find_item_in_list.
When this function finds several occurrences of the field name
it sends an error message to the error queue and returns 0.
Yet the code did not take into account that find_item_in_list
could return 0 and tried to dereference the returned value.
- configure --disable-grant-options defines DISABLE_GRANT_OPTIONS
- configure.js/cmake also updated
- if DISABLE_GRANT_OPTIONS is defined, mysqld no longer recognizes:
--bootstrap
--init-file
--skip-grant-tables
Scripts which rely on those three options are modified to check the environment for MYSQLD_BOOTSTRAP; it should be set to the full path of a mysqld which does handle those options.
For example:
$ export MYSQLD_BOOTSTRAP
$ MYSQLD_BOOTSTRAP=/path/to/full/MySQL/bin/mysqld
$ mysql_install_db
$ make test
configure.in:
WL#3670
Add --disable-grant-options
mysql-test/install_test_db.sh:
Add MYSQLD_BOOTSTRAP env variable, to enable test suite to work even if mysqld does not accept --bootstrap or --skip-grant-tables.
mysql-test/mysql-test-run.pl:
Add MYSQLD_BOOTSTRAP env variable, to enable test suite to work even if mysqld does not accept --bootstrap or --skip-grant-tables.
mysql-test/mysql_test_run_new.c:
Mention need for MYSQLD_BOOTSTRAP in a comment, in case this needs to be used with a mysqld which does not accept the --bootstrap option.
scripts/mysql_install_db.sh:
Add MYSQLD_BOOTSTRAP env variable, to enable mysqld_install_db to work even if mysqld does not accept --bootstrap or --skip-grant-tables.
sql/CMakeLists.txt:
Add DISABLE_GRANT_OPTIONS define
sql/mysqld.cc:
Add DISABLE_GRANT_OPTIONS define, which removes the --bootstrap, --init-file, and --skip-grant-tables options
win/README:
Document the DISABLE_GRANT_OPTIONS define
win/configure.js:
Handle DISABLE_GRANT_OPTIONS
used.
The Item::save_in_field() function is called from fill_record() to fill the
new row with data while execution of the CREATE TABLE ... SELECT statement.
Item::save_in_field() calls val_xxx() methods in order to get values.
val_xxx() methods do not take into account the result field. Due to this
Item_func_set_user_var::val_xxx() methods returns values from the original
table, not from the temporary one.
The save_in_field() member function is added to the Item_func_set_user_var
class. It detects whether the result field should be used and properly updates
the value of the user variable.
sql/item_func.cc:
Bug#16861: User defined variable can have a wrong value if a tmp table was used.
Added the save_in_field() member function to the Item_func_set_user_var class.
sql/item_func.h:
Bug#16861: User defined variable can have a wrong value if a tmp table was used.
Added the save_in_field() member function to the Item_func_set_user_var class.
mysql-test/r/user_var.result:
Extended the test case for bug#18681: User defined variable can have a wrong value if
a tmp table was used.
mysql-test/t/user_var.test:
Extended the test case for bug#18681: User defined variable can have a wrong value if
a tmp table was used.
A BINARY field is represented by the Field_string class. The space character
is used as the filler for unused characters in such a field. But a BINARY field
should use \x00 instead.
Field_string:reset() now detects whether the current field is a BINARY one
and if so uses the \x00 character as a default value filler.
sql/field.h:
Bug#14171: Wrong internal default value for a BINARY field.
Field_string:reset() now detects whether the current field is a BINARY one
and if so uses the \x00 character as a default value filler.
mysql-test/r/type_binary.result:
Added a test case for the bug#14171: Wrong internal default value for a BINARY field.
mysql-test/t/type_binary.test:
Added a test case for the bug#14171: Wrong internal default value for a BINARY field.
ENUMs weren't allowed to have character 0xff, a perfectly good character in many locales.
This was circumvented by mapping 0xff in ENUMs to ',', thereby prevent actual commas from
being used (because they too would get converted to 0xff on load). Now if 0xff makes an
appearance, we find a character not used in the enum and use that as a separator. If no
such character exists, we throw an error.
Any solution would have broken some sort of existing behaviour. This solution should
serve both fractions (those with 0xff and those with ',' in their enums), but
WILL REQUIRE A DUMP/RESTORE CYCLE FROM THOSE WITH 0xff IN THEIR ENUMS. :-/
That is, mysqldump with their current server, and restore when upgrading to one with
this patch.
(port of the original 4.1 patch. incorporates some suggestions by kaamos.)
mysql-test/r/type_enum.result:
Bug#24660: "enum" field type definition problem
Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
char in some locales), or ',', or both.
mysql-test/t/type_enum.test:
Bug#24660: "enum" field type definition problem
Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
char in some locales), or ',', or both.
sql/table.cc:
Bug#24660: "enum" field type definition problem
Revert fix for Bug#20922.
sql/unireg.cc:
Bug#24660: "enum" field type definition problem
Use a field-separator for ENUM-values that is not part of those values. If impossible,
throw error.
into olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug25027
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/sql_lex.cc:
Auto merged
into moonlight.home:/home/tomash/src/mysql_ab/mysql-5.1-bug23443
sql/item_func.cc:
Auto merged
storage/heap/hp_block.c:
Auto merged
storage/heap/hp_write.c:
Manual merge.
into moonlight.home:/home/tomash/src/mysql_ab/mysql-4.1-bug23443
heap/hp_block.c:
Auto merged
sql/item_func.cc:
Auto merged
heap/hp_write.c:
Manual merge.
server
The problem was that when memory was exhausted HEAP engine could crash
(GROUP BY uses HEAP TABLE). Alternatively, if SET was used, it could
report an error "You may only use constant expressions with SET" instead
of "Out of memory (Needed NNNNNN bytes)".
The solution is:
- pass MY_WME to (some) calls to my_malloc() to get correct message.
- fix heap_write() so that the first key is skipped during cleanup
on ENOMEM because it wasn't inserted and doesn't have to be
deleted.
No test case is provided because we can't test out-of-memory behaviour
in our current test framework.
heap/hp_block.c:
If allocation fails, write an error message.
heap/hp_write.c:
On ENOMEM, skip the first key in cleanup, as it wasn't inserted yet.
sql/item_func.cc:
Add MY_WME so that OOM error will be reported.
into gbichot3.local:/home/mysql_src/mysql-5.1-rpl-19725
sql/sp_head.cc:
Auto merged
mysql-test/r/rpl_sp.result:
using 5.1's version, will merge by hand after running the new test
mysql-test/t/rpl_sp.test:
using 5.1's version, will re-insert the new test portion by hand
correctly in some cases".
In short, calls to a stored function located in another database
than the default database, may fail to replicate if the call was made
by SET, SELECT, or DO.
Longer: when a stored function is called from a statement which does not go
to binlog ("SET @a=somedb.myfunc()", "SELECT somedb.myfunc()",
"DO somedb.myfunc()"), this crafted statement is binlogged:
"SELECT myfunc();" (accompanied with a mention of the default database
if there is one). So, if "somedb" is not the default database,
the slave would fail to find myfunc(). The fix is to specify the
function's database name in the crafted binlogged statement, like this:
"SELECT somedb.myfunc();". Test added in rpl_sp.test.
mysql-test/r/rpl_sp.result:
Because I moved the SHOW BINLOG EVENTS down a bit, big portions of its
output move. Also, the function's database name appears in
SELECT statements.
mysql-test/t/rpl_sp.test:
Adding test for BUG#19725.
Moving the SHOW BINLOG EVENTS down, it is run at the very end to
test everything.
sql/sp_head.cc:
When binlogging a "SELECT myfunc()" (when a stored function is executed
inside a statement which does not go to the binlog (like a SET,
SELECT, DO), we need to write "SELECT db_of_myfunc().myfunc()",
because the function may be in a database which is not the default
database.
into macbook.local:/Users/kgeorge/mysql/work/merge-5.1-opt
mysql-test/r/distinct.result:
Auto merged
mysql-test/r/gis-rtree.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/udf.result:
Auto merged
mysql-test/t/gis-rtree.test:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
mysql-test/t/udf.test:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/item_subselect.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_select.cc:
Auto merged
storage/myisam/mi_check.c:
Auto merged
sql/sql_udf.cc:
SCCS merged
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint-greener
Makefile.am:
Auto merged
configure.in:
Auto merged
include/mysql.h:
Auto merged
mysql-test/Makefile.am:
Auto merged
mysql-test/lib/mtr_cases.pl:
Auto merged
mysql-test/lib/mtr_process.pl:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/myisam.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
scripts/mysqlbug.sh:
Auto merged
server-tools/instance-manager/Makefile.am:
Auto merged
sql/event_queue.cc:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/item_sum.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_plugin.cc:
Auto merged
sql/sql_show.cc:
Auto merged
storage/federated/ha_federated.cc:
Auto merged
mysql-test/r/warnings.result:
Manual merge.
mysql-test/t/warnings.test:
Manual merge.
strings/ctype-extra.c:
Manual merge.