Commit graph

16 commits

Author SHA1 Message Date
unknown
d7ddf0e02f a bunch of IM fixes from the GUI team
mysql-test/r/im_life_cycle.result:
  correct result
mysql-test/t/im_life_cycle.imtest:
  check that wrong command is processed correctly
server-tools/instance-manager/Makefile.am:
  always look for passwords in /etc/ on unixes
server-tools/instance-manager/commands.cc:
  fix warning
server-tools/instance-manager/instance.cc:
  fix monitoring capabilities, when no port was specified
  for an instance
server-tools/instance-manager/instance_map.cc:
  allow relative paths in --defaults-file option
server-tools/instance-manager/mysqlmanager.cc:
  fix windows warning
server-tools/instance-manager/options.cc:
  add vars to allow relative paths in --defaults-file option
server-tools/instance-manager/options.h:
  add an option
server-tools/instance-manager/parse.cc:
  check for get_text_id return value
server-tools/instance-manager/portability.h:
  add _snprintf define, move platfrom-independent
  ifdefs to priv.h
server-tools/instance-manager/priv.cc:
  increase net timeout. it should be equal to mysqld's
server-tools/instance-manager/priv.h:
  move platform-independent ifdefs here
2006-02-10 02:15:55 +03:00
unknown
8b9e392edf fix compilation failure on serg's box: we shouldn't
use USE_PRAGMA_INTERFACE before include of my_global.h,
where it is defined


server-tools/instance-manager/command.h:
  don't use USE_PRAGMA_INTERFACE before my_global.h, where it is defined
server-tools/instance-manager/listener.h:
  don't use USE_PRAGMA_INTERFACE before my_global.h, where it is defined
server-tools/instance-manager/mysql_connection.h:
  don't use USE_PRAGMA_INTERFACE before my_global.h, where it is defined
server-tools/instance-manager/options.h:
  don't use USE_PRAGMA_INTERFACE before my_global.h, where it is defined
server-tools/instance-manager/thread_registry.cc:
  fix register
server-tools/instance-manager/thread_registry.h:
  don't use USE_PRAGMA_INTERFACE before my_global.h, where it is defined
server-tools/instance-manager/user_map.h:
  don't use USE_PRAGMA_INTERFACE before my_global.h, where it is defined
2005-10-19 00:31:00 +04:00
unknown
ab0d7e2ace Some minor fixes revealed as warnings by
Intel compiler.


client/mysqltest.c:
  Fixed a warning from using reference to a memory area,
  which is outside an object. This is just a minor
  clean-up, not a bug fix.
server-tools/instance-manager/buffer.cc:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/buffer.h:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/command.cc:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/command.h:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/guardian.cc:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/guardian.h:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/instance.cc:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/instance.h:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/instance_map.cc:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/instance_map.h:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/instance_options.cc:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/instance_options.h:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/listener.cc:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/listener.h:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/mysql_connection.cc:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/mysql_connection.h:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/options.cc:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/options.h:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/parse_output.cc:
  Removed unused goto.
server-tools/instance-manager/thread_registry.cc:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/thread_registry.h:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/user_map.cc:
  Fixed pragma warning for those compilers that do
  not support it.
server-tools/instance-manager/user_map.h:
  Fixed pragma warning for those compilers that do
  not support it.
sql/field.cc:
  Fixed a warning about overflow.
sql/item.h:
  Fixed implicit function declaration warning.
sql/item_sum.cc:
  Fixed implicit function declaration warning.
2005-09-23 21:28:56 +03:00
unknown
c6dfe79beb fixed the service bits of the IM
server-tools/instance-manager/IMService.cpp:
  * setting username and password to NULL so that the 
  IM runs at LocalSystem (this should be changed soon)
  * implemented stop service by raising a sigterm
  * implemented start service by loading options and calling manager()
server-tools/instance-manager/IMService.h:
  changed the sig for Run()
server-tools/instance-manager/WindowsService.cpp:
  default debugging to false
  changed the sig of RuN()
server-tools/instance-manager/WindowsService.h:
  change the sig of run()
server-tools/instance-manager/instance.cc:
  * remove the inclusion of process.h
  * concat all args into a single buffer to pass to CreateProcess
server-tools/instance-manager/instance_options.cc:
  quoting the binary to handle paths with quotes
server-tools/instance-manager/listener.cc:
  use a timeval for select so that our select will only run
  for 100 msec before we check to see if we are shutting down
server-tools/instance-manager/mysqlmanager.cc:
  if we are given the stand alone option, then run the manager as 
  standalone
