Adding an event that can be used to denote that an incident occured
on the master. The event can be used to denote a gap in the replication
stream, but can also be used to denote other incidents.
In addition, the injector interface is extended with functions to
generate an incident event. The function will also rotate the binary
log after generating an incident event to get a fresh binary log.
client/Makefile.am:
Adding file rpl_constants.h with constants for replication.
mysql-test/extra/binlog_tests/binlog.test:
Binlog position change
mysql-test/extra/binlog_tests/binlog_insert_delayed.test:
Binlog position change
mysql-test/extra/binlog_tests/ctype_cp932_binlog.test:
Binlog position change
mysql-test/extra/binlog_tests/ctype_ucs_binlog.test:
Binlog position change
mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
Binlog position change
mysql-test/extra/rpl_tests/rpl_deadlock.test:
Binlog position change
mysql-test/extra/rpl_tests/rpl_log.test:
Binlog position change
mysql-test/extra/rpl_tests/rpl_multi_query.test:
Binlog position change
mysql-test/extra/rpl_tests/rpl_row_charset.test:
Binlog position change
mysql-test/extra/rpl_tests/rpl_row_sp002.test:
Binlog position change
mysql-test/extra/rpl_tests/rpl_row_sp003.test:
Binlog position change
mysql-test/extra/rpl_tests/rpl_stm_charset.test:
Binlog position change
mysql-test/include/show_binlog_events.inc:
Binlog position change
mysql-test/r/binlog_row_binlog.result:
Result change
mysql-test/r/binlog_row_ctype_ucs.result:
Result change
mysql-test/r/binlog_row_insert_select.result:
Result change
mysql-test/r/binlog_row_mix_innodb_myisam.result:
Result change
mysql-test/r/binlog_stm_binlog.result:
Result change
mysql-test/r/binlog_stm_ctype_ucs.result:
Result change
mysql-test/r/binlog_stm_insert_select.result:
Result change
mysql-test/r/binlog_stm_mix_innodb_myisam.result:
Result change
mysql-test/r/ctype_cp932_binlog_row.result:
Result change
mysql-test/r/ctype_cp932_binlog_stm.result:
Result change
mysql-test/r/flush_block_commit_notembedded.result:
Result change
mysql-test/r/rpl_000015.result:
Result change
mysql-test/r/rpl_change_master.result:
Result change
mysql-test/r/rpl_deadlock_innodb.result:
Result change
mysql-test/r/rpl_flushlog_loop.result:
Result change
mysql-test/r/rpl_loaddata.result:
Result change
mysql-test/r/rpl_loaddata_s.result:
Result change
mysql-test/r/rpl_log_pos.result:
Result change
mysql-test/r/rpl_ndb_charset.result:
Result change
mysql-test/r/rpl_ndb_log.result:
Result change
mysql-test/r/rpl_ndb_multi.result:
Result change
mysql-test/r/rpl_rbr_to_sbr.result:
Result change
mysql-test/r/rpl_rotate_logs.result:
Result change
mysql-test/r/rpl_row_basic_11bugs.result:
Result change
mysql-test/r/rpl_row_charset.result:
Result change
mysql-test/r/rpl_row_create_table.result:
Result change
mysql-test/r/rpl_row_delayed_ins.result:
Result change
mysql-test/r/rpl_row_drop.result:
Result change
mysql-test/r/rpl_row_flsh_tbls.result:
Result change
mysql-test/r/rpl_row_inexist_tbl.result:
Result change
mysql-test/r/rpl_row_log.result:
Result change
mysql-test/r/rpl_row_log_innodb.result:
Result change
mysql-test/r/rpl_row_max_relay_size.result:
Result change
mysql-test/r/rpl_row_reset_slave.result:
Result change
mysql-test/r/rpl_row_until.result:
Result change
mysql-test/r/rpl_server_id1.result:
Result change
mysql-test/r/rpl_server_id2.result:
Result change
mysql-test/r/rpl_sp.result:
Result change
mysql-test/r/rpl_stm_charset.result:
Result change
mysql-test/r/rpl_stm_flsh_tbls.result:
Result change
mysql-test/r/rpl_stm_log.result:
Result change
mysql-test/r/rpl_stm_max_relay_size.result:
Result change
mysql-test/r/rpl_stm_multi_query.result:
Result change
mysql-test/r/rpl_stm_reset_slave.result:
Result change
mysql-test/r/rpl_stm_until.result:
Result change
mysql-test/r/rpl_switch_stm_row_mixed.result:
Result change
mysql-test/r/rpl_truncate_2myisam.result:
Result change
mysql-test/r/rpl_truncate_3innodb.result:
Result change
mysql-test/r/rpl_truncate_7ndb.result:
Result change
mysql-test/r/user_var-binlog.result:
Result change
mysql-test/t/binlog_row_mix_innodb_myisam.test:
Binlog position change
mysql-test/t/binlog_stm_mix_innodb_myisam.test:
Binlog position change
mysql-test/t/ctype_cp932_binlog_stm.test:
Binlog position change
mysql-test/t/mysqlbinlog.test:
Binlog position change
mysql-test/t/mysqlbinlog2.test:
Binlog position change
mysql-test/t/rpl_loaddata_s.test:
Binlog position change
mysql-test/t/rpl_log_pos.test:
Binlog position change
mysql-test/t/rpl_row_basic_11bugs.test:
Binlog position change
mysql-test/t/rpl_row_create_table.test:
Binlog position change
mysql-test/t/rpl_row_flsh_tbls.test:
Binlog position change
mysql-test/t/rpl_row_mysqlbinlog.test:
Binlog position change
mysql-test/t/rpl_sp.test:
Binlog position change
mysql-test/t/rpl_stm_flsh_tbls.test:
Binlog position change
mysql-test/t/rpl_switch_stm_row_mixed.test:
Binlog position change
mysql-test/t/user_var-binlog.test:
Binlog position change
sql/Makefile.am:
Adding file rpl_constants.h with constants for replication.
sql/log_event.cc:
Changing prototype for read_str() to be const-correct and changing code to match that.
Adding incident log event.
sql/log_event.h:
Adding incident log event.
sql/rpl_injector.cc:
Adding support for generating incidents into the binary log.
sql/rpl_injector.h:
Adding support for generating incidents into the binary log.
sql/share/errmsg.txt:
Adding new error message to indicate an incident.
sql/sql_parse.cc:
Adding code to generate an incident log event just before executing a REPLACE
if the variable "incident_database_resync_on_replace" is set.
mysql-test/r/rpl_incident.result:
New BitKeeper file ``mysql-test/r/rpl_incident.result''
mysql-test/t/rpl_incident.test:
New BitKeeper file ``mysql-test/t/rpl_incident.test''
sql/rpl_constants.h:
New BitKeeper file ``sql/rpl_constants.h''
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
client/mysqlbinlog.cc:
Auto merged
mysql-test/extra/binlog_tests/binlog.test:
Auto merged
mysql-test/r/binlog_row_binlog.result:
Auto merged
mysql-test/r/binlog_stm_binlog.result:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/lock.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/slave.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/table.h:
Auto merged
mysql-test/r/rpl_ndb_log.result:
Manual merge main->rpl 5.1
mysql-test/r/rpl_truncate_7ndb.result:
Manual merge main->rpl 5.1
sql/log.cc:
Manual merge main->rpl 5.1
sql/log_event.cc:
Manual merge main->rpl 5.1
sql/log_event.cc:
Adding non-reachable return statement at end of function to keep compiler
happy.
sql/slave.cc:
In order to keep compiler happy: using variable only used in debug code
instead of recalling virtual function.
rows event):
Adding a after image COLS bitmap to Update_rows_log_event (for telling
what columns that are present in the after image of each row update).
Also fixing case where Rows_log_event length was not correctly computed
(happened when the number of columns in a table was more than 251).
mysql-test/r/rpl_row_inexist_tbl.result:
Result change.
sql/log_event.cc:
Extending Rows_log_event with two new fields: m_bitbuf_ai and m_cols_ai. These fields are only used for the Update_rows_log_event.
Adding implementation of Update_rows_log_event destructor.
Using new after image fields inside the Update_rows_log_event.
Factoring out common constructor bodies into Update_rows_log_event::init()
function.
Fixing case where length of Rows_log_event was not correctly computed (for
tables with more than 251 columns).
sql/log_event.h:
Moving implementation of Rows_log_event::get_data_size() into .cc file.
Adding Update_rows_log_event constructor accepting both before image
and after image COLS vector.
Adding Update_rows_log_vector destructor.
Adding fields m_bitbuf_ai and m_cols_ai to Rows_log_event.
Fixing is_valid() to look at m_cols_ai as well.
- Improve error handling for "out of memory" problems when master is
sending logs to slave. If memory allocation fails the log should
now report error "memory allocation failed reading log event"
sql/log_event.cc:
Return LOG_READ_MEM from "Log_event::read_log_event" if memory
allocation fails.
when it was printing a Query event, it produced invalid SQL (missing
the BINLOG keyword, so the SQL started with the base64 string, which
is incorrect).
Note: no testcase; I have a .test which shows that the bugfix works,
but it triggers BUG#26361 and so gives Valgrind warnings. I'm sending
this test to the fixer of BUG#26361 for her/him to push when she/he
fixes BUG#26361.
client/mysqlbinlog.cc:
writing the header (a line started with "#", i.e. a comment) and the
body (the real operation) of an event to the same IO_CACHE
(result_cache) confused the logic of Log_event::print_base64()
(which is that if the cache is not empty then the BINLOG keyword
should not be printed); it caused the BINLOG keyword to miss hence
a syntactically wrong output of "mysqlbinlog --base64-output"
for Query events.
So we just use the two IO_CACHE already available in "print_event_info".
sql/log_event.cc:
using the new small inline function.
Note that the replication code should one day be fixed to trap all
errors (like disk write errors).
sql/log_event.h:
small inline function to group two operations: copying an IO_CACHE
to a FILE, and reinitializing this IO_CACHE for being filled again.
sql/records.cc:
fix after merge
into romeo.(none):/home/bk/b23171-mysql-5.1-new-rpl
mysql-test/r/rpl_row_tabledefs_2myisam.result:
Auto merged
mysql-test/r/rpl_row_tabledefs_3innodb.result:
Auto merged
sql/rpl_rli.cc:
Auto merged
sql/rpl_rli.h:
Auto merged
sql/rpl_utility.cc:
Auto merged
sql/rpl_utility.h:
Auto merged
sql/slave.h:
Auto merged
sql/log.cc:
Manual merge
sql/log_event.cc:
Manual merge
sql/log_event.h:
Manual merge
sql/slave.cc:
Manual merge
sql/sql_binlog.cc:
Manual merge
Tail fixes after re-applying patches to older version of clone.
sql/log_event.cc:
Name change of shall_skip() -> do_shall_skip()
Introducing public shall_skip().
Name change of skip reason enumeration constants.
Removing extreneous argument to slave_print_msg() causing compiler warning.
sql/log_event.h:
Adding enumeration for skip reason.
Factoring out exec_event() into exec_relay_log_event().
Making public interface to event execution primitives.
Adding documentation.
Making some (internal) functions const-correct.
sql/rpl_rli.cc:
replicate_same_server_id is now a member variable of RLI.
sql/rpl_rli.h:
replicate_same_server_id is now a member variable of RLI.
sql/slave.cc:
Using RLI-specific member variable replicate_same_server_id instead of
global instance.
Moving comments about skipping logic to exec_relay_log_event().
Moving event execution logic to exec_relay_log_event().
sql/sql_binlog.cc:
Using apply_event() directly and adding comment with explenation.
into romeo.(none):/home/bk/b22583-mysql-5.1-new-rpl
mysql-test/extra/rpl_tests/rpl_log.test:
Auto merged
mysql-test/r/rpl_ndb_log.result:
Auto merged
mysql-test/r/rpl_row_log.result:
Auto merged
mysql-test/r/rpl_row_log_innodb.result:
Auto merged
mysql-test/r/rpl_stm_log.result:
Auto merged
mysql-test/r/rpl_switch_stm_row_mixed.result:
Auto merged
mysql-test/t/mysqlbinlog.test:
Auto merged
mysql-test/t/rpl_switch_stm_row_mixed.test:
Auto merged
sql/log_event.cc:
Auto merged
sql/sql_class.cc:
Auto merged
mysql-test/r/rpl_row_basic_11bugs.result:
Manual merge.
mysql-test/t/rpl_row_basic_11bugs.test:
Manual merge.
field does not work
Fix to prevent MyISAM from reading data from NULL BLOB.
Fix to make record comparison independent of values of unused bits in
record.
Updating binlog positions in tests.
mysql-test/extra/rpl_tests/rpl_multi_query.test:
Binlog position change
mysql-test/extra/rpl_tests/rpl_stm_charset.test:
Binlog position change
mysql-test/include/show_binlog_events.inc:
Binlog position change
mysql-test/r/binlog_stm_binlog.result:
Result change
mysql-test/r/binlog_stm_ctype_ucs.result:
Result change
mysql-test/r/binlog_stm_insert_select.result:
Result change
mysql-test/r/binlog_stm_mix_innodb_myisam.result:
Result change
mysql-test/r/ctype_cp932_binlog_stm.result:
Result change
mysql-test/r/ndb_binlog_multi.result:
Result change
mysql-test/r/rpl_known_bugs_detection.result:
Result change
mysql-test/r/rpl_loaddata.result:
Result change
mysql-test/r/rpl_loaddata_s.result:
Result change
mysql-test/r/rpl_ndb_charset.result:
Result change
mysql-test/r/rpl_ndb_extraCol.result:
Result change
mysql-test/r/rpl_ndb_log.result:
Result change
mysql-test/r/rpl_ndb_multi.result:
Result change
mysql-test/r/rpl_rbr_to_sbr.result:
Result change
mysql-test/r/rpl_rotate_logs.result:
Result change
mysql-test/r/rpl_sp.result:
Result change
mysql-test/r/rpl_stm_charset.result:
Result change
mysql-test/r/rpl_stm_flsh_tbls.result:
Result change
mysql-test/r/rpl_stm_log.result:
Result change
mysql-test/r/rpl_stm_max_relay_size.result:
Result change
mysql-test/r/rpl_stm_multi_query.result:
Result change
mysql-test/r/rpl_stm_reset_slave.result:
Result change
mysql-test/r/rpl_stm_until.result:
Result change
mysql-test/r/rpl_truncate_7ndb.result:
Result change
mysql-test/r/user_var-binlog.result:
Result change
mysql-test/t/binlog_stm_mix_innodb_myisam.test:
Binlog position change
mysql-test/t/ctype_cp932_binlog_stm.test:
Binlog position change
mysql-test/t/mysqlbinlog.test:
Binlog position change
mysql-test/t/mysqlbinlog2.test:
Binlog position change
mysql-test/t/rpl_sp.test:
Binlog position change
mysql-test/t/rpl_stm_flsh_tbls.test:
Binlog position change
sql/log_event.cc:
Emptying the record entirely since it appears MyISAM reads blob column
data even when they are NULL.
Adding code to set unused bits of the records before doing a comparison,
and restoring the original values after. Setting the unused bits is necessary
since NDB does not set them correctly, and resetting them afterwards is needed
because MyISAM compares the record with the one located when updating
or deleting it.
mysql-test/r/rpl_row_basic_11bugs-master.opt:
New BitKeeper file ``mysql-test/r/rpl_row_basic_11bugs-master.opt''
mysql-test/r/rpl_row_basic_11bugs-slave.opt:
New BitKeeper file ``mysql-test/r/rpl_row_basic_11bugs-slave.opt''
into bodhi.local:/opt/local/work/mysql-5.1-runtime
include/my_global.h:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/events_scheduling.result:
Auto merged
BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8:
Auto merged
BitKeeper/deleted/.del-mysql_create_system_tables.sh:
Auto merged
mysql-test/r/query_cache.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/events_scheduling.test:
Auto merged
mysql-test/t/grant_cache.test:
Auto merged
mysql-test/t/query_cache.test:
Auto merged
mysql-test/t/view.test:
Auto merged
scripts/mysql_system_tables_fix.sql:
Auto merged
sql/event_db_repository.cc:
Auto merged
sql/event_queue.cc:
Auto merged
sql/field.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/handler.h:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_help.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.cc:
Auto merged
sql/share/errmsg.txt:
Auto merged
sql/tztime.cc:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
storage/myisam/ha_myisam.h:
Auto merged
mysql-test/r/skip_grants.result:
Manualmerge.
mysql-test/r/sp.result:
Manualmerge.
mysql-test/t/skip_grants.test:
Manualmerge.
mysql-test/t/sp.test:
Manualmerge.
sql/event_data_objects.cc:
Manualmerge.
into janus.mylan:/usr/home/serg/Abk/mysql-5.1
include/my_global.h:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/ha_partition.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/slave.h:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_servers.cc:
Auto merged
sql/table.cc:
Auto merged
sql/table.h:
Auto merged
sql/tztime.cc:
Auto merged
storage/heap/ha_heap.cc:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
storage/myisammrg/ha_myisammrg.h:
Auto merged
into weblab.(none):/home/marcsql/TREE/mysql-5.1-26503-merge
mysql-test/t/sp-error.test:
Auto merged
sql/handler.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
into moonlight.home:/home/tomash/src/mysql_ab/mysql-5.1-bug9953
mysql-test/r/sp-error.result:
Auto merged
mysql-test/r/view.result:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/lock.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/set_var.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_help.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
sql/tztime.cc:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
sql/sql_yacc.yy:
SCCS merged
The problem was that some facilities (like CONVERT_TZ() function or
server HELP statement) may require implicit access to some tables in
'mysql' database. This access was done by ordinary means of adding
such tables to the list of tables the query is going to open.
However, if we issued LOCK TABLES before that, we would get "table
was not locked" error trying to open such implicit tables.
The solution is to treat certain tables as MySQL system tables, like
we already do for mysql.proc. Such tables may be opened for reading
at any moment regardless of any locks in effect. The cost of this is
that system table may be locked for writing only together with other
system tables, it is disallowed to lock system tables for writing and
have any other lock on any other table.
After this patch the following tables are treated as MySQL system
tables:
mysql.help_category
mysql.help_keyword
mysql.help_relation
mysql.help_topic
mysql.proc (it already was)
mysql.time_zone
mysql.time_zone_leap_second
mysql.time_zone_name
mysql.time_zone_transition
mysql.time_zone_transition_type
These tables are now opened with open_system_tables_for_read() and
closed with close_system_tables(), or one table may be opened with
open_system_table_for_update() and closed with close_thread_tables()
(the latter is used for mysql.proc table, which is updated as part of
normal MySQL server operation). These functions may be used when
some tables were opened and locked already.
NOTE: online update of time zone tables is not possible during
replication, because there's no time zone cache flush neither on LOCK
TABLES, nor on FLUSH TABLES, so the master may serve stale time zone
data from cache, while on slave updated data will be loaded from the
time zone tables.
mysql-test/r/help.result:
Update result.
mysql-test/r/lock.result:
Update result.
mysql-test/r/sp-error.result:
Update result.
mysql-test/r/timezone2.result:
Add result for bug#9953: CONVERT_TZ requires mysql.time_zone_name
to be locked.
mysql-test/r/view.result:
Update result: use table t3 rather than utilize MySQL system table.
mysql-test/t/help.test:
Test that we can use HELP even under LOCK TABLES.
mysql-test/t/lock.test:
Test LOCK TABLE on system tables.
mysql-test/t/timezone2.test:
Add test case for bug#9953: CONVERT_TZ requires mysql.time_zone_name
to be locked.
mysql-test/t/view.test:
Update test: use table t3 rather that utilize MySQL system table.
sql/handler.h:
Fix comment for 'count' parameter of check_if_locking_is_allowed().
Add 'current' and 'system_count' parameters.
sql/item_create.cc:
We no longer have LEX::add_time_zone_tables_to_query_tables().
sql/item_timefunc.cc:
We no longer have LEX::time_zone_tables_used, so
Item_func_convert_tz::fix_fields() became the same as base
Item_date_func::fix_fields().
my_tz_find() no longer takes table list, but takes THD pointer now.
sql/item_timefunc.h:
Remove dead field and method.
sql/lock.cc:
Pass values for 'current' and 'system_count' to
check_if_locking_is_allowed().
sql/log_event.cc:
We no longer have my_tz_find_with_opening_tz_tables(), its functions is
performed by my_tz_find().
sql/mysql_priv.h:
Add functions to work with MySQL system tables.
sql/set_var.cc:
my_tz_find() no longer takes table list, but takes THD pointer now.
sql/sp.cc:
Remove close_proc_table(). Use close_system_tables() instead.
Use open_system_tables_for_read() and open_system_table_for_update().
sql/sp.h:
Remove close_proc_table() declaration.
sql/sql_base.cc:
Add implementation of open_system_tables_for_read(),
close_system_tables(), open_system_table_for_update().
sql/sql_help.cc:
Operate on MySQL system tables mysql.help_* with
open_system_tables_for_read() and close_system_tables() to allow the
usage of HELP statement under LOCK TABLES.
sql/sql_lex.cc:
Remove LEX::time_zone_tables_used and
LEX::add_time_zone_tables_to_query_tables() which are no longer used.
sql/sql_lex.h:
Remove LEX::time_zone_tables_used and
LEX::add_time_zone_tables_to_query_tables() which are no longer used.
sql/sql_parse.cc:
Remove references to LEX::time_zone_tables_used and
my_tz_check_n_skip_implicit_tables() which are no longer used.
sql/sql_show.cc:
Use close_system_tables() instead of removed close_proc_table().
sql/sql_view.cc:
LEX::time_zone_tables_used is no longer there.
sql/sql_yacc.yy:
LEX::add_time_zone_tables_to_query_tables() is no longer there.
sql/table.cc:
Add more tables that should be treated as MySQL system tables.
sql/share/errmsg.txt:
Change the error message, as now we allow write-locking of several
system tables if not mixed with ordinary tables.
sql/tztime.cc:
Do not add time zone tables to the list of query tables in
tz_init_table_list().
Remove fake_time_zone_tables_list and my_tz_get_tables_list().
In my_tz_init(), open mysql.time_zone_leap_second with
simple_open_n_lock_tables(), but pass time zone name to my_tz_find(),
which will open and close time zone tables as necessary.
In tz_load_from_open_tables() do not call table->use_all_columns(), as
this was already done in open_system_tables_for_read().
my_tz_find() takes THD pointer instead of table list, and calls
open_system_tables_for_read() and close_system_tables() as necessary.
Remove my_tz_find_with_opening_tz_tables().
sql/tztime.h:
Remove declarations of my_tz_get_table_list(),
my_tz_find_with_opening_tz_tables(), fake_time_zone_tables_list,
definition of my_tz_check_n_skip_implicit_tables().
Update prototype for my_tz_find().
storage/csv/ha_tina.cc:
Add new parameters to check_if_locking_is_allowed().
storage/csv/ha_tina.h:
Add new parameters to check_if_locking_is_allowed().
storage/myisam/ha_myisam.cc:
Add new parameters to check_if_locking_is_allowed(). In this
function we count system tables. If there are system tables, but
there are also non-system tables, we report an error.
storage/myisam/ha_myisam.h:
Add new parameters to check_if_locking_is_allowed().
include/my_global.h:
Introduce constants to be used instead of magic numbers.
sql/field.cc:
Polishing: use contants instead of magic numbers.
sql/ha_innodb.cc:
Polishing: use contants instead of magic numbers.
sql/handler.cc:
Polishing: use contants instead of magic numbers.
sql/item.cc:
Polishing: use contants instead of magic numbers.
sql/item.h:
Polishing: use contants instead of magic numbers.
sql/item_func.cc:
Polishing: use contants instead of magic numbers.
sql/item_subselect.cc:
Polishing: use contants instead of magic numbers.
sql/log_event.cc:
Polishing: use contants instead of magic numbers.
sql/sql_base.cc:
Polishing: use contants instead of magic numbers.
sql/sql_select.cc:
Polishing: use contants instead of magic numbers.
sql/sql_show.cc:
Polishing: use contants instead of magic numbers.
sql/sql_table.cc:
Polishing: use contants instead of magic numbers.
into romeo.(none):/home/bk/b22583-mysql-5.1-new-rpl
mysql-test/extra/binlog_tests/binlog.test:
Auto merged
mysql-test/extra/binlog_tests/ctype_cp932_binlog.test:
Auto merged
mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
Auto merged
mysql-test/t/rpl_row_create_table.test:
Auto merged
sql/log_event.h:
Auto merged
mysql-test/r/binlog_row_binlog.result:
Manual merge
sql/log_event.cc:
Manual merge
sql/sql_class.cc:
Manual merge
Post-merge fixes.
mysql-test/extra/binlog_tests/binlog.test:
Binlog position change
mysql-test/extra/binlog_tests/binlog_insert_delayed.test:
Binlog position change
mysql-test/extra/binlog_tests/ctype_cp932_binlog.test:
Binlog position change
mysql-test/extra/binlog_tests/ctype_ucs_binlog.test:
Binlog position change
mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
Binlog position change
mysql-test/r/binlog_row_binlog.result:
Result change
mysql-test/r/binlog_row_ctype_ucs.result:
Result change
mysql-test/r/binlog_row_insert_select.result:
Result change
mysql-test/r/binlog_row_mix_innodb_myisam.result:
Result change
mysql-test/r/ctype_cp932_binlog_row.result:
Result change
mysql-test/r/flush_block_commit_notembedded.result:
Result change
mysql-test/r/rpl_row_create_table.result:
Result change
mysql-test/r/rpl_row_delayed_ins.result:
Result change
mysql-test/t/binlog_row_mix_innodb_myisam.test:
Binlog position change
mysql-test/t/rpl_row_create_table.test:
Removing blinding of end_log_pos in SHOW BINLOG EVENTS output.
Binlog position change.
sql/log_event.cc:
Post-merge fixes.
into bodhi.local:/opt/local/work/mysql-5.1-runtime
mysql-test/r/trigger.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/trigger.test:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_trigger.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/table.cc:
Auto merged
sql/table.h:
Auto merged
sql/sql_class.cc:
Manual merge.
sql/sql_class.h:
Manual merge.
sql/sql_parse.cc:
Manual merge.
sql/sql_prepare.cc:
Manual merge.
sql/sql_yacc.yy:
Manual merge.
fixes).
The legend: on a replication slave, in case a trigger creation
was filtered out because of application of replicate-do-table/
replicate-ignore-table rule, the parsed definition of a trigger was not
cleaned up properly. LEX::sphead member was left around and leaked
memory. Until the actual implementation of support of
replicate-ignore-table rules for triggers by the patch for Bug 24478 it
was never the case that "case SQLCOM_CREATE_TRIGGER"
was not executed once a trigger was parsed,
so the deletion of lex->sphead there worked and the memory did not leak.
The fix:
The real cause of the bug is that there is no 1 or 2 places where
we can clean up the main LEX after parse. And the reason we
can not have just one or two places where we clean up the LEX is
asymmetric behaviour of MYSQLparse in case of success or error.
One of the root causes of this behaviour is the code in Item::Item()
constructor. There, a newly created item adds itself to THD::free_list
- a single-linked list of Items used in a statement. Yuck. This code
is unaware that we may have more than one statement active at a time,
and always assumes that the free_list of the current statement is
located in THD::free_list. One day we need to be able to explicitly
allocate an item in a given Query_arena.
Thus, when parsing a definition of a stored procedure, like
CREATE PROCEDURE p1() BEGIN SELECT a FROM t1; SELECT b FROM t1; END;
we actually need to reset THD::mem_root, THD::free_list and THD::lex
to parse the nested procedure statement (SELECT *).
The actual reset and restore is implemented in semantic actions
attached to sp_proc_stmt grammar rule.
The problem is that in case of a parsing error inside a nested statement
Bison generated parser would abort immediately, without executing the
restore part of the semantic action. This would leave THD in an
in-the-middle-of-parsing state.
This is why we couldn't have had a single place where we clean up the LEX
after MYSQLparse - in case of an error we needed to do a clean up
immediately, in case of success a clean up could have been delayed.
This left the door open for a memory leak.
One of the following possibilities were considered when working on a fix:
- patch the replication logic to do the clean up. Rejected
as breaks module borders, replication code should not need to know the
gory details of clean up procedure after CREATE TRIGGER.
- wrap MYSQLparse with a function that would do a clean up.
Rejected as ideally we should fix the problem when it happens, not
adjust for it outside of the problematic code.
- make sure MYSQLparse cleans up after itself by invoking the clean up
functionality in the appropriate places before return. Implemented in
this patch.
- use %destructor rule for sp_proc_stmt to restore THD - cleaner
than the prevoius approach, but rejected
because needs a careful analysis of the side effects, and this patch is
for 5.0, and long term we need to use the next alternative anyway
- make sure that sp_proc_stmt doesn't juggle with THD - this is a
large work that will affect many modules.
Cleanup: move main_lex and main_mem_root from Statement to its
only two descendants Prepared_statement and THD. This ensures that
when a Statement instance was created for purposes of statement backup,
we do not involve LEX constructor/destructor, which is fairly expensive.
In order to track that the transformation produces equivalent
functionality please check the respective constructors and destructors
of Statement, Prepared_statement and THD - these members were
used only there.
This cleanup is unrelated to the patch.
sql/log_event.cc:
THD::main_lex is private and should not be used.
sql/mysqld.cc:
Move MYSQLerror to sql_yacc.yy as it depends on LEX headers now.
sql/sql_class.cc:
Cleanup: move main_lex and main_mem_root to THD and Prepared_statement
sql/sql_class.h:
Cleanup: move main_lex and main_mem_root to THD and Prepared_statement
sql/sql_lex.cc:
Implement st_lex::restore_lex()
sql/sql_lex.h:
Declare st_lex::restore_lex().
sql/sql_parse.cc:
Consolidate the calls to unit.cleanup() and deletion of lex->sphead
in mysql_parse (COM_QUERY handler)
sql/sql_prepare.cc:
No need to delete lex->sphead to restore memory roots now in case of a
parse error - this is done automatically inside MYSQLparse
sql/sql_trigger.cc:
This code could lead to double deletion apparently, as in case
of an error lex.sphead was never reset.
sql/sql_yacc.yy:
Trap all returns from the parser to ensure that MySQL-specific cleanup
is invoked: we need to restore the global state of THD and LEX in
case of a parsing error. In case of a parsing success this happens as
part of normal grammar reduction process.
into mysql.com:/home/bar/mysql-5.1-rpl
mysql-test/r/mysqlbinlog.result:
Auto merged
mysql-test/t/mysqlbinlog.test:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
into mysql.com:/home/bar/mysql-5.0.b15126
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/mysqlbinlog.result:
After merge fix
mysql-test/t/mysqlbinlog.test:
After merge fix
This patch fixes problem that LOAD DATA could use different
character sets when loading files on master and on slave sides:
- Adding replication of thd->variables.collation_database
- Adding optional character set clause into LOAD DATA
Note, the second way, with explicit CHARACTER SET clause
should be the recommended way to load data using an alternative
character set.
The old way, using "SET @@character_set_database=xxx" should be
gradually depricated.
mysql-test/r/mysqlbinlog.result:
Adding test case
mysql-test/t/mysqlbinlog.test:
Adding test case
sql/log_event.cc:
Adding logging of thd->variables.collation_database
sql/log_event.h:
Adding declarations
sql/sql_class.cc:
Exchange character set is null by default
sql/sql_class.h:
Adding character set into sql_exchange
sql/sql_load.cc:
- Using exchange character set (if it was specified in LOAD DATA syntax)
- Using thd->variables.collation_database by default
sql/sql_yacc.yy:
Adding optional character set clause into LOAD DATA syntax
mysql-test/r/rpl_loaddata2.result:
New BitKeeper file ``mysql-test/r/rpl_loaddata2.result''
mysql-test/std_data/loaddata6.dat:
New BitKeeper file ``mysql-test/std_data/loaddata6.dat''
mysql-test/t/rpl_loaddata2.test:
New BitKeeper file ``mysql-test/t/rpl_loaddata2.test''
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-community
BitKeeper/etc/collapsed:
auto-union
include/config-win.h:
Auto merged
myisam/mi_open.c:
Auto merged
sql/Makefile.am:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/ha_myisammrg.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/lock.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/repl_failsafe.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/slave.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_repl.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.h:
Auto merged
configure.in:
Manual merge. Verified "5.0.37".
mysql-test/r/information_schema.result:
Manual merge.
mysql-test/t/information_schema.test:
Manual merge.
sql/mysql_priv.h:
Manual merge.
sql/mysqld.cc:
Manual merge.
sql/sql_select.cc:
Manual merge.
sql/log.cc:
Eliminating some warning from incompatible arguments to DBUG_PRINT().
sql/log_event.cc:
Eliminating unused auto variable.
sql/sql_insert.cc:
Eliminating some warning from incompatible arguments to DBUG_PRINT().
Adding code to release allocated memory when tables_to_lock list is
cleared.
sql/log_event.cc:
Using RPL_TABLE_LIST instead of TABLE_LIST for tables_to_lock.
sql/rpl_rli.cc:
Moving st_relay_log_info::clear_tables_to_lock() into rpl_rli.cc.
Adding code to release memory allocated for saved table definition.
sql/rpl_rli.h:
Moving st_relay_log_info::clear_tables_to_lock() into rpl_rli.cc.
Using RPL_TABLE_LIST instead of TABLE_LIST for tables_to_lock.
sql/rpl_utility.h:
Adding forward declarations.
Adding boolean to tell if tabledef is valid.
into janus.mylan:/usr/home/serg/Abk/mysql-5.1
include/my_global.h:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/opt_range.h:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/table.cc:
Auto merged
sql/tztime.cc:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
storage/myisammrg/ha_myisammrg.cc:
Auto merged
support-files/Makefile.am:
Auto merged
BUILD/compile-solaris-sparc-forte:
merged
BUILD/compile-solaris-sparc-purify:
merged
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
client/mysqlbinlog.cc:
Auto merged
include/my_global.h:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/field.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_show.cc:
Auto merged
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
sql/field.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
Submitting patch on Guilhem's behalf (he found the solution).
Correcting a typo that caused very big increases in memory usage when
more memory needed to be allocated for row-based events. Also correcting
a border case check when more memory needed to be allocated.
sql/log_event.cc:
Correcting typo that caused very big increases in memory allocation.
Correcting border case for when more memory should be allocated.
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
client/mysqlbinlog.cc:
Auto merged
include/my_global.h:
Auto merged
mysql-test/extra/rpl_tests/rpl_insert_id.test:
Auto merged
mysql-test/t/show_check.test:
Auto merged
mysys/mf_iocache2.c:
Auto merged
sql/field.cc:
Auto merged
sql/item_xmlfunc.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/slave.h:
Auto merged
sql/sql_show.cc:
Auto merged
mysql-test/t/disabled.def:
Manual merge
sql/log.cc:
Manual merge
sql/sql_insert.cc:
Manual merge
mysqlbinlog prints all row-based events of a single statement as a
single "BINLOG" statement containing the concatenation of those events.
Big (i.e. >64k) concatenations of row-based events
(e.g. Write_rows_log_event) caused mysqlbinlog's IO_CACHE to overflow
to a temporary file but the IO_CACHE had not been inited with
open_cached_file(), so it tried to create a temporary file in
an uninitialized directory (thus failing to create, then to write;
some OS errors were printed, and it finally segfaulted).
After fixing this, it appeared that mysqlbinlog was printing only
a piece of big concatenations of row-based events (it printed
at most the size of the IO_CACHE's buffer i.e. 64k); that caused data
loss at restore. We fix and test that.
Last, mysqlbinlog's printouts looked a bit strange with the informative
header (#-prefixed) of groupped Rows_log_event all on one line,
so we insert \n. After that, a small bug in the --hexdump code appeared
(only if the string to hex-print had its length a multiple of 16),
we fix it.
client/mysqlbinlog.cc:
if we write to IO_CACHE more than can fit into its memory buffer,
it will try to overflow into a file; for that to work, IO_CACHE
must be inited via open_cached_file().
mysql-test/r/mysqlbinlog_base64.result:
result update
mysql-test/t/mysqlbinlog_base64.test:
test for BUG#25628: test that mysqlbinlog does not have OS errors
with big concatenations of row-based events
(e.g. Write_rows_log_event), and prints those concatenations entirely
(testing by piping the output back into the server and comparing data).
mysys/mf_iocache2.c:
my_b_copy_to_file() had a problem: it assumed that bytes_in_cache
are all the bytes to copy to the file, while it only tells how many
bytes are in the buffer; so the code forgot to copy what had already
overflown into a temporary file. Thus any big event was printed only
partially by mysqlbinlog (loss of data at restore). The fix is
inspired by MYSQL_BIN_LOG::write_cache().
sql/log_event.cc:
Several Table_map/Write_rows events generated by one single statement
get groupped together in mysqlbinlog's output; it printed things like
#718 7:30:51 server id 12 end_log_pos 988 Write_rows: table id 17#718 7:30:51 server id 12 #718 7:30:51 server id 12 end_log_pos 988 Write_rows: table id 17#718 7:30:51 server id 12 end_log_pos 1413 <cut>
It didn't look nice to have printouts glued like this without line
breaks. Adding a line break.
Doing this, when using --hexdump the result was:
#718 7:30:51 server id 12 end_log_pos 988
# <hexdump output>
# Write_rows: table id 17
which is correct; unfortunately if the hex dump had only full lines
(i.e the string to print in hex had its length a multiple of 16),
then the # in front of Write_rows was not printed. Fixed.
sql/log_event.h:
removing strcpy() (one less function call).
If we write to IO_CACHE more than can fit into its memory buffer,
it will try to overflow into a file; for that to work, IO_CACHE
must be inited via open_cached_file().
open_cached_file(), like init_io_cache(), can fail; we make sure to
catch this constructor's problem via the init_ok() method.
into romeo.(none):/home/bk/b19033-mysql-5.1-new-rpl
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/slave.h:
Auto merged
sql/sql_insert.cc:
Auto merged
Fixed compile-pentium64 scripts
Fixed wrong estimate of update_with_key_prefix in sql-bench
Merge bk-internal.mysql.com:/home/bk/mysql-5.1 into mysql.com:/home/my/mysql-5.1
Fixed unsafe define of uint4korr()
Fixed that --extern works with mysql-test-run.pl
Small trivial cleanups
This also fixes a bug in counting number of rows that are updated when we have many simultanous queries
Move all connection handling and command exectuion main loop from sql_parse.cc to sql_connection.cc
Split handle_one_connection() into reusable sub functions.
Split create_new_thread() into reusable sub functions.
Added thread_scheduler; Preliminary interface code for future thread_handling code.
Use 'my_thread_id' for internal thread id's
Make thr_alarm_kill() to depend on thread_id instead of thread
Make thr_abort_locks_for_thread() depend on thread_id instead of thread
In store_globals(), set my_thread_var->id to be thd->thread_id.
Use my_thread_var->id as basis for my_thread_name()
The above changes makes the connection we have between THD and threads more soft.
Added a lot of DBUG_PRINT() and DBUG_ASSERT() functions
Fixed compiler warnings
Fixed core dumps when running with --debug
Removed setting of signal masks (was never used)
Made event code call pthread_exit() (portability fix)
Fixed that event code doesn't call DBUG_xxx functions before my_thread_init() is called.
Made handling of thread_id and thd->variables.pseudo_thread_id uniform.
Removed one common 'not freed memory' warning from mysqltest
Fixed a couple of usage of not initialized warnings (unlikely cases)
Suppress compiler warnings from bdb and (for the moment) warnings from ndb
BitKeeper/deleted/.del-SETUP.sh.rej:
Rename: BUILD/SETUP.sh.rej -> BitKeeper/deleted/.del-SETUP.sh.rej
BitKeeper/deleted/.del-configure.in.rej:
Rename: configure.in.rej -> BitKeeper/deleted/.del-configure.in.rej
BitKeeper/deleted/.del-my_global.h.rej:
Rename: include/my_global.h.rej -> BitKeeper/deleted/.del-my_global.h.rej
BitKeeper/deleted/.del-my_pthread.h.rej:
Rename: include/my_pthread.h.rej -> BitKeeper/deleted/.del-my_pthread.h.rej
BitKeeper/deleted/.del-mysql_client_test.c.rej:
Rename: tests/mysql_client_test.c.rej -> BitKeeper/deleted/.del-mysql_client_test.c.rej
BitKeeper/deleted/.del-mysqld.cc.rej~35c1c438e11ebd89:
Rename: sql/mysqld.cc.rej -> BitKeeper/deleted/.del-mysqld.cc.rej~35c1c438e11ebd89
BitKeeper/deleted/.del-sql_parse.cc.rej:
Rename: sql/sql_parse.cc.rej -> BitKeeper/deleted/.del-sql_parse.cc.rej
BitKeeper/deleted/.del-table.cc.rej:
Rename: sql/table.cc.rej -> BitKeeper/deleted/.del-table.cc.rej
BitKeeper/deleted/.del-thr_alarm.c.rej:
Rename: mysys/thr_alarm.c.rej -> BitKeeper/deleted/.del-thr_alarm.c.rej
BUILD/compile-pentium64:
Update this to be in line with compile-pentium
BUILD/compile-pentium:
Send command line options to SETUP.sh
BUILD/compile-solaris-sparc-debug:
Update scripts
BUILD/compile-solaris-sparc-forte:
Update scripts
BUILD/compile-solaris-sparc-purify:
Update scripts
BUILD/compile-solaris-sparc:
Update scripts
BitKeeper/deleted/.del-DbtupSystemRestart.cpp~15b54d7e4e75d2d:
Removed compiler warning
BitKeeper/deleted/.del-ha_berkeley.cc:
Moved get_auto_primary_key() here as int5store() gives (wrong) compiler warnings in win64
configure.in:
Added detection of port_create and port.h (for future)as
---
manual merge
BitKeeper/deleted/.del-ha_berkeley.h:
Moved get_auto_primary_key() to ha_berkeley.cc
BitKeeper/deleted/.del-mysqlmanager.c~e97636d71145a0b:
Fixed compiler warnings
BitKeeper/etc/ignore:
added storage/ndb/src/ndbapi/ndberror_check
client/mysqlbinlog.cc:
Removed not needed 'static' (caused compiler warning)
client/mysqldump.c:
Fixed compiler warnings from 'max' build
client/mysqltest.c:
Free warning and query memory no abort.
(Removes strange warnings on screen if mysql-test-run fails)
Removed compiler warnings
Portability fix for windows (windows doesn't have mode_t)
client/sql_string.h:
Removed compiler warning
cmd-line-utils/readline/xmalloc.c:
Fixed compiler warnings from 'max' build
extra/charset2html.c:
Fixed compiler warnings
extra/comp_err.c:
Fixed compiler warnings from 'max' build
extra/yassl/include/lock.hpp:
Fix for windows64
extra/yassl/include/openssl/ssl.h:
Changed prototype for SSL_set_fd() to fix compiler warnings (and possible errors) on windows 64 bit
extra/yassl/include/socket_wrapper.hpp:
Moved socket_t to ssl.h, to be able to removed compiler warnings on windows 64 bit
extra/yassl/include/yassl.hpp:
Fix for windows64
extra/yassl/src/ssl.cpp:
Removed compiler warning
Detect wrong parameter (Happens when running test suite on solaris)
Changed prototype for SSL_set_fd() to fix compiler warnings (and possible errors) on windows 64 bit
extra/yassl/taocrypt/src/integer.cpp:
Fixed compiler warnings
extra/yassl/testsuite/testsuite.cpp:
Removed compiler warning
include/config-win.h:
Added HAVE_WINSOCK2 (for future)
include/my_dbug.h:
Fixed DBUG_PROCESS() so that we don't get compiler warnings for it
include/my_global.h:
Fixed unsafe define of uint4korr()
manual merge (ignore changes from 5.0)
Fixed warnings on win64 when using int5store and int6store
include/my_pthread.h:
Added my_thread_id typedef
Renamed 'my_thread_id() function to my_thead_dbug_id()
include/thr_alarm.h:
Make thr_alarm_kill() to depend on thread_id instead of thread
include/thr_lock.h:
Make thr_abort_locks_for_thread() depend on thread_id instead of thread
libmysql/libmysql.def:
Fixed compiler warnings on win64
libmysqld/CMakeLists.txt:
Added missing files
libmysqld/Makefile.am:
Added new files
libmysqld/lib_sql.cc:
Remove not needed code (store_globals() now takes care of things)
mysql-test/lib/mtr_report.pl:
Removed wrong messages when using --extern
mysql-test/mysql-test-run.pl:
Fixed that --extern works
Print help on stdout instead of stderr (make it easier to pipe it to less)
Fixed typo that caused mysql-test-run.pl to fail on Solaris
mysql-test/r/keywords.result:
manual merge
mysql-test/r/ndb_lock.result:
After merge fixes
mysql-test/r/ps.result:
Portability fix
mysql-test/t/disabled.def:
Disabled ndb_alter_table as this very often fails for me (and have done it for a long time)
mysql-test/t/keywords.test:
manual merge
mysql-test/t/ndb_lock.test:
Added other possible error code
mysql-test/t/ps.test:
Portability fix (when compiling without DLOPEN)
mysql-test/t/wait_timeout.test:
Don't run this if we are not using a thread per connection (as other thread_handling code may not support timeouts)
mysys/base64.c:
Fixed compiler warnings on win64
mysys/mf_keycache.c:
Fixed compiler warnings
mysys/my_getopt.c:
Fixed compiler warning
mysys/my_init.c:
Fixed compiler warning
Re-indented long comment
mysys/my_thr_init.c:
Always use mysys_var->id to generate thread name (makes things uniform accross thread implementations and thread usage)
Always generate my_thread_name() when using DBUG
Ensure mysys_var->pthread_self is set
Fixed compiler warnings
mysys/ptr_cmp.c:
Fixed compiler warnings from 'max' build
mysys/thr_alarm.c:
Change thr_alarm_kill() to use mysys_var->id instead of thread id
Fixed compiler warning on windows
mysys/thr_lock.c:
Change thr_abort_locks_for_thread() to use mysys_var->id instead of thread id
Add purecov statements around not tested code
Fixed compiler warnings
mysys/thr_mutex.c:
my_thread_id() -> my_thread_dbug_id()
server-tools/instance-manager/guardian.cc:
Fixed compiler warning
server-tools/instance-manager/instance.cc:
Fixed compiler warning
server-tools/instance-manager/mysql_connection.cc:
Fixed compiler warnings
server-tools/instance-manager/mysqlmanager.cc:
Fixed compiler warnings
sql/CMakeLists.txt:
Added missing files
sql/Makefile.am:
Added new files
sql/event_scheduler.cc:
Added pthread_exit() calls
Ensure DBUG_xxx calls are not made before my_thread_init()
Use common functions to set up thread handling
sql/field.h:
manual merge
sql/ha_ndbcluster.cc:
Removed some trivial 'current_thd' calls
sql/handler.cc:
Avoid warnings on KILL_CONNECTION
Don't print out null pointer with printf() (Causes crashes on Solaris)
sql/item.cc:
Fixed compiler warnings from 'max' build
sql/item_cmpfunc.cc:
After merge fixes
sql/item_func.cc:
Merge embedded and normal code usage
(GET_LOCK, RELEASE_LOCK now works on my_thread_id instead of pthread_t)
Fixed compiler warning
sql/item_strfunc.cc:
Fixed compiler warning
sql/item_timefunc.cc:
Fixed compiler warnings
sql/lock.cc:
Use (new) parameter to thr_abort_locks_for_thread()
sql/log.cc:
Fixed compiler warning
sql/log_event.cc:
Fixed compiler warnings about not used variable
sql/mysql_priv.h:
Remove TEST_NO_THREADS (not needed with new scheduler interface)
Added functions from sql_connect.cc and new functions from sql_parse.cc
sql/mysqld.cc:
Use thread_scheduler structure to dispatch calls (make code more dynamic)
Change --one-thread option to use thread_scheduler interface
Made ONE_THREAD option independent of DBUG_BUILD
--one-thread is now depricated. One should instead use '--thread-handling=no-threads'
Remove not used uname() function.
Split create_new_thread() into reusable sub functions.
Preliminary interface code for future thread_handling code.
Fixed compiler warnings
sql/parse_file.cc:
Don't send zero pointer to fn_format() (Causes crashes when using --debug)
sql/repl_failsafe.cc:
Setup pseudo_thread_id same way as other code
sql/set_var.cc:
Added variables 'thread_handling'
Prepare for future variable 'thread_pool_size'
Fixed compiler warnings
sql/set_var.h:
Fixed compiler warning
sql/slave.cc:
Setup pseudo_thread_id same way as other code
Removed not used signal mask
sql/sql_acl.cc:
Fixed compiler warnings from 'max' build
sql/sql_base.cc:
Fixed long comments
Normalized variable setup
Don't destroy value of thd->variables.pseduo_thread_id
More DBUG_PRINT()'s
More DBUG_ASSERT()'s
Fixed compiler warnings from 'max' build
sql/sql_class.cc:
Remove thd->real_id and thd->dbug_thread_id
Added DBUG_ASSERT()
Use thread_scheduler to signal threads to be killed.
In THD::store_globals(), set my_thread_var->id to be thd->thread_id.
Fixed compiler warnings
sql/sql_class.h:
Use 'my_thread_id' for internal thread id's
Remove not needed THD elements: block_signals and dbug_thread_id
Added 'thread_scheduler' scheduling extension element to THD
sql/sql_insert.cc:
After merge fixes
(This actually fixes a bug in old code when many connections are in use)
Setup pseudo_thread_id same way as other code
Removed not used signal mask
Initialize variable that may be used unitialized on error conditions (not fatal)
sql/sql_parse.cc:
Move connection related code to sql_connect.cc
Remove setting of signal mask (not needed)
Ensure TABLE_LIST->alias is set for generated TABLE_LIST elements (fixed core dumps when running with --debug)
Added previous 'optional' element to reset_mgh()
Removed not needed DBUG_PRINT call
sql/sql_partition.cc:
Fixed compiler warnings
sql/sql_prepare.cc:
Removed not needed casts
Fixed compiler warnings from 'max' build
sql/sql_select.cc:
Fixed compiler warnings
sql-bench/bench-init.pl.sh:
Added --one-missing-tests
sql-bench/example:
Better example
sql-bench/run-all-tests.sh:
Added --only-missing-tests
sql-bench/test-insert.sh:
Fixed wrong estimate of update_with_key_prefix
sql/sql_show.cc:
Don't send pthread_kill() to threads to detect if they exists.
(Not that useful and causes problems with future thread_handling code)
Fixed compiler warnings
sql/sql_table.cc:
Simplify code
Fixed compiler warnings
sql/sql_test.cc:
Remove dbug_thread_id from test output
sql/sql_view.cc:
Don't send zero pointer to fn_format()
sql/tztime.cc:
Fixed compiler warning
sql/udf_example.def:
Fixed compiler warnings on win64
sql/unireg.cc:
Initialize variable that may be used unitialized on error conditions
storage/archive/archive_test.c:
Fixed compiler warnings
storage/archive/azio.c:
Fixed compiler warnings
storage/innobase/dict/dict0crea.c:
Fixed compiler warnings detected on windows64
storage/innobase/dict/dict0dict.c:
Fixed compiler warnings detected on windows64
storage/innobase/dict/dict0load.c:
Fixed compiler warnings detected on windows64
storage/innobase/dict/dict0mem.c:
Fixed compiler warnings detected on windows64
storage/innobase/eval/eval0proc.c:
Fixed compiler warnings detected on windows64
storage/innobase/handler/ha_innodb.cc:
Fixed compiler warnings detected on windows64
storage/innobase/include/ut0byte.ic:
Fixed compiler warnings on win64
storage/innobase/include/ut0ut.ic:
Fixed compiler warnings on win64
storage/innobase/mtr/mtr0log.c:
Fixed compiler warnings detected on windows64
storage/innobase/pars/pars0lex.l:
Fixed warnings on win64
storage/innobase/rem/rem0cmp.c:
Fixed compiler warnings detected on windows64
storage/innobase/row/row0mysql.c:
Fixed compiler warnings detected on windows64
storage/innobase/row/row0sel.c:
Fixed compiler warnings detected on windows64
storage/innobase/sync/sync0rw.c:
Fixed compiler warnings detected on windows64
storage/innobase/trx/trx0trx.c:
Fixed compiler warnings detected on windows64
storage/myisam/mi_log.c:
my_thread_id() -> my_thread_debug_id()
storage/myisam/mi_packrec.c:
Fixed compiler warnings detected on windows64
storage/myisam/myisamchk.c:
Fixed compiler warnings from 'max' build
storage/ndb/src/common/debugger/EventLogger.cpp:
Fixed compiler warnings
storage/ndb/src/common/util/ConfigValues.cpp:
Removed compiler warnings
storage/ndb/src/common/util/NdbSqlUtil.cpp:
Removed compiler warnings
storage/ndb/src/cw/cpcd/CPCD.hpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/backup/Backup.cpp:
Fixed compiler warnings detected on windows64
storage/ndb/src/kernel/blocks/dbacc/Dbacc.hpp:
Fixed compiler warnings detected on windows64
storage/ndb/src/kernel/blocks/dbacc/DbaccMain.cpp:
Fixed compiler warnings detected on windows64
storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupDiskAlloc.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupFixAlloc.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupMeta.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupVarAlloc.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/tuppage.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/tuppage.hpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtux/DbtuxStat.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/blocks/diskpage.hpp:
Fixed compiler warnings
storage/ndb/src/kernel/vm/ndbd_malloc.cpp:
Fixed compiler warnings
storage/ndb/src/kernel/vm/ndbd_malloc_impl.cpp:
Fixed compiler warnings
storage/ndb/src/mgmclient/main.cpp:
Fixed compiler warnings
storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp:
Fixed compiler warnings
storage/ndb/src/ndbapi/NdbOperationExec.cpp:
Fixed compiler warnings
storage/ndb/src/ndbapi/SignalSender.cpp:
Fixed compiler warnings
storage/ndb/tools/restore/consumer_restore.cpp:
Fixed compiler warnings
strings/ctype-ucs2.c:
Fixed compiler warnings
strings/ctype-utf8.c:
Fixed compiler warnings
strings/decimal.c:
Fixed compiler warnings
strings/my_strchr.c:
Fixed conflict between function and prototype
support-files/compiler_warnings.supp:
Ignore warnings from sql_yacc.cc that are hard to remove
Ignore some not important warnings from windows 64 bit build
Suppress warnings from bdb and (for the moment) warnings from ndb
Suppress all warnings for all pushbuild platforms (should make all trees green)
vio/viosslfactories.c:
Added DBUG_PRINT
BUILD/compile-pentium64-max:
New BitKeeper file ``BUILD/compile-pentium64-max''
libmysqld/scheduler.cc:
New BitKeeper file ``libmysqld/scheduler.cc''
libmysqld/sql_connect.cc:
New BitKeeper file ``libmysqld/sql_connect.cc''
mysql-test/include/one_thread_per_connection.inc:
New BitKeeper file ``mysql-test/include/one_thread_per_connection.inc''
mysql-test/r/no-threads.result:
New BitKeeper file ``mysql-test/r/no-threads.result''
mysql-test/r/one_thread_per_connection.require:
New BitKeeper file ``mysql-test/r/one_thread_per_connection.require''
mysql-test/t/no-threads-master.opt:
New BitKeeper file ``mysql-test/t/no-threads-master.opt''
mysql-test/t/no-threads.test:
New BitKeeper file ``mysql-test/t/no-threads.test''
sql/scheduler.cc:
New BitKeeper file ``sql/scheduler.cc''
sql/scheduler.h:
New BitKeeper file ``sql/scheduler.h''
sql/sql_connect.cc:
New BitKeeper file ``sql/sql_connect.cc''
to a single statement.
---
Bug#24795: SHOW PROFILE
Profiling is only partially functional on some architectures. Where
there is no getrusage() system call, presently Null values are
returned where it would be required. Notably, Windows needs some love
applied to make it as useful.
Syntax this adds:
SHOW PROFILES
SHOW PROFILE [types] [FOR QUERY n] [OFFSET n] [LIMIT n]
where "n" is an integer
and "types" is zero or many (comma-separated) of
"CPU"
"MEMORY" (not presently supported)
"BLOCK IO"
"CONTEXT SWITCHES"
"PAGE FAULTS"
"IPC"
"SWAPS"
"SOURCE"
"ALL"
It also adds a session variable (boolean) "profiling", set to "no"
by default, and (integer) profiling_history_size, set to 15 by
default.
This patch abstracts setting THDs' "proc_info" behind a macro that
can be used as a hook into the profiling code when profiling
support is compiled in. All future code in this line should use
that mechanism for setting thd->proc_info.
---
Tests are now set to omit the statistics.
---
Adds an Information_schema table, "profiling" for access to
"show profile" data.
---
Merge zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-community-3--bug24795
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-community
---
Fix merge problems.
---
Fixed one bug in the query_source being NULL.
Updated test results.
---
Include more thorough profiling tests.
Improve support for prepared statements.
Use session-specific query IDs, starting at zero.
---
Selecting from I_S.profiling is no longer quashed in profiling, as
requested by Giuseppe.
Limit the size of captured query text.
No longer log queries that are zero length.
BitKeeper/deleted/.del-profile.result:
Rename: mysql-test/r/profile.result -> BitKeeper/deleted/.del-profile.result
BitKeeper/deleted/.del-profile.test:
Rename: mysql-test/t/profile.test -> BitKeeper/deleted/.del-profile.test
BitKeeper/deleted/.del-sql_profile.cc:
Rename: sql/sql_profile.cc -> BitKeeper/deleted/.del-sql_profile.cc
BitKeeper/deleted/.del-sql_profile.h:
Rename: sql/sql_profile.h -> BitKeeper/deleted/.del-sql_profile.h
configure.in:
Add a configure-time option to enable/disable query profiling. The
default is enabled.
include/my_dbug.h:
DBUG_* statements should be syntactically equivalent to a single
statement.
myisam/mi_open.c:
DBUG_* statements should be syntactically equivalent to a single
statement.
mysql-test/r/information_schema.result:
Updated (re-recorded) tests that I missed somehow. I verified these
for correctness.
mysql-test/r/information_schema_db.result:
Updated test results I missed.
mysql-test/r/mysqlshow.result:
Fix merge problems.
ndb/src/ndbapi/DictCache.cpp:
DBUG_* statements should be syntactically equivalent to a single
statement.
sql/ha_archive.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
sql/ha_berkeley.cc:
Include patch backported to 5.0-global.
THD::options is a ulonglong, not ulong.
sql/ha_myisam.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
sql/ha_myisammrg.cc:
DBUG_* statements should be syntactically equivalent to a single
statement.
sql/ha_ndbcluster.cc:
DBUG_* statements should be syntactically equivalent to a single
statement.
sql/item_cmpfunc.cc:
DBUG_* statements should be syntactically equivalent to a single
statement.
sql/item_func.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
sql/lock.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
sql/log_event.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
sql/mysql_priv.h:
Use 64-bit constants for the 64-bit bit field.
Add a new option bit for whether profiling is active or not.
sql/mysqld.cc:
Add semicolon to DBUG statement.
Add a new system variable and set it.
---
Set the minimum, which is zero and not 50.
sql/repl_failsafe.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
sql/set_var.cc:
Make a new system global variable and session variable, to determine
behavior of profiling.
---
Include patch backported to 5.0-global.
THD::options is a ulonglong, not ulong.
sql/set_var.h:
The THD::options bit field is ulonglong, not ulong.
sql/slave.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
---
Include patch backported to 5.0-global.
THD::options is a ulonglong, not ulong.
sql/sp_head.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
sql/sql_base.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
---
Include patch backported to 5.0-global.
THD::options is a ulonglong, not ulong.
sql/sql_cache.cc:
DBUG_* statements should be syntactically equivalent to a single
statement.
---
Fix merge problems.
sql/sql_class.cc:
Insert a pointer to the current thread in the profiling code.
---
Manual merge, undoing first patch.
---
Fix merge problems.
sql/sql_class.h:
Create a new system variable, profiling_history_size, and add a
member to THD to hold profiling information about this thread's
execution.
---
Manual merge, undoing first patch.
sql/sql_delete.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
---
Include patch backported to 5.0-global.
THD::options is a ulonglong, not ulong.
sql/sql_insert.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
---
Fix merge problems.
sql/sql_lex.cc:
Initialize profiling options to empty.
---
Manual merge, undoing first patch.
sql/sql_lex.h:
Add info to the lexer object so that we can hold data that comes from
parsing statements.
Reuse memory addresses of uints that can't occur in the same state-
ment.
This is dangerous because it involves knowledge of what symbols are
never used together, which is information stored obliquely in another
file.
---
Manual merge, undoing first patch.
sql/sql_parse.cc:
Add hooks to the parser to jump to profiling code.
If profiling is not present, then return an error message upon being
used.
---
Manual merge, undoing first patch.
---
Fix merge problems.
---
Include patch backported to 5.0-global.
THD::options is a ulonglong, not ulong.
sql/sql_prepare.cc:
From prepared statement execution, set the query source in the
profiler, as we can't get it from thd .
---
Make it less expensive to limit the size of the queries.
sql/sql_repl.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
sql/sql_select.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
---
Fix merge problems.
sql/sql_show.cc:
Abstract setting thread-info into a function or macro.
Also, remove "static" qualification on schema_table_store_record()
so that external functions may use it.
---
Manual merge, undoing first patch.
sql/sql_table.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
sql/sql_update.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
sql/sql_view.cc:
Abstract setting thread-info into a function or macro.
---
Manual merge, undoing first patch.
sql/sql_yacc.yy:
Add new lexer symbols and insert new grammatical rules necessary to
retreive profiling information.
---
Manual merge, undoing first patch.
---
Fix merge problems.
sql/table.h:
Add enum item for query profiling.
BitKeeper/deleted/.del-profiling-master.opt:
New BitKeeper file ``mysql-test/t/profiling-master.opt''
mysql-test/r/profiling.result:
New BitKeeper file ``mysql-test/r/profiling.result''
---
Include more verbose that describes the queries so far.
Include Giuseppe's tests.
---
Selecting from I_S.profiling is no longer quashed in profiling, as
requested by Giuseppe.
mysql-test/t/profiling.test:
New BitKeeper file ``mysql-test/t/profiling.test''
---
Include more verbose that describes the queries so far.
Include Giuseppe's tests.
---
Selecting from I_S.profiling is no longer quashed in profiling, as
requested by Giuseppe.
sql/sql_profile.cc:
New BitKeeper file ``sql/sql_profile.cc''
---
If query_source is NULL, as can sometimes happen, then don't try
to copy that memory.
---
Make each new session use its own numbering of query_ids, and not
show the global-pool numbers to the user.
Provide a way for prepared statements to set the query_source.
---
Selecting from I_S.profiling is no longer quashed in profiling, as
requested by Giuseppe.
Limit the size of captured query text.
No longer log queries that are zero length.
sql/sql_profile.h:
New BitKeeper file ``sql/sql_profile.h''
---
Make each new session use its own numbering of query_ids, and not
show the global-pool numbers to the user.
Provide a way for prepared statements to set the query_source.
---
Make it less expensive to limit the size of the queries.
into janus.mylan:/usr/home/serg/Abk/mysql-5.1
dbug/dbug.c:
Auto merged
include/my_base.h:
Auto merged
include/my_global.h:
Auto merged
sql/event_db_repository.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/ha_ndbcluster.h:
Auto merged
sql/ha_partition.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_range.h:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/slave.h:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_plugin.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_servers.cc:
Auto merged
sql/sql_servers.h:
Auto merged
sql/table.cc:
Auto merged
sql/table.h:
Auto merged
sql/tztime.cc:
Auto merged
storage/heap/ha_heap.cc:
Auto merged
storage/myisammrg/ha_myisammrg.cc:
Auto merged
support-files/Makefile.am:
Auto merged
sql/opt_range.cc:
manual merge
storage/example/ha_example.cc:
manual merge
storage/federated/ha_federated.cc:
manual merge
storage/myisam/ha_myisam.cc:
manual merge
storage/myisam/mi_rkey.c:
manual merge
into gbichot3.local:/home/mysql_src/mysql-5.1-rpl-25507
mysql-test/r/rpl_insert_id.result:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/slave.h:
Auto merged
mysql-test/t/rpl_insert_id.test:
will merge by hand
sql/sql_insert.cc:
will fix by hand