summaryrefslogtreecommitdiff
path: root/sql/mysqld.cc
diff options
context:
space:
mode:
authorunknown <jcole@tetra.spaceapes.com>2001-01-27 03:24:05 -0600
committerunknown <jcole@tetra.spaceapes.com>2001-01-27 03:24:05 -0600
commit882f16d0369b4cd0742ac37650a71fc6f3b00a57 (patch)
tree26c80620cd60c2689d8eb1f3eca78b805558f0f8 /sql/mysqld.cc
parent77be4587507b753c647d86d1231def8e7d3313fc (diff)
downloadmariadb-git-882f16d0369b4cd0742ac37650a71fc6f3b00a57.tar.gz
Added --temp-pool option to mysqld. This will cause temporary files
created to use a small set of filenames, to try and avoid problems in the Linux kernel. mysys/Makefile.am: Added my_bitmap.c mysys/my_init.c: my_bitmap code added mysys/mysys_priv.h: my_bitmap sql/mysql_priv.h: temp pool stuff. sql/mysqld.cc: --temp-pool option added sql/sql_select.cc: temp pool stuff sql/table.h: temp pool
Diffstat (limited to 'sql/mysqld.cc')
-rw-r--r--sql/mysqld.cc14
1 files changed, 13 insertions, 1 deletions
diff --git a/sql/mysqld.cc b/sql/mysqld.cc
index 62ee256b9da..b8a502ad2a4 100644
--- a/sql/mysqld.cc
+++ b/sql/mysqld.cc
@@ -287,6 +287,9 @@ I_List<THD> threads,thread_cache;
time_t start_time;
+uchar temp_pool[TEMP_POOL_SIZE];
+bool use_temp_pool;
+
pthread_key(MEM_ROOT*,THR_MALLOC);
pthread_key(THD*, THR_THD);
pthread_key(NET*, THR_NET);
@@ -1498,6 +1501,9 @@ int main(int argc, char **argv)
if (!mysql_tmpdir || !mysql_tmpdir[0])
mysql_tmpdir=(char*) P_tmpdir; /* purecov: inspected */
+ bzero(temp_pool, TEMP_POOL_SIZE);
+ use_temp_pool = 0;
+
set_options();
#ifdef __WIN__
/* service parameters can be overwritten by options */
@@ -2370,7 +2376,8 @@ enum options {
OPT_INNOBASE_LOG_GROUP_HOME_DIR,
OPT_INNOBASE_LOG_ARCH_DIR, OPT_INNOBASE_LOG_ARCHIVE,
OPT_INNOBASE_FLUSH_LOG_AT_TRX_COMMIT, OPT_SAFE_SHOW_DB,
- OPT_GEMINI_SKIP
+ OPT_GEMINI_SKIP,
+ OPT_TEMP_POOL
};
static struct option long_options[] = {
@@ -2501,6 +2508,7 @@ static struct option long_options[] = {
#ifdef __WIN__
{"standalone", no_argument, 0, (int) OPT_STANDALONE},
#endif
+ {"temp-pool", no_argument, 0, (int) OPT_TEMP_POOL},
{"tmpdir", required_argument, 0, 't'},
{"use-locking", no_argument, 0, (int) OPT_USE_LOCKING},
#ifdef USE_SYMDIR
@@ -2874,6 +2882,7 @@ static void usage(void)
Don't give threads different priorities.\n\
--socket=... Socket file to use for connection\n\
-t, --tmpdir=path Path for temporary files\n\
+ --temp-pool Use a pool of temporary files\n\
-u, --user=user_name Run mysqld daemon as user\n\
-V, --version output version information and exit");
#ifdef __WIN__
@@ -3049,6 +3058,9 @@ static void get_options(int argc,char **argv)
case 't':
mysql_tmpdir=optarg;
break;
+ case OPT_TEMP_POOL:
+ use_temp_pool=1;
+ break;
case 'u':
mysqld_user=optarg;
break;