summaryrefslogtreecommitdiff
path: root/mysys
diff options
context:
space:
mode:
authorunknown <monty@donna.mysql.com>2000-10-14 03:16:35 +0300
committerunknown <monty@donna.mysql.com>2000-10-14 03:16:35 +0300
commit518a621adf75a55cad471f82d926842f3bcbf997 (patch)
tree1b0bc8c3909ac0c3e49a7d72615c583c9a72254d /mysys
parentda2c52f1fe73f1fca8d95875957b4bcb4bd84a4b (diff)
downloadmariadb-git-518a621adf75a55cad471f82d926842f3bcbf997.tar.gz
Fix of LEFT JOIN optimizer bug, problem with key cache on Windows and
a lot of portability issues. Docs/manual.texi: Changed FOREIGN KEY to FOREIGN KEY constraint client/mysqladmin.c: Don't flush MASTER or SLAVE on refresh configure.in: Fix for hpux 11.0 extra/perror.c: New error message include/my_pthread.h: Portability fix for windows myisam/mi_locking.c: Ensure that locking doesn't interfere with pread/pwrite on windows myisam/sort.c: checked with purecover mysys/mf_tempfile.c: Fix for windows mysys/my_lock.c: Ensure that locking doesn't interfere with pread/pwrite on windows mysys/my_winthread.c: Portability fix sql-bench/Results/ATIS-mysql-NT_4.0: New benchmark runs sql-bench/Results/RUN-mysql-NT_4.0: New benchmark runs sql-bench/Results/alter-table-mysql-NT_4.0: New benchmark runs sql-bench/Results/big-tables-mysql-NT_4.0: New benchmark runs sql-bench/Results/connect-mysql-NT_4.0: New benchmark runs sql-bench/Results/create-mysql-NT_4.0: New benchmark runs sql-bench/Results/insert-mysql-NT_4.0: New benchmark runs sql-bench/Results/select-mysql-NT_4.0: New benchmark runs sql-bench/Results/wisconsin-mysql-NT_4.0: New benchmark runs sql-bench/crash-me.sh: Fixed things for PostgreSQL sql-bench/limits/mysql-3.23.cfg: Update for new crash-me sql-bench/limits/mysql.cfg: Update for new crash-me sql-bench/print-limit-table: Fixed position for alter table rename sql-bench/test-insert.sh: Fix for PostgreSQL sql/field.cc: Fix for default values in CREATE ... SELECT sql/field.h: Fix for default values in CREATE ... SELECT sql/log.cc: Fixed typo sql/log_event.cc: Portability fix sql/mysqlbinlog.cc: Portability fix sql/mysqld.cc: Don't turn of concurrent insert with --skip-new or --safe sql/sql_base.cc: Portability fix sql/sql_class.cc: Portability fix sql/sql_class.h: Portability fix sql/sql_parse.cc: Fix for --log-slow-queries sql/sql_repl.cc: Portability fixes sql/sql_select.cc: Fixed optimizer bug for LEFT JOIN sql/sql_select.h: Fixed optimizer bug for LEFT JOIN sql/sql_table.cc: Fix for default values in CREATE ... SELECT sql/sql_yacc.yy: Added optional AS to: CREATE TABLE foo [ AS ] SELECT ...
Diffstat (limited to 'mysys')
-rw-r--r--mysys/mf_tempfile.c2
-rw-r--r--mysys/my_lock.c15
-rw-r--r--mysys/my_winthread.c4
3 files changed, 14 insertions, 7 deletions
diff --git a/mysys/mf_tempfile.c b/mysys/mf_tempfile.c
index 44826ad57c2..e78cb3ca2ae 100644
--- a/mysys/mf_tempfile.c
+++ b/mysys/mf_tempfile.c
@@ -43,7 +43,7 @@ File create_temp_file(char *to, const char *dir, const char *prefix,
DBUG_ENTER("open_temp_file");
#if defined(_MSC_VER)
{
- char *end,*res,**old_env,*temp_env[1];
+ char temp[FN_REFLEN],*end,*res,**old_env,*temp_env[1];
old_env=environ;
if (dir)
{
diff --git a/mysys/my_lock.c b/mysys/my_lock.c
index 4f1506f20cf..ed637648353 100644
--- a/mysys/my_lock.c
+++ b/mysys/my_lock.c
@@ -109,10 +109,17 @@ int my_lock(File fd, int locktype, my_off_t start, my_off_t length,
printf("Error: DosSetFileLocks() == %d\n",rc);
}
#elif defined(HAVE_LOCKING)
- if (MyFlags & MY_SEEK_NOT_DONE)
- VOID(my_seek(fd,start,MY_SEEK_SET,MYF(MyFlags & ~MY_SEEK_NOT_DONE)));
- if (!locking(fd,locktype,(ulong) length) || errno == EINVAL)
- DBUG_RETURN(0);
+ /* Windows */
+ {
+ my_bool error;
+ pthread_mutex_lock(&my_file_info[fd].mutex);
+ if (MyFlags & MY_SEEK_NOT_DONE)
+ VOID(my_seek(fd,start,MY_SEEK_SET,MYF(MyFlags & ~MY_SEEK_NOT_DONE)));
+ error= locking(fd,locktype,(ulong) length) && errno != EINVAL;
+ pthread_mutex_unlock(&my_file_info[fd].mutex);
+ if (!error)
+ DBUG_RETURN(0);
+ }
#else
#if defined(HAVE_FCNTL)
lock.l_type= (short) locktype;
diff --git a/mysys/my_winthread.c b/mysys/my_winthread.c
index 6a99fa0bb02..2fe56a13baf 100644
--- a/mysys/my_winthread.c
+++ b/mysys/my_winthread.c
@@ -61,7 +61,7 @@ static pthread_handler_decl(pthread_start,param)
win_pthread_self=((struct pthread_map *) param)->pthreadself;
pthread_mutex_unlock(&THR_LOCK_thread);
free((char*) param); /* Free param from create */
- pthread_exit((*func)(func_param));
+ pthread_exit((void*) (*func)(func_param));
return 0; /* Safety */
}
@@ -103,7 +103,7 @@ int pthread_create(pthread_t *thread_id, pthread_attr_t *attr,
}
-void pthread_exit(unsigned A)
+void pthread_exit(void *a)
{
_endthread();
}