Commit graph

11 commits

Author SHA1 Message Date
unknown
ac3806046b Fix compilation problems on Windows and SUN Solaris.
include/m_string.h:
  Fix declaration of C-structure for Visual Studio and Sun C-compiler.
server-tools/instance-manager/IMService.cpp:
  Fixed.
server-tools/instance-manager/Makefile.am:
  Removed gcc-specific flags.
server-tools/instance-manager/commands.cc:
  Moved m_string.h to the header.
server-tools/instance-manager/commands.h:
  Replaced forward declaration of LEX_STRING because
  it is not understood by all compilers.
server-tools/instance-manager/instance_map.cc:
  1. Moved m_string.h to the header.
  2. Use (const char *) to point to const C-string.
server-tools/instance-manager/instance_map.h:
  Replaced forward declaration of LEX_STRING because
  it is not understood by all compilers.
server-tools/instance-manager/instance_options.h:
  Fixed headers.
server-tools/instance-manager/mysqlmanager.cc:
  Fixed headers.
server-tools/instance-manager/user_management_commands.cc:
  Removed unused variables.
server-tools/instance-manager/user_map.cc:
  Fixed headers.
2006-05-19 04:51:23 +04:00
unknown
8b4fcf6e3b This is an implementation of two WL items:
- WL#3158: IM: Instance configuration extensions;
  - WL#3159: IM: --bootstrap and --start-default-instance modes

The following new statements have been added:
  - CREATE INSTANCE;
  - DROP INSTANCE;

The behaviour of the following statements have been changed:
  - SET;
  - UNSET;
  - FLUSH INSTANCES;
  - SHOW INSTANCES;
  - SHOW INSTANCE OPTIONS;


BitKeeper/deleted/.del-im_options_set.imtest~b53d9d60e5684833:
  Delete: mysql-test/t/im_options_set.imtest
BitKeeper/deleted/.del-im_options_set.result~59278f56be61d921:
  Delete: mysql-test/r/im_options_set.result
BitKeeper/deleted/.del-im_options_unset.imtest~768eb186b51d0048:
  Delete: mysql-test/t/im_options_unset.imtest
BitKeeper/deleted/.del-im_options_unset.result~20a4790cd3c70a4f:
  Delete: mysql-test/r/im_options_unset.result
client/get_password.c:
  Change prototype to avoid casting when using C-strings (char *).
include/m_string.h:
  Moved LEX_STRING to global header from sql/ to be accessible
  from all components (IM for one).
include/my_sys.h:
  Added constants for modify_defaults_file().
include/mysql_com.h:
  Removed duplicated declarations. my_sys.h should be used instead.
libmysql/get_password.c:
  Change prototype to avoid casting when using C-strings (char *).
mysql-test/mysql-test-run.pl:
  Added environment variables to be used from tests.
mysql-test/r/im_daemon_life_cycle.result:
  Column name has been changed in SHOW INSTANCES.
mysql-test/r/im_life_cycle.result:
  1. Column name has been changed in SHOW INSTANCES.
  2. Removed redundant SHOW INSTANCE STATUS statements.
mysql-test/r/im_utils.result:
  Updated the result file.
mysql-test/t/im_daemon_life_cycle-im.opt:
  Set minimal monitoring interval for Instance Manager to speed up testing.
mysql-test/t/im_daemon_life_cycle.imtest:
  Get Instance Manager and managed mysqld-instances enough time to start.
mysql-test/t/im_life_cycle.imtest:
  1. Polishing;
  2. Fixed a test error in 1.1.2.
mysql-test/t/im_utils.imtest:
  Get Instance Manager and managed mysqld-instances enough time to start.
mysys/default.c:
  Pass the name of the section to the handler function as well.
mysys/default_modify.c:
  Added REMOVE_SECTION functionality.
server-tools/instance-manager/IMService.cpp:
  Polishing: be more verbose.
server-tools/instance-manager/IMService.h:
  Polishing: added copyright.
server-tools/instance-manager/Makefile.am:
  Added new files.
server-tools/instance-manager/WindowsService.cpp:
  Polishing: according to The Coding Style, TRUE/FALSE must be
  used instead of true/false.
server-tools/instance-manager/WindowsService.h:
  Polishing: added copyright.
server-tools/instance-manager/command.h:
  Polishing: provide a comment for the main operation of "Command" class.
server-tools/instance-manager/commands.cc:
  1. Added support for CREATE INSTANCE, DROP INSTANCE statements;
  2. Added "deprecated" column in output of SHOW INSTANCE OPTIONS;
  3. Modified the behaviour of SET/UNSET, FLUSH INSTANCES statements;
server-tools/instance-manager/commands.h:
  1. Added support for CREATE INSTANCE, DROP INSTANCE statements;
  2. Added "deprecated" column in output of SHOW INSTANCE OPTIONS;
  3. Modified the behaviour of SET/UNSET, FLUSH INSTANCES statements;
