server-tools/instance-manager/buffer.cc:
coding style fixes
server-tools/instance-manager/buffer.h:
wrong constructor initialisation fixed
server-tools/instance-manager/commands.cc:
cleanup
server-tools/instance-manager/guardian.cc:
cleanup + added lock/unlock routines
server-tools/instance-manager/guardian.h:
GUARD_NODE moved to the header
server-tools/instance-manager/instance.cc:
Fix for the linuxthreads/POSIX signal handling problem (see comments in the code)
server-tools/instance-manager/instance.h:
condition variable renamed and commented
server-tools/instance-manager/instance_map.cc:
We need to refresh guardian during flush_instances
server-tools/instance-manager/instance_map.h:
removed obsolete function declaration
server-tools/instance-manager/instance_options.cc:
added caching of computed values
server-tools/instance-manager/instance_options.h:
added vars to cache some option values
server-tools/instance-manager/listener.cc:
check whether we are running on the linux threads
server-tools/instance-manager/manager.cc:
lock guardian before init()
server-tools/instance-manager/parse_output.cc:
cleanup
server-tools/instance-manager/priv.cc:
added global variables to detect whether we are running on the LinuxThreads
server-tools/instance-manager/priv.h:
added global variables to detect whether we are running on the LinuxThreads
server-tools/instance-manager/buffer.cc:
use my_realloc instead of realloc
server-tools/instance-manager/buffer.h:
use my_malloc instead of malloc
server-tools/instance-manager/commands.cc:
No need to send a buffer if there were some error while writing to it
server-tools/instance-manager/instance_options.cc:
cleanup
server-tools/instance-manager/manager.cc:
check sigwait return value
server-tools/instance-manager/parse_output.cc:
fixed a bug, found with valgrind
BitKeeper/deleted/.del-client_func.c~3476a8a85cbd3c29:
Delete: server-tools/instance-manager/client_func.c
server-tools/instance-manager/Makefile.am:
clien_func removed
server-tools/instance-manager/buffer.cc:
several methods added
server-tools/instance-manager/buffer.h:
Some error-handling fixes.
server-tools/instance-manager/commands.cc:
check for Buffer errors
server-tools/instance-manager/guardian.cc:
Guardian rewiriten. Not it works in a finite state machine-way.
server-tools/instance-manager/guardian.h:
Appropriate (to .cc) changes in the header + some comment added
server-tools/instance-manager/instance.cc:
added proxy thread to monitor instance. Two kinds of stop() now -- stop() and kill_instance which
only sends a signal
server-tools/instance-manager/instance.h:
appropriate changes
server-tools/instance-manager/instance_map.cc:
cleanup
server-tools/instance-manager/instance_map.h:
cleanup
server-tools/instance-manager/instance_options.cc:
Caching of the pid-file-name is added. some comments added
server-tools/instance-manager/instance_options.h:
cleanup
server-tools/instance-manager/listener.cc:
listener my_thread_init added (though it doesn't use any mysys functions). Just in case
server-tools/instance-manager/manager.cc:
SIGCHLD handler removed. now instance monitoring is implemented through proxy threads. This is to work nicely
with LinuxThreads
server-tools/instance-manager/options.cc:
added option to create a password file entry (this was implemented by Sergei Vojtovich)
server-tools/instance-manager/parse.cc:
inline function get_word moved to the header
server-tools/instance-manager/parse.h:
get_word moved here to use form parse_output
server-tools/instance-manager/parse_output.cc:
get_word() clone removed. now looking through the output linewise
server-tools/instance-manager/protocol.cc:
Buffer error chech added
server-tools/instance-manager/user_map.cc:
typo fixed
server-tools/instance-manager/buffer.cc:
fix typo
server-tools/instance-manager/commands.cc:
get rid of compiler warnings
server-tools/instance-manager/guardian.cc:
fix compiler warning
server-tools/instance-manager/instance.cc:
fix warnings
server-tools/instance-manager/instance_map.cc:
fix return value
server-tools/instance-manager/instance_map.h:
fix problem, caused autobuild failure. Looks like a gcc problem -
"friend class <name>" doesn't work if specified before enclosed class
<name> (this is not present in newer gcc versions)
server-tools/instance-manager/Makefile.am:
Removed entry for deleted file
server-tools/instance-manager/buffer.cc:
cleanup
server-tools/instance-manager/commands.cc:
cleanup, added missing error handling
server-tools/instance-manager/instance.cc:
added waitpid in instance_start, added few checks
server-tools/instance-manager/instance_map.cc:
error handling for hash_init added
server-tools/instance-manager/instance_map.h:
Extended constructor
server-tools/instance-manager/instance_options.cc:
made add_option less bulky
server-tools/instance-manager/instance_options.h:
-
server-tools/instance-manager/listener.cc:
added missing close, fixed typo
server-tools/instance-manager/manager.cc:
moved some Instance_map initialization to costructor
server-tools/instance-manager/protocol.cc:
error handling added
server-tools/instance-manager/protocol.h:
store_to_string fixed to return a value
server-tools/instance-manager/user_map.cc:
error handling for hash_init added
server-tools/instance-manager/user_map.h:
added init() for User map (becouse of the hash_init check)
server-tools/instance-manager/buffer.cc:
simplified buffer interface
server-tools/instance-manager/buffer.h:
simplified buffer interface
server-tools/instance-manager/command.cc:
Command class now uses instance_map directly
server-tools/instance-manager/command.h:
Made Command to use instance_map directly (not through the factory,
which is not needed here in fact)
server-tools/instance-manager/commands.cc:
Moved mysql client/server protocol-specific functions to the commands
server-tools/instance-manager/commands.h:
Added a comment for Syntax_error command, fixed classes to use instance
map instead of the factory
server-tools/instance-manager/factory.cc:
Fixed factory to give appropriate class to the commands
server-tools/instance-manager/guardian.cc:
Fixed guardian to delay start of new instances monitoring.
Moved guardian initialization to the class from Instance map.
server-tools/instance-manager/guardian.h:
interface fixed
server-tools/instance-manager/instance.cc:
added some loging
server-tools/instance-manager/instance_map.cc:
All non-instance map specific functions moved from the class. Added
iterator for instance_map
server-tools/instance-manager/instance_map.h:
All non-instance map related functions moved from the class. Added
iterator for instance_map.
server-tools/instance-manager/listener.cc:
Added FD_CLOEXEC flag to sockets, as we don't want instances to inherit
them after exec.
server-tools/instance-manager/manager.cc:
use guardian method moved from the instance map
server-tools/instance-manager/mysql_connection.cc:
cleanup
server-tools/instance-manager/protocol.cc:
fix according to the changes in the Buffer class
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