From c868213373782dc172a6d279d4d3d8ef45cdbc57 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 24 Sep 2004 11:54:37 +0200 Subject: Fix for BUG#3248 "Doc says MyISAM warns if disk full but it does not": we force the message to the error log, and we make it more informative; we treat EDQUOT like ENOSPC. mysys/errors.c: more informative message mysys/my_fstream.c: Treat EDQUOT like ENOSPC. mysys/my_pread.c: Treat EDQUOT like ENOSPC. mysys/my_write.c: Treat EDQUOT like ENOSPC. mysys/mysys_priv.h: Define EDQUOT when it does not exist. Finally decided to put it here after discussion with Monty: as this constant is used only in 3 files only in mysys/, I don't make it visible everywhere (there currently is no file of choice for such defines; my_base.h does not contain any). Using a value which never happens avoids collisions. sql/mysqld.cc: If ME_NOREFRESH, we write message to error log, even if it has been saved for client (because if operation is hanging, the message does not get to client now; example is MyISAM waiting for free disk space). --- mysys/mysys_priv.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'mysys/mysys_priv.h') diff --git a/mysys/mysys_priv.h b/mysys/mysys_priv.h index f79431a0b0b..d7aee04ae20 100644 --- a/mysys/mysys_priv.h +++ b/mysys/mysys_priv.h @@ -29,3 +29,11 @@ extern pthread_mutex_t THR_LOCK_charset; #else #include #endif + +/* + EDQUOT is used only in 3 C files only in mysys/. If it does not exist on + system, we set it to some value which can never happen. +*/ +#ifndef EDQUOT +#define EDQUOT (-1) +#endif -- cgit v1.2.1