server-tools/instance-manager/guardian.cc:
  Added operations to retrieve state of managed instances.
server-tools/instance-manager/guardian.h:
  Added operations to retrieve state of managed instances.
server-tools/instance-manager/instance.cc:
  1. Provided an operation to check validity of instance name.
  2. Added an attribute to distiguish mysqld-instances,
     whose configuration should be kept backward-compatible.
server-tools/instance-manager/instance.h:
  1. Provided an operation to check validity of instance name.
  2. Added an attribute to distiguish mysqld-instances,
     whose configuration should be kept backward-compatible.
server-tools/instance-manager/instance_map.cc:
  1. Used the operation to check validity of instance name;
  2. Added operations to manage instances.
server-tools/instance-manager/instance_map.h:
  Added operations to manage instances.
server-tools/instance-manager/instance_options.cc:
  Changed Instance_options so that it will be possible to manage
  options on the fly.
server-tools/instance-manager/instance_options.h:
  Changed Instance_options so that it will be possible to manage
  options on the fly.
server-tools/instance-manager/listener.cc:
  1. Remove reference to the instance of Options;
  2. Use new Options naming scheme.
server-tools/instance-manager/listener.h:
  Remove reference to the instance of Options;
server-tools/instance-manager/log.cc:
  Polishing: use TRUE/FALSE instead of true/false.
server-tools/instance-manager/manager.cc:
  Added a common for IM operation to work with configuration file.
server-tools/instance-manager/manager.h:
  Added a common for IM operation to work with configuration file.
server-tools/instance-manager/messages.cc:
  Added messages for new errors.
server-tools/instance-manager/mysql_connection.cc:
  1. Move a constant to common place.
  2. Polishing.
server-tools/instance-manager/mysql_manager_error.h:
  Added new errors.
server-tools/instance-manager/mysqlmanager.cc:
  1. Use error code from Options::load();
  2. Eliminate type-casting warning on Windows.
server-tools/instance-manager/options.cc:
  Added support for user-management command-line options.
server-tools/instance-manager/options.h:
  Added support for user-management command-line options.
server-tools/instance-manager/parse.cc:
  1. Added support of new statements:
     - CREATE INSTANCE;
     - DROP INSTANCE.
  2. Modified SET/UNSET.
server-tools/instance-manager/parse.h:
  1. Added support of new statements:
     - CREATE INSTANCE;
     - DROP INSTANCE.
  2. Modified SET/UNSET.
server-tools/instance-manager/parse_output.cc:
  Sorted out header files.
server-tools/instance-manager/parse_output.h:
  Sorted out header files.
server-tools/instance-manager/portability.h:
  1. Added constants for Windows.
  2. Moved system-dependent defines from instance_options.cc.
server-tools/instance-manager/priv.cc:
  Updated version.
server-tools/instance-manager/priv.h:
  Added some global constants.
server-tools/instance-manager/protocol.cc:
  Replaced NAME_WITH_LENGTH by LEX_STRING.
server-tools/instance-manager/protocol.h:
  Replaced NAME_WITH_LENGTH by LEX_STRING.
server-tools/instance-manager/thread_registry.cc:
  Polishing: use TRUE/FALSE instead of true/false.
server-tools/instance-manager/user_map.cc:
  Added support for managing password database.
server-tools/instance-manager/user_map.h:
  Added support for managing password database.
sql/sp.cc:
  Replaced LEX_STRING_WITH_INIT by LEX_STRING + struct initialization.
sql/sp_head.cc:
  Replaced LEX_STRING_WITH_INIT by LEX_STRING + struct initialization.
sql/spatial.cc:
  Removed LEX_STRING_WITH_INIT.
sql/spatial.h:
  Removed LEX_STRING_WITH_INIT.
sql/sql_string.h:
  Moved STRING_WITH_LEN() macro out from sql (to m_string.h).
sql/sql_trigger.cc:
  Moved STRING_WITH_LEN() macro out from sql (to m_string.h).
sql/structs.h:
  Removed LEX_STRING_WITH_INIT.
support-files/mysql.server.sh:
  Instruct Instance Manager to work in mysqld-safe compatible mode
  for backward compatibility.
mysql-test/r/im_cmd_line.result:
  Added result file.
mysql-test/r/im_instance_conf.result:
  Added result file.
mysql-test/r/im_options.result:
  Added result file.
mysql-test/t/im_cmd_line.imtest:
  IM command-line options test.
mysql-test/t/im_instance_conf-im.opt:
  Set minimal monitoring interval for Instance Manager to speed up testing.
mysql-test/t/im_instance_conf.imtest:
  Added a new test case for checking instance-management.
mysql-test/t/im_life_cycle-im.opt:
  Set minimal monitoring interval for Instance Manager to speed up testing.
