summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorunknown <guilhem@mysql.com>2004-06-18 23:51:15 +0200
committerunknown <guilhem@mysql.com>2004-06-18 23:51:15 +0200
commit227f223d6bbcab16c29b020315b79cf7143e669b (patch)
treebdccc7bcabb922c886c76bf1c18f1dea22f06500 /include
parent94f36589c72c7c916802e2c8da9cb2f3ecc72b4a (diff)
parent83f485968f643cc87573d57be6944ff32b18d79a (diff)
downloadmariadb-git-227f223d6bbcab16c29b020315b79cf7143e669b.tar.gz
Merge gbichot@213.136.52.20:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1-874 include/mysql.h: Auto merged libmysql/libmysql.c: Auto merged sql/sql_parse.cc: Auto merged
Diffstat (limited to 'include')
-rw-r--r--include/mysql.h4
-rw-r--r--include/mysql_com.h21
2 files changed, 24 insertions, 1 deletions
diff --git a/include/mysql.h b/include/mysql.h
index 39b9b7da000..931995fb1ac 100644
--- a/include/mysql.h
+++ b/include/mysql.h
@@ -453,7 +453,9 @@ int STDCALL mysql_add_slave(MYSQL* mysql, const char* host,
const char* user,
const char* passwd);
-int STDCALL mysql_shutdown(MYSQL *mysql);
+int STDCALL mysql_shutdown(MYSQL *mysql,
+ enum enum_shutdown_level
+ shutdown_level);
int STDCALL mysql_dump_debug_info(MYSQL *mysql);
int STDCALL mysql_refresh(MYSQL *mysql,
unsigned int refresh_options);
diff --git a/include/mysql_com.h b/include/mysql_com.h
index d354a979cd1..90859b467c6 100644
--- a/include/mysql_com.h
+++ b/include/mysql_com.h
@@ -223,6 +223,27 @@ enum enum_field_types { MYSQL_TYPE_DECIMAL, MYSQL_TYPE_TINY,
#define FIELD_TYPE_INTERVAL MYSQL_TYPE_ENUM
#define FIELD_TYPE_GEOMETRY MYSQL_TYPE_GEOMETRY
+enum enum_shutdown_level {
+ /*
+ We want levels to be in growing order of gracefulness. So we leave room
+ for future intermediate levels. For now, escalating one level is += 10;
+ later if we insert new levels in between we will need a function
+ next_shutdown_level(level). Note that DEFAULT does not respect the
+ growing property.
+ */
+ SHUTDOWN_DEFAULT= 0, /* mapped to WAIT_ALL_BUFFERS for now */
+ /*
+ Here is the list in growing order (the next does the previous plus
+ something). WAIT_ALL_BUFFERS is what we have now. Others are "this MySQL
+ server does not support this shutdown level yet".
+ */
+ SHUTDOWN_WAIT_CRITICAL_BUFFERS= 10, /* flush MyISAM buffs (no corruption) */
+ SHUTDOWN_WAIT_ALL_BUFFERS= 20, /* flush InnoDB buffers */
+ SHUTDOWN_WAIT_STATEMENTS= 30, /* wait for existing updating stmts to finish */
+ SHUTDOWN_WAIT_TRANSACTIONS= 40, /* wait for existing trans to finish */
+ SHUTDOWN_WAIT_CONNECTIONS= 50 /* wait for existing connections to finish */
+};
+
/* options for mysql_set_option */
enum enum_mysql_set_option
{