into fedora.(none):/home/reggie/bk/im_patch
server-tools/instance-manager/manager.cc:
Auto merged
server-tools/instance-manager/mysqlmanager.cc:
Auto merged
server-tools/instance-manager/options.h:
Auto merged
server-tools/instance-manager/commands.cc:
final merge of IM port code for Windows
server-tools/instance-manager/instance_map.cc:
final merge of IM port code for Windows
server-tools/instance-manager/options.cc:
final merge of IM port code for Windows
Implemented on brian's request.
server-tools/instance-manager/Makefile.am:
define default config file
server-tools/instance-manager/commands.cc:
Use specified or default file to edit with SET commands instead of hardcoded file
server-tools/instance-manager/commands.h:
add member to SET commands
server-tools/instance-manager/instance_map.cc:
rename first_option -> single_defaults_option, made logging a bit more verbose
server-tools/instance-manager/instance_map.h:
rename first_option -> single_defaults_file + made it public
server-tools/instance-manager/manager.cc:
rename first_option -> single_defaults_file
server-tools/instance-manager/mysqlmanager.cc:
goto generic error label instead of simple return
server-tools/instance-manager/options.cc:
skip --defaults-extra file and give a message if it was specified, made IM
to read one config file only
server-tools/instance-manager/options.h:
added new members to the option structure
server-tools/instance-manager/commands.cc:
type cleanups for compiling on Windows
now using Options::config_file for the location of the single
my.cnf file we are using
server-tools/instance-manager/guardian.cc:
pthread_mutex_lock and unlock do not return a value on Windows
so we return 0 in all cases
server-tools/instance-manager/instance.cc:
big changes here.
Had to implement Windows versions of launch_and_wait and kill()
server-tools/instance-manager/instance.h:
added some function defs
server-tools/instance-manager/instance_map.cc:
pthread_mutex_lock and unlock do not return a value on Windows
Also, now using only the file named as Options::config_file
server-tools/instance-manager/instance_options.h:
added reference to port.h
server-tools/instance-manager/listener.cc:
reworked and simplified the socket handling code.
Added windows versions of the code that sets the sockets to be
non-blocking and non-inheritable
server-tools/instance-manager/listener.h:
change Options to always be a struct. Really surprised GCC was
letting this go. Options was declared to be struct in some places
and class in other places.
server-tools/instance-manager/log.cc:
added reference to port.h
server-tools/instance-manager/manager.cc:
moved all the signal code inside some #ifndef __WIN__ blocks
server-tools/instance-manager/manager.h:
change Options to always be a struct. Really surprised GCC was
letting this go. Options was declared to be struct in some places
and class in other places.
server-tools/instance-manager/mysqlmanager.cc:
added in the Windows service code.
server-tools/instance-manager/options.cc:
Added in the windows options for running as a service and the code
for loading settings only from a single file
server-tools/instance-manager/options.h:
added definitions for the new Windows service vars and routines
server-tools/instance-manager/parse_output.cc:
added reference to port.h
server-tools/instance-manager/priv.cc:
added reference to port.h
server-tools/instance-manager/priv.h:
linuxthreads should not be visible on Windows
server-tools/instance-manager/thread_registry.cc:
more __WIN__ blocking
server-tools/instance-manager/user_map.cc:
fixed passwd file code to handle files with \r\n line endings
server-tools/instance-manager/IMService.cpp:
New BitKeeper file ``server-tools/instance-manager/IMService.cpp''
server-tools/instance-manager/IMService.h:
New BitKeeper file ``server-tools/instance-manager/IMService.h''
server-tools/instance-manager/WindowsService.cpp:
New BitKeeper file ``server-tools/instance-manager/WindowsService.cpp''
server-tools/instance-manager/WindowsService.h:
New BitKeeper file ``server-tools/instance-manager/WindowsService.h''
server-tools/instance-manager/mysqlmanager.vcproj:
New BitKeeper file ``server-tools/instance-manager/mysqlmanager.vcproj''
server-tools/instance-manager/port.h:
New BitKeeper file ``server-tools/instance-manager/port.h''
include/my_sys.h:
added prototype for the defaults correction function
libmysql/Makefile.shared:
my_chsize added to libmysql to let my_correct_defaults_file be used from libmysql
mysys/default.c:
New defaults function added we use it to correct defaults file. Currently the function doesn't lock defaults
file. This is because of the linking and backwards-compatibility issues. This needs to be fixed later.
mysys/my_chsize.c:
comment added
server-tools/instance-manager/buffer.cc:
cleanup
server-tools/instance-manager/commands.cc:
refactoring: removed do_command method from most of the classes
server-tools/instance-manager/commands.h:
cleanup
server-tools/instance-manager/guardian.cc:
cleanup
server-tools/instance-manager/instance.cc:
cleanup
server-tools/instance-manager/instance_map.cc:
cleanup
server-tools/instance-manager/instance_options.cc:
cleanup
server-tools/instance-manager/instance_options.h:
cleanup
server-tools/instance-manager/listener.cc:
cleanup
server-tools/instance-manager/log.cc:
cleanup
server-tools/instance-manager/manager.cc:
cleanup
server-tools/instance-manager/messages.cc:
new errors added
server-tools/instance-manager/mysql_connection.cc:
cleanup
server-tools/instance-manager/mysql_manager_error.h:
new error codes added
server-tools/instance-manager/mysqlmanager.cc:
clenup
server-tools/instance-manager/options.cc:
cleanup
server-tools/instance-manager/parse.cc:
removed unused function
server-tools/instance-manager/parse.h:
removed prototype
server-tools/instance-manager/protocol.cc:
cleanup
server-tools/instance-manager/protocol.h:
added enum to be used in protocol.cc instead of the constants
server-tools/instance-manager/commands.cc:
typo fixed
server-tools/instance-manager/instance.cc:
moved options.complete_initialization to the instance::complete_initialization
server-tools/instance-manager/instance.h:
moved options.complete_initialization to the Instance::complete_initialization
server-tools/instance-manager/instance_map.cc:
moved options.complete_initialization to the Instance::complete_initialization, added code to create
default instance if none is given iin config. file
server-tools/instance-manager/instance_map.h:
complete_initialization now returns an error in case of a problem
server-tools/instance-manager/instance_options.cc:
some error handling added
server-tools/instance-manager/instance_options.h:
error handling added
server-tools/instance-manager/manager.cc:
error handling added
server-tools/instance-manager/mysqlmanager.cc:
stop mysqlmanager if options were not loaded correctly
server-tools/instance-manager/options.cc:
return-value added
server-tools/instance-manager/options.h:
return-value added to the OPtions::load()
server-tools/instance-manager/parse_output.cc:
no need to examine mysqld --help -v termination status
server-tools/instance-manager/Makefile.am:
increased default_monitoring interval
server-tools/instance-manager/guardian.cc:
some fixes for proper shutdown
server-tools/instance-manager/guardian.h:
removed init() prototype, as it was never used
server-tools/instance-manager/instance.cc:
cleanup() function removed
server-tools/instance-manager/instance.h:
cleanup() prototype removed
server-tools/instance-manager/instance_map.cc:
Instance_map::cleanup() removed, as instances have nothing to clean up
server-tools/instance-manager/instance_map.h:
Instance_map::cleanup() prototype removed
server-tools/instance-manager/instance_options.cc:
added print_argv() function for debug purposes
server-tools/instance-manager/instance_options.h:
declared print_argv()
server-tools/instance-manager/listener.cc:
some fixed in listener for proper shutdown
server-tools/instance-manager/log.cc:
cleanup
server-tools/instance-manager/log.h:
cleanup
server-tools/instance-manager/manager.cc:
some comments added
server-tools/instance-manager/mysqlmanager.cc:
we need to free memory in the very end
server-tools/instance-manager/options.cc:
fixed default options handling (as they were not working properly), added new method to cleanup Options
server-tools/instance-manager/options.h:
cleanup() declared
server-tools/instance-manager/thread_registry.cc:
cleanup
server-tools/instance-manager/user_map.cc:
missing password file is not a critical error anymore, as IM should be able to work as mysqld_safe only
server-tools/instance-manager/Makefile.am:
Makefile.am cleanup
server-tools/instance-manager/commands.cc:
cleanup
server-tools/instance-manager/instance_map.cc:
fix the problem caused thread deadlock (as load ends up in the find()
call which now also locks an instance map mutex)
server-tools/instance-manager/listener.cc:
portability fix
server-tools/instance-manager/manager.cc:
Ignore SIGPIPE
server-tools/instance-manager/mysqlmanager.cc:
cleanup
server-tools/instance-manager/options.cc:
options renamed
tree
server-tools/instance-manager/Makefile.am:
Fixed IM linking to avoid using both mysys and libmysql as the define the
same symbols and therefore conflict
server-tools/instance-manager/listener.cc:
Added ability to listen network ports
server-tools/instance-manager/listener.h:
Various additions to the Listener_thread_args
server-tools/instance-manager/log.cc:
merge
server-tools/instance-manager/log.h:
merge
server-tools/instance-manager/manager.cc:
Fixes and additions to enable guardian functionality
server-tools/instance-manager/manager.h:
Changed manager() signature
server-tools/instance-manager/mysqlmanager.cc:
Various fixes
server-tools/instance-manager/options.cc:
Added handling of default values for new options in the Options struct. (such
as default_user, default_password, monitoring_interval e.t.c)
server-tools/instance-manager/options.h:
Added new options to the Options struct
sql/net_serv.cc:
Added MYSQL_INSTANCE_MANAGER defines to enable alarm handling in the IM
server-tools/instance-manager/buffer.cc:
Simple implementation of variable-length buffer
server-tools/instance-manager/command.cc:
Abstract command. All commands are derived from Command class
server-tools/instance-manager/commands.h:
Interfaces for all commands we have
server-tools/instance-manager/factory.cc:
Commands factory. This class hides command instantiation. The idea is to
handle various protocols this way. (different commands for different
protocols
server-tools/instance-manager/guardian.cc:
Guardian thread implementation (monitor and restart instances in case of a
failure
server-tools/instance-manager/guardian.h:
Guardian_thread and Guardian_thread_args class interface. The
Guardian_thread is responsible for monitoring and restarting instances
server-tools/instance-manager/instance.cc:
Instance class contains methods and data to manage a single instance
server-tools/instance-manager/instance.h:
This file contains class an instance class interface. The class is
responsible for starting/stopping an instance
server-tools/instance-manager/instance_map.cc:
The instance repository. This class is also responsible for initialization
of Instance class objects.
server-tools/instance-manager/instance_options.cc:
The Instance_options class contains all methods to get and handle options
of an instance
server-tools/instance-manager/mysql_connection.cc:
The class responsible for handling MySQL client/server protocol connections
server-tools/instance-manager/mysql_manager_error.h:
The list of Instance Manger-specific errors
server-tools/instance-manager/parse.cc:
Simple query parser
server-tools/instance-manager/parse.h:
Parser interface
server-tools/instance-manager/protocol.cc:
Here implemented functions used to handle mysql client/server protocol
server-tools/instance-manager/protocol.h:
Interface for MySQL client/server protocol
server-tools/instance-manager/thread_registry.cc:
Thread registry stores information about every thread. It's main function is
to provide graceful shutdown for all threads.
server-tools/instance-manager/user_map.h:
User map contains hash with user names and passwords
safe shutdown and signal deliverence to all threads in
the manager process
server-tools/instance-manager/Makefile.am:
added listener.{h,cc} (listener thread)
and thread_repository.{h,cc} -
class to handle threads && signals
server-tools/instance-manager/log.h:
minor fixes
server-tools/instance-manager/manager.cc:
unnecessary error checking was removed
added implementation for signal thread
server-tools/instance-manager/manager.h:
header guards're added
server-tools/instance-manager/mysqlmanager.cc:
unnecessary error checking was removed
server-tools/instance-manager/options.cc:
minor fixes
server-tools/instance-manager/options.h:
removed wrong declaration
logging, options, angel process.
configure.in:
added support for instance-manager directory
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted