(including one which may explain autobuild's failure of yesterday)
client/mysqlbinlog.cc:
- In mysqlbinlog, we should not reset the Format event when we see Rotate. If a binlog started with a Format event, it is not going to switch later to 4.0 format.
I had already did the same fix in Rotate_log_event::exec_event() in replication.
- Fix for a merge bug.
sql/log_event.cc:
An event with an uninited catalog (read from a 4.x server) is not the same as an event with a NULL catalog
(5.0 server which did not specify catalog), the difference is that they are not in the same format;
so I introduce a way to know if the catalog has been inited or not. This fixes a rpl_trunc_binlog failure
I had.
When we leave Load_log_event::exec_event(), we must reset thd->catalog to 0, like we already do
in Query_log_event::exec_event(). This fixes a Valgrind error which popped in rpl_charset (which may
be what caused autobuild to crash yesterday).
And a fix for event's parsing (the position was always computed right because start_dup==end is always true
and will until we add new string members to Query_log_event.
sql/log_event.h:
catalog_len changed from uint to int to allow -1, which means "not inited"
(I preferred to do it like this rather than create a new bool var Query_log_event::catalog_inited
like we have in Query_log_event::sql_mode_inited; that's because catalog will not use the whole range of int,
so it's allowed to pick -1 as a special value and have only one var.
sql/slave.cc:
comments
required autotools macro written and deployed in all apropriate Makefile.ams.
Use cases checked:
- linux, standard location of zlib, no ndb
- linux, standard locatoin of zlib, with ndb
- linux, non-standard location of zlib, no ndb
- hpux11, use of bundled zlib, no ndb
The only non-checked case is non-standard location of zlib (or use of bundled
zlib) + ndb. I wasn't able to check it as ndb/ just won't compile on beasts
like AIX52 or HPUX11, where such a check is possible. It didn't compile
there before as these systems dont't have installed zlib, so nothing got broken ;)
Makefile.am:
WL#1518 "make bundled zlib usable for unix builds", part 2:
- zlib dir should be built only if there is no system zlib available;
with introducing of DIST_SUBDIRS goal, os2, BUILD and SSH now only entered
if make dist
acinclude.m4:
WL#1518, "make bundled zlib usable for unix builds":
- actual implementation of the check for various zlib usage options
configure.in:
WL#1518, "make bundled zlib usable for unix builds":
- MYSQL_CHECK_ZLIB_WITH_COMPRESS deployed
libmysql/Makefile.am:
WL#1518, "make bundled zlib usable for unix builds":
- support for non-standard zlib include dir added
libmysql_r/Makefile.am:
WL#1518, "make bundled zlib usable for unix builds":
- support for non-standard zlib include dir added
libmysqld/Makefile.am:
WL#1518, "make bundled zlib usable for unix builds":
- support for non-standard zlib include dir added
myisam/Makefile.am:
WL#1518, "make bundled zlib usable for unix builds":
- support for non-standard zlib binary dir added
mysys/Makefile.am:
WL#1518, "make bundled zlib usable for unix builds":
- support for non-standard zlib include dir added
sql/Makefile.am:
WL#1518, "make bundled zlib usable for unix builds":
- support for non-standard zlib include dir and library dir added
tools/Makefile.am:
WL#1518, "make bundled zlib usable for unix builds":
- support for non-standard zlib include dir added
- copyright added
mysqld crashes on CREATE TABLE in a database with corrupted db.opt file.
Bug#4646
sql/sql_db.cc:
mysqld crashes on CREATE TABLE in a database with corrupted db.opt file.
Bug#4646
mysql-test/r/view.result:
using VIEW fields several times in query resolved via temporary tables
mysql-test/t/view.test:
using VIEW fields several times in query resolved via temporary tables
sql/item.h:
fixed using of result_field by Item_ref
sql/sql_base.cc:
Create Item_ref as reference on VIEW fields expression reference
sql/sql_insert.cc:
privent creating Item_ref in insert list (where Item_fields should be)
sql/sql_lex.cc:
Item_ref creation control
sql/sql_lex.h:
Item_ref creation control
sql/sql_update.cc:
privent creating Item_ref in insert list (where Item_fields should be) and creation Item_fields for UPDATE list
sql/table.cc:
Do not create Item_ref for internal view of view processing
libmysqld/lib_sql.cc:
max_allowed_packet - don't send client one to global
thread initialization fixed
"std" to "def" in catalog name
sql/mysqld.cc:
added initialization of global_system_variables.max_allowed_packet
sql/set_var.cc:
don't do this in embedded library
#4700 (Unsigned value returned as signed)
just no appropriate checking
#4701 (Errors returned earlier than expected)
all errors returned from send_command()
#4702 (Result isn't freed properly if there's no retrieval)
flush_use_result has only 'client' version and should
be made 'virtual'
include/mysql.h:
flush_use_result 'virtual' method added to MYSQL (#4701)
include/sql_common.h:
no flush_use_result() now (#4702)
libmysql/libmysql.c:
call of the flush_use_result changed (#4702)
libmysqld/lib_sql.cc:
now errors returned from emb_advanced_command() or from emb_read_rows()
depending on if number of returned fields is not 0 (#4701)
emb_flush_use_result() implementation (#4702)
sql-common/client.c:
cli_flush_use_result() implementation (#4702)
sql/sql_prepare.cc:
unsigned flag now checked (#4700)
mysql-test/r/view.result:
fixed ps variavles test
test of view built over updatable view
mysql-test/t/view.test:
fixed ps variavles test
test of view built over updatable view
sql/sql_acl.cc:
mpre optimal locking (found by Monty)
sql/sql_view.cc:
made different fields for view updatebility in principle and updatability during this execution
sql/table.h:
made different fields for view updatebility in principle and updatability during this execution
Sub-CALLs of procedures zapped thd->current_arena for good.
mysql-test/r/sp.result:
New test case for BUG#4579.
mysql-test/t/sp.test:
New test case for BUG#4579.
sql/sp_head.cc:
Keep and restore old thd->current_arena before/after executing an SP,
instead of just setting it to 0 afterwards.
mysql-test/r/view.result:
check 'use index' on view with temporary table
mysql-test/t/view.test:
check 'use index' on view with temporary table
sql/sql_base.cc:
privent crash on temporary table
mysql-test/r/ps_1general.result:
Auto merged
mysql-test/r/ps_2myisam.result:
Auto merged
mysql-test/r/ps_3innodb.result:
Auto merged
mysql-test/r/ps_4heap.result:
Auto merged
mysql-test/r/ps_5merge.result:
Auto merged
mysql-test/r/ps_6bdb.result:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
new tests to ensure that prepared statement *really* work
(and that MySQL not picks up some number from arbitrary location
that happens to match the parameter's value)
mysql-test/include/ps_query.inc:
new tests to ensure that prepared statement *really* work
(and that MySQL not picks up some number from arbitrary location
that happens to match the parameter's value)
mysql-test/r/ps_2myisam.result:
results updated
mysql-test/r/ps_3innodb.result:
results updated
mysql-test/r/ps_4heap.result:
results updated
mysql-test/r/ps_5merge.result:
results updated
mysql-test/r/ps_6bdb.result:
results updated
sql/sql_select.cc:
don't shortcut - it backfires!
(in particular - when itemptr is Item_param :)
We now get an run-time error instead of a crash (although a slightly misleading
error message, but it's an improvement).
mysql-test/r/sp-error.result:
New test case for BUG#2653.
mysql-test/t/sp-error.test:
New test case for BUG#2653.
sql/sp_head.cc:
Detect failed evals (fix item really), which are due to unresolved variables/fields.
Typically this would be a reference to an undeclared variable.
(Also got rid of some compiler warnings.)
sql/sp_rcontext.cc:
Detect failed evals (fix item really), which are due to unresolved variables/fields.
Typically this would be a reference to an undeclared variable.
sql/sp_rcontext.h:
Changed return type to int, so be able to detect failed evals (fix item).
sql/sql_class.cc:
Changed return type to int, so be able to detect failed evals (fix item).
mysql-test/r/view.result:
test of duplicate field names
mysql-test/t/view.test:
test of duplicate field names
sql/sql_view.cc:
test of duplicate field names