server-tools/instance-manager/options.cc:
  Added stand alone command line arg
server-tools/instance-manager/options.h:
  Added stand alone command line arg
2005-09-13 14:53:19 -05:00
unknown
f766a1dc41 changes to IM code that came from Petr's review
server-tools/instance-manager/IMService.cpp:
  syntax change requested by Petr
server-tools/instance-manager/options.cc:
  return 1 instead of -1
server-tools/instance-manager/options.h:
  changed return value of setup_windows_defaults to int from void
2005-08-09 07:57:40 -06:00
unknown
9a2ea3700b Merge rburnett@bk-internal.mysql.com:/home/bk/mysql-5.0
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
2005-08-04 09:33:44 -05:00
unknown
a38f5cd5cd Post-review fixes for WL#2713 "Change IM behaviour so, that it only reads and alters one config file only."
server-tools/instance-manager/commands.cc:
  get rid of single_defaults_file_option and use Options::config_file instead
server-tools/instance-manager/commands.h:
  get rid of single_defaults_file_option and use Options::config_file instead
server-tools/instance-manager/instance_map.cc:
  get rid of single_defaults_file_option and use Options::config_file instead
server-tools/instance-manager/instance_map.h:
  get rid of single_defaults_file_option and use Options::config_file instead
server-tools/instance-manager/manager.cc:
  get rid of single_defaults_file_option and use Options::config_file instead
server-tools/instance-manager/options.cc:
  Disable --defaults-extra-file and --no-defaults options for the IM as they have no sence. 
  Don't use print_defaults as it prints out wrong "first option" information for IM. Use only
  Options::config_file to process options
server-tools/instance-manager/options.h:
  get rid of single_defaults_file_option and use Options::config_file instead
2005-07-21 22:40:53 +04:00
unknown
34fa3be594 WL #2713 Change IM behaviour so, that it only reads and alters one config file only.
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
2005-07-21 14:21:23 +04:00
unknown
875b0e6322 initial import of Windows port of IM.
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''
2005-07-20 10:55:40 -05:00
unknown
e2d78b85bf made IM to work with --defaults-file smoothly
BitKeeper/deleted/.del-my.cnf~9322f78f12eb2f3c:
  Delete: support-files/my.cnf
include/my_sys.h:
  fixed prototype to reflect changes in default.c
mysys/default.c:
  use my_search_option_files instead of process_default_option_files. This is used from the IM.
server-tools/instance-manager/instance.cc:
  added parameter to complete_initialization(). this ine marks whether we are creating the only instance
  (for instance, when no config file given)
server-tools/instance-manager/instance.h:
  prototype changed
server-tools/instance-manager/instance_map.cc:
  Now call my_search_option_files to work smootly with --defaults-file
server-tools/instance-manager/instance_map.h:
  added first_option member. This is set of mysqlmanager was started with --defaults-file or with
  --extra-defaults-file to be passed to the my_search_option_files
server-tools/instance-manager/instance_options.cc:
  if we have only one instance, name the pidfile `hostname`.pid for compatibility reasons.
server-tools/instance-manager/instance_options.h:
  header fixed according to .cc
server-tools/instance-manager/manager.cc:
  prototype fixed
server-tools/instance-manager/options.cc:
  save --defaults-file of --defaults-extra-file to pass it to my_search_option_files
server-tools/instance-manager/options.h:
  added an optin to save --default-file options
support-files/Makefile.am:
  revert changes
2005-02-18 14:58:30 +03:00
unknown
deba12cd34 some more cleanups and fixes
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
2005-02-15 04:38:33 +03:00
unknown
95e650e50a --user option added to mysqlmanager
server-tools/instance-manager/mysql_connection.cc:
  removed unsed method
server-tools/instance-manager/mysqlmanager.cc:
  add --user option handling
server-tools/instance-manager/options.cc:
  --user option added
server-tools/instance-manager/options.h:
  user option added + some cleanup
2005-02-05 14:04:49 +03:00
unknown
ab432d6c05 Various fixes (cleanups, valgrind, makefiles, ...)
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
2005-02-03 20:48:58 +03:00
unknown
a5435ea78a Intermediate commit - just to make new files visible to bk in the new
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
2004-10-23 11:32:52 +04:00
unknown
df6047f047 First implementation for signal handling and multi-threading:
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
2003-08-19 19:55:20 +04:00
unknown
e561c3ee60 First implementation of instance-manager carcass:
logging, options, angel process.


configure.in:
  added support for instance-manager directory
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2003-08-16 21:44:24 +04:00