diff options
author | unknown <kostja@bodhi.local> | 2006-11-16 23:36:20 +0300 |
---|---|---|
committer | unknown <kostja@bodhi.local> | 2006-11-16 23:36:20 +0300 |
commit | 211b2bc92a25609e0c7323b5fee6f646abb3c748 (patch) | |
tree | dfe03cc1d016a01134a977925be735650f8f32ee /server-tools/instance-manager/priv.cc | |
parent | f224238f8aed243f47e49090ef08c9fae5d05a01 (diff) | |
download | mariadb-git-211b2bc92a25609e0c7323b5fee6f646abb3c748.tar.gz |
Cleanup: manually port the polishing parts from Alik's changeset for
BUG#22306: STOP INSTANCE can not be applied for instances in Crashed,
Failed and Abandoned
mysql-test/t/im_options.imtest:
Update test for new framework.
server-tools/instance-manager/IMService.cpp:
Use Manager class instead of manager().
Reformat comments.
server-tools/instance-manager/Makefile.am:
Treat warnings as errors.
server-tools/instance-manager/command.cc:
Store references to Guardian_thread and Instance_map in Command attributes.
server-tools/instance-manager/command.h:
Store references to Guardian_thread and Instance_map in Command
attributes.
server-tools/instance-manager/commands.cc:
Remove Instance_map argument from command constructors.
server-tools/instance-manager/commands.h:
Remove Instance_map argument from command constructors.
server-tools/instance-manager/guardian.cc:
Rename: Guardian_thread -> Guardian
server-tools/instance-manager/guardian.h:
Rename: Guardian_thread -> Guardian
server-tools/instance-manager/instance_map.cc:
Rename: Guardian_thread -> Guardian.
server-tools/instance-manager/instance_map.h:
Rename: Guardian_thread -> Guardian.
server-tools/instance-manager/manager.cc:
Use Manager class instead of manager() function.
server-tools/instance-manager/manager.h:
Transfer manager() function into Manager class (singleton).
server-tools/instance-manager/mysql_connection.cc:
Polishing.
server-tools/instance-manager/mysqlmanager.cc:
Use Manager class instead of manager() function.
server-tools/instance-manager/parse.cc:
Rename: Guardian_thread -> Guardian
server-tools/instance-manager/parse.h:
Rename: Guardian_thread -> Guardian
server-tools/instance-manager/priv.cc:
Move create_pid_file() out of manager.cc.
server-tools/instance-manager/priv.h:
Move create_pid_file() out of manager.cc.
server-tools/instance-manager/thread_registry.h:
Prevent copying.
server-tools/instance-manager/user_map.cc:
Fix alignment.
Diffstat (limited to 'server-tools/instance-manager/priv.cc')
-rw-r--r-- | server-tools/instance-manager/priv.cc | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/server-tools/instance-manager/priv.cc b/server-tools/instance-manager/priv.cc index 3dae900d84b..7e3553444ac 100644 --- a/server-tools/instance-manager/priv.cc +++ b/server-tools/instance-manager/priv.cc @@ -18,6 +18,9 @@ #include <my_global.h> #include <mysql_com.h> +#include <my_sys.h> + +#include "log.h" #if defined(__ia64__) || defined(__ia64) /* @@ -90,3 +93,32 @@ int set_stacksize_n_create_thread(pthread_t *thread, pthread_attr_t *attr, rc= pthread_create(thread, attr, start_routine, arg); return rc; } + + +int create_pid_file(const char *pid_file_name, int pid) +{ + FILE *pid_file; + + if (!(pid_file= my_fopen(pid_file_name, O_WRONLY | O_CREAT | O_BINARY, + MYF(0)))) + { + log_error("Error: can not create pid file '%s': %s (errno: %d)", + (const char *) pid_file_name, + (const char *) strerror(errno), + (int) errno); + return 1; + } + + if (fprintf(pid_file, "%d\n", (int) pid) <= 0) + { + log_error("Error: can not write to pid file '%s': %s (errno: %d)", + (const char *) pid_file_name, + (const char *) strerror(errno), + (int) errno); + return 1; + } + + my_fclose(pid_file, MYF(0)); + + return 0; +} |