iterators creation interface added to handlerton
sql/ha_berkeley.cc:
added new methods
sql/ha_federated.cc:
added new methods
sql/ha_heap.cc:
added new methods
sql/ha_innodb.cc:
added new methods
sql/ha_myisam.cc:
added new methods
sql/ha_myisammrg.cc:
added new methods
sql/ha_ndbcluster.cc:
added new methods
sql/ha_partition.cc:
added new methods
sql/handler.cc:
added new methods
spelling fixed
examples of functions for new interface added
sql/handler.h:
transaction logs management interface added
general iterator creatioin interface added
sql/log.cc:
added new methods
storage/archive/ha_archive.cc:
added new methods
storage/blackhole/ha_blackhole.cc:
added new methods
storage/csv/ha_tina.cc:
added new methods
storage/example/ha_example.cc:
added new methods
of hostname in query results.
mysql-test/r/events_logs_tests.result:
Update results
mysql-test/t/events_logs_tests.test:
Replace user_host in results, since it is system dependent.
into zim.(none):/home/brian/mysql/dep-5.1
sql/lex.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
Rename load_event() to load_named_event(), to avoid name clash on HP-UX
sql/event_scheduler.cc:
Rename load_event() to load_named_event(), to avoid name clash on HP-UX
sql/event_scheduler.h:
Rename load_event() to load_named_event(), to avoid name clash on HP-UX
Fixed core dump in --help
include/heap.h:
Removed a wrong character (ascii 0xa0), which looked like a space.
This will cause some debuggers display the source code in a wrong
way. May cut the rest of the file off and looks like a debugger
problem, which it isn't.
mysys/my_getopt.c:
Removed a wrong character (ascii 0xa0), which looked like a space.
This will cause some debuggers display the source code in a wrong
way. May cut the rest of the file off and looks like a debugger
problem, which it isn't.
sql/mysqld.cc:
Wrong type.
make us see at least with gcc the function proto. this can be extended
probably for windows too.
Fix build on intelxeon3 (sun compiler and others)
sql/event_scheduler.cc:
__FUNCTION__ is not available everywhere.
make us see at least with gcc the function proto. this can be extended
probably for windows too.
mysql-test/r/not_embedded_server.result:
update result
mysql-test/r/sp-threads.result:
update result
sql/event_scheduler.h:
fix build error with SUN compiler
sql/mysqld.cc:
fix problem with --init-file which was expecting to be the only running
thread. nevertheless Events should be started as close as possible to the
place connections are handled.
drop users at the end of events_stress
mysql-test/r/ps_1general.result:
update result
mysql-test/r/skip_name_resolve.result:
update result
mysql-test/r/sp_notembedded.result:
update result
mysql-test/r/status.result:
update result
mysql-test/t/events_stress.test:
drop users created in the test
- Terminate configure with error(and message) if --with-yassl or --with-openssl is used.
config/ac-macros/ssl.m4:
Add error message if --with-yassl or --with-openssl is used
Remove unused and obsolete mgmapi functionality (that did nothing anyway).
storage/ndb/include/mgmapi/mgmapi.h:
remove dead internal ndb_mgm_get_stat_port function.
storage/ndb/src/mgmapi/mgmapi.cpp:
remove ndb_mgm_get_stat_port
was only marked for internal use.
dead (in 5.0 as well, only removed in 5.1 for safety)
storage/ndb/src/mgmsrv/Services.cpp:
remove dead 'get statport'
storage/ndb/src/mgmsrv/Services.hpp:
remove dead getStatPort
sql/event_scheduler.cc:
remove unused variables
fix win32 build problem - pthread_mutex_lock() is void there
sql/event_scheduler.h:
pthread_mutex_lock() is void on win32. This fixes the win32 build.
sql/event_timed.cc:
remove unused code & variables
libmysqld/Makefile.am:
Auto merged
mysql-test/r/events.result:
Auto merged
mysql-test/r/events_bugs.result:
Auto merged
mysql-test/r/events_logs_tests.result:
Auto merged
mysql-test/r/events_microsec.result:
Auto merged
sql/CMakeLists.txt:
Auto merged
sql/Makefile.am:
Auto merged
sql/mysql_priv.h:
Auto merged
mysql-test/r/events_stress.result:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/share/errmsg.txt:
Auto merged
sql/table.cc:
Auto merged
- Scheduler is either initialized at server start or never.
Starting & stopping is now suspending & resuming.
- The scheduler has clear OO interface
- Now all calls to the scheduler are synchronous
- GLOBAL event_scheduler uses thd::sys_var_tmp (see set_var.cc)
- External API is encapsulated into class Events
- Includes fixes for all comments of Kostja's review of 19.05.2005
Starting to merge into 5.1-release (5.1.10) and push
BitKeeper/etc/ignore:
Added libmysqld/event_scheduler.cc to the ignore list
libmysqld/Makefile.am:
executor -> scheduler
mysql-test/r/events.result:
update result
mysql-test/r/events_bugs.result:
update result
mysql-test/r/events_logs_tests.result:
update result
mysql-test/r/events_microsec.result:
update result
mysql-test/r/events_scheduling.result:
update result
mysql-test/r/events_stress.result:
update result
mysql-test/t/disabled.def:
enable these tests
mysql-test/t/events.test:
optimize the test a bit for speed, save some seconds runtime
remove FULL from SHOW EVENTS
mostly use I_S.EVENTS
mysql-test/t/events_bugs.test:
Skip irrelevant for the current design tests - all events are loaded
on server startup. Change in mysql.event will be visible on next server start.
Don't use numeric error codes.
mysql-test/t/events_logs_tests.test:
optimize the test a bit for speed
mysql-test/t/events_microsec.test:
Skip irrelevant for the current design tests - all events are loaded
on server startup. Change in mysql.event will be visible on next server start.
Don't use numeric error codes.
mysql-test/t/events_scheduling.test:
broader test
mysql-test/t/events_stress.test:
Rework the test to the new architecture of suspending/resuming.
Use less events, no need for thousands, hundreds is still ok.
sql/Makefile.am:
executor -> scheduler
sql/cmakelists.txt:
executor -> scheduler
sql/event.cc:
- remove todo comments
- remove unneded evex_queue abstraction functions
- move events_init() and events_shutdown() from event_executor.cc to here
- export db_create_event
- remove evex_load_and_compile_event, part of class Event_scheduler
- integrate the public interface found in event.h and used by sql_parse.cc
to use the new class Event_scheduler.
sql/event.h:
- add COND_finished so if one thread kills a running event it waits on this
- export callback event_timed_definer_equal, event_timed_identifier_equal(),
event_timed_name_equal and event_timed_db_equal()
to be used by Event_scheduler::drop_matching_events()
- cleanup event.h
- encapsulated all external interface into class Events
sql/event_executor.cc:
make it empty, will delete after that
sql/event_priv.h:
- more things in the private header
- remove event queue abstraction functions. tightly bind to QUEUE
- export privately db_drop_event, db_find_event, db_create_event()
- made change_security_context() and restore_security_context() free functions
sql/event_timed.cc:
- fix calculation of time when ENDS is set (STARTS is always set)
- during Event_timed::compile() set the right Security_ctx. Prevents a crash
during Event_scheduler::load_events_from_db()
- add Event_timed::kill_thread()
- implement event_timed_*_equal()
- made change_security_context() and restore_security_context() free functions.
- Comments cleanups
sql/lex.h:
new word scheduler for SHOW SCHEDULER STATUS (available only debug builds)
sql/log.cc:
move these from event_scheduler.cc
sql/mysql_priv.h:
refactor kill_one_thread
export sql_print_message_func and sql_print_message_handlers
sql/mysqld.cc:
In close_connections, called by kill_server() skip the main scheduler
thread and use events_shutdown() for shutting down the scheduler, in the same
manner it's done for RPL.
Add a new value to --event-scheduler :
0 <- No scheduler available
1 <- Start with scheduler enabled
2 <- Start with scheduler suspended
sql/repl_failsafe.cc:
refactor thd::system_thread to be an enum
sql/set_var.cc:
move sys_var_event_executor::update() to set_var.cc
executor -> scheduler
use thd::sys_var_tmp
sql/set_var.h:
executor -> scheduler
sql/share/errmsg.txt:
3 new error messages
sql/sql_class.cc:
refactor thd::system_thread to be an enum . more type-safety
sql/sql_class.h:
refactor thd::system_thread to be an enum . more type-safety
sql/sql_db.cc:
get the error from evex_drop_schema_events
sql/sql_error.h:
export warning_level_names
sql/sql_lex.h:
new command SHOW SCHEDULER STATUS, available only in debug build and
for debug purposes.
sql/sql_parse.cc:
refactor kill_one_thread() -> does the *dirty* work, and sql_kill
just the reporting.
add handler for SQLCOM_SHOW_SCHEDULER_STATUS
sql/sql_show.cc:
fix verbosity handling (this will be obsoleted anyway by the fix for 17394).
sql/sql_yacc.yy:
remove FULL from SHOW EVENTS
add SHOW SCHEDULER STATUS in debug builds
sql/table.cc:
Fix valgrind warning.
This test included hostname information in the output, which varies
between platforms.
mysql-test/r/log_tables.result:
Update results
mysql-test/t/log_tables.test:
Replace user_host selected from logs to avoid platform differences.
Also, fix use of replace_column in test for bug 17600.