mysql-test/t/im_options.imtest:
  Join im_options_set and im_options_unset and add new tests.
mysql-test/t/im_utils-im.opt:
  Set minimal monitoring interval for Instance Manager to speed up testing.
server-tools/instance-manager/exit_codes.h:
  New file for defining exit codes for user-management mode.
server-tools/instance-manager/user_management_commands.cc:
  User-management commands implementation.
server-tools/instance-manager/user_management_commands.h:
  User-management command declarations.
2006-05-18 18:57:50 +04: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
259da9d157 Merge rburnett@bk-internal.mysql.com:/home/bk/mysql-5.0
into  linux.site:/home/reggie/bk/mysql-5.0-new


server-tools/instance-manager/IMService.cpp:
  Auto merged
2005-08-10 05:02:37 -06: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
5d8222cd6f changes to IM that came from Petr and JimW's review.
server-tools/instance-manager/IMService.cpp:
  make sure HandleServiceOptions returns 0 on success and 1 on failure
server-tools/instance-manager/mysqlmanager.cc:
  default return value is 1.
  simplify some code bits by just jumping to err on error.
  move options.cleanup inside the err block.  In this case, the err block
  is more than just an error block.  It is the terminating block
  for both error and success.  You set return_value to 0 for success
  or leave it as 1 for failure.  This simplies this function a bit.
server-tools/instance-manager/options.cc:
  remove the malloc for default password filename on Windows and replace
  with statically allocated memory.
  
  default Options:saved_argv to NULL so that we will know if we need
  to free it in cleanup()
  
  setup the default config file location for Windows inside the
  setup_windows_defaults function and remove this code from load()
  
  rework setup_windows_defaults so that it properly returns 0 on success
  and 1 on error and so it fills in the default location for the
  log file, password file, and config file.
2005-08-09 07:57:37 -06:00
unknown
530abb5c8b small corrections to the IM.
server-tools/instance-manager/IMService.cpp:
  removed \n from log_info calls as these will be added automatically
server-tools/instance-manager/user_map.cc:
  added back in support for password files using \r\n, this time
  without breaking the const contract.
2005-08-09 07:57:36 -06:00
unknown
69220b00bd chmod -x new IM files
server-tools/instance-manager/WindowsService.cpp:
  Change mode to -rw-rw-r--
server-tools/instance-manager/WindowsService.h:
  Change mode to -rw-rw-r--
server-tools/instance-manager/port.h:
  Change mode to -rw-rw-r--
server-tools/instance-manager/mysqlmanager.vcproj:
  Change mode to -rw-rw-r--
server-tools/instance-manager/IMService.cpp:
  Change mode to -rw-rw-r--
server-tools/instance-manager/IMService.h:
  Change mode to -rw-rw-r--
2005-08-05 17:09:02 +04:00
unknown
cd3fa684ce IM port cleanup
server-tools/instance-manager/IMService.cpp:
  coding style fixes: tabs, trailing spaces, offset e.t.c
server-tools/instance-manager/WindowsService.cpp:
  coding style fixes: tabs, trailing spaces, offset e.t.c
server-tools/instance-manager/WindowsService.h:
  coding style fixes: tabs, trailing spaces, offset e.t.c
server-tools/instance-manager/instance.cc:
  cleanup & coding style fixes: tabs, trailing spaces, offset e.t.c
server-tools/instance-manager/listener.cc:
  coding style fixes: tabs, trailing spaces, offset e.t.c
server-tools/instance-manager/manager.cc:
  coding style fixes: tabs, trailing spaces, offset e.t.c
server-tools/instance-manager/options.cc:
  coding style fixes: tabs, trailing spaces, offset e.t.c
server-tools/instance-manager/user_map.cc:
  simplify password file processing
2005-08-05 17:02:06 +04:00
unknown
55b4cb009e alot of formatting changes that came out of JimW's review
server-tools/instance-manager/IMService.cpp:
  fixed tabs and spacing per JimW's review
server-tools/instance-manager/WindowsService.cpp:
  fixed tabs and spacing per JimW's review
server-tools/instance-manager/WindowsService.h:
  fixed tabs and spacing per JimW's review
server-tools/instance-manager/commands.cc:
  fixed tabs and spacing per JimW's review
server-tools/instance-manager/instance.cc:
  fixed tabs and spacing per JimW's review
server-tools/instance-manager/instance_map.cc:
  fixed tabs and spacing per JimW's review
server-tools/instance-manager/listener.cc:
  fixed tabs and spacing per JimW's review
server-tools/instance-manager/manager.cc:
  fixed tabs and spacing per JimW's review
server-tools/instance-manager/options.cc:
  fixed tabs and spacing per JimW's review
server-tools/instance-manager/user_map.cc:
  fixed tabs and spacing per JimW's review
2005-08-03 16:20:27 -05: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