diff options
-rw-r--r-- | BitKeeper/etc/logging_ok | 1 | ||||
-rw-r--r-- | Docs/manual.texi | 148 | ||||
-rw-r--r-- | Docs/mirrors.texi | 18 | ||||
-rw-r--r-- | configure.in | 2 | ||||
-rw-r--r-- | include/config-os2.h | 56 | ||||
-rw-r--r-- | include/sslopt-case.h | 4 | ||||
-rw-r--r-- | mysys/mf_tempfile.c | 4 | ||||
-rw-r--r-- | sql/field.h | 69 | ||||
-rw-r--r-- | sql/ha_myisam.h | 10 | ||||
-rw-r--r-- | sql/mysql_priv.h | 2 | ||||
-rw-r--r-- | sql/slave.h | 34 | ||||
-rw-r--r-- | sql/stacktrace.c | 6 | ||||
-rw-r--r-- | sql/structs.h | 4 | ||||
-rw-r--r-- | sql/time.cc | 40 |
14 files changed, 205 insertions, 193 deletions
diff --git a/BitKeeper/etc/logging_ok b/BitKeeper/etc/logging_ok index 6efacbf4998..f649231e247 100644 --- a/BitKeeper/etc/logging_ok +++ b/BitKeeper/etc/logging_ok @@ -70,3 +70,4 @@ zak@linux.local salle@geopard.(none) walrus@mysql.com zgreant@mysql.com +salle@geopard.online.bg diff --git a/Docs/manual.texi b/Docs/manual.texi index dc1ed45630c..83531aaab47 100644 --- a/Docs/manual.texi +++ b/Docs/manual.texi @@ -1097,11 +1097,9 @@ as a training partner, please visit the training section at @uref{http://www.mysql.com/training/} or contact us at: @email{training@@mysql.com}. -We plan to release the @code{MySQL Certification Program} in 2002. For -details see @uref{http://www.mysql.com/training/certification.html}. -If you would like to be kept informed about the -@code{MySQL Certification Program}, -please e-mail @email{certification@@mysql.com}. +The @code{MySQL Certification Program} is being released in the second +half of 2002. For details please see +@uref{http://www.mysql.com/training/certification.html}. @node Business Services Consulting, Business Services Commercial licenses, Business Services Training, MySQL AB business model and services @@ -1222,9 +1220,6 @@ training staff at @email{training@@mysql.com}. For information on the @code{MySQL Certification Program}, please see @uref{http://www.mysql.com/training/certification.html}. -If you would like to be kept informed about the -@code{MySQL Certification Program}, please e-mail -@email{certification@@mysql.com}. @xref{Business Services Training}. If you're interested in consulting, please visit the consulting @@ -5653,26 +5648,12 @@ see @ref{Windows}. Check the MySQL homepage (@uref{http://www.mysql.com/}) for information about the current version and for downloading instructions. -Our main download mirror is located at: - -@uref{http://mirrors.sunsite.dk/mysql/} - -If you are interested in becoming a MySQL mirror site, you may -anonymously rsync with: @code{rsync://sunsite.dk/mysql/}. Please -send e-mail to @email{webmaster@@mysql.com} notifying us of your mirror to be -added to the following list. - -If you have problems downloading from our main site, try using one of the -following mirrors. +Our main mirror is located at @uref{http://mirrors.sunsite.dk/mysql/}. -Please report bad or out-of-date mirrors to @email{webmaster@@mysql.com}. - -@c START_OF_MIRROR_LISTING - -@c Mirrors list is created by PHP script (that really needs to be documented!) from database (tfr@mysql.com) -@include mirrors.texi - -@c END_OF_MIRROR_LISTING +For a complete upto-date list of MySQL web/download mirrors, see +@uref{http://www.mysql.com/downloads/mirrors.html}. +There you will also find information about becoming a MySQL mirror +site and how to report a bad or out-of-date mirror. @node Which OS, Which version, Getting MySQL, General Installation Issues @@ -7012,17 +6993,17 @@ You will need GNU @code{autoconf 2.52}, @code{automake 1.4}, @code{automake} (1.5) doesn't yet work. -If you get some strange error during this stage, check that you really -have @code{libtool} installed! - @example -shell> cd mysql -shell> bk -r edit +shell> cd mysql-4.0 +shell> bk -r get -Sq shell> aclocal; autoheader; autoconf; automake; shell> ./configure # Add your favorite options here shell> make @end example +If you get some strange error during this stage, check that you really +have @code{libtool} installed! + A collection of our standard configure scripts is located in the @file{BUILD/} subdirectory. If you are lazy, you can use @file{BUILD/compile-pentium-debug}. To compile on a different architecture, @@ -8165,7 +8146,7 @@ should check if you need some of the new grants that you didn't need before. In particular, you will need @code{REPLICATION SLAVE} (instead of @code{FILE}) for new slaves. @item -@code{DOUBLE} and @code{FLOAT} columns are now honoring the +@code{DOUBLE} and @code{FLOAT} columns now honour the @code{UNSIGNED} flag on storage (before, @code{UNSIGNED} was ignored for these columns). @item @@ -22199,8 +22180,6 @@ Monty 1 row in set (0.09 sec) @end example -@itemize @bullet -@item For logging, you can use the @code{tee} option. The @code{tee} can be started with option @code{--tee=...}, or from the command-line interactively with command @code{tee}. All the data displayed on the @@ -22212,7 +22191,6 @@ used. Note that @code{tee} will flush the results into the file after each command, just before the command-line appears again waiting for the next command. -@item Browsing, or searching the results in the interactive mode in Unix less, more, or any other similar program, is now possible with option @code{--pager[=...]}. Without argument, @code{mysql} client will look @@ -22227,8 +22205,10 @@ the popen() function, which doesn't exist in Windows. In Windows, the @code{tee} option can be used instead, although it may not be as handy as @code{pager} can be in some situations. +A few tips about @code{pager}: +@itemize @bullet @item -A few tips about @code{pager}: You can use it to write to a file: +You can use it to write to a file: @example mysql> pager cat > /tmp/log.txt @end example @@ -22237,6 +22217,8 @@ for the programs that you want to use with the @code{pager}: @example mysql> pager less -n -i -S @end example + +@item From the above do note the option '-S'. You may find it very useful when browsing the results; try the option with horizontal output (end commands with '\g', or ';') and with vertical output (end commands with @@ -22248,8 +22230,7 @@ readable. You can swith the mode between on and off within the interactive less with '-S'. See the 'h' for more help about less. @item -Last (unless you already understood this from the above examples ;) you -can combine very complex ways to handle the results, for example the +You can combine very complex ways to handle the results, for example the following would send the results to two files in two different directories, on two different hard-disks mounted on /dr1 and /dr2, yet let the results still be seen on the screen via less: @@ -22258,7 +22239,8 @@ mysql> pager cat | tee /dr1/tmp/res.txt | \ tee /dr2/tmp/res2.txt | less -n -i -S @end example -@item +@end itemize + You can also combine the two functions above; have the @code{tee} enabled, @code{pager} set to 'less' and you will be able to browse the results in unix 'less' and still have everything appended into a file @@ -22270,10 +22252,10 @@ on the screen, where the Unix @code{tee} used with @code{pager} doesn't log quite that much. Last, but not least, the interactive @code{tee} is more handy to switch on and off, when you want to log something into a file, but want to be able to turn the feature off sometimes. -@end itemize @cindex @code{prompt} command -You can change the prompt in the @code{mysql} command-line client. +From MySQL version 4.0.2 it is possible to change the prompt in the +@code{mysql} command-line client. You can use the following prompt options: @c FIX these columnfractions have NOT been measured! @@ -23554,12 +23536,23 @@ logging on the master. If you start your slaves with data that doesn't agree with what was on the master @strong{when the binary log was started}, your slaves may fail. -Starting in 4.0.0, one can use @code{LOAD DATA FROM MASTER} to set up -a slave. Note that 4.0.0 slaves cannot communicate with 3.23 masters, but 4.0.1 -and later version slaves can. 3.23 slave cannot talk to 4.0 master. +Please see the following table for an indication of master-slave +compatibility between different versions. With regard to version 4.0, +we recommend using same version on both sides. + +@c FIX arjen 2002-07-17 new table, not yet measured for XML/DocBook. +@multitable @columnfractions .10 .15 .15 .10 .10 .10 +@item @tab @tab @strong{Master} @tab @strong{Master} @tab @strong{Master} @tab @strong{Master} +@item @tab @tab @strong{3.23.33 and up} @tab @strong{4.0.0} @tab @strong{4.0.1} @tab @strong{4.0.2} +@item @strong{Slave} @tab @strong{3.23.33 and up} @tab yes @tab no @tab no @tab no +@item @strong{Slave} @tab @strong{4.0.0} @tab no @tab yes @tab no @tab no +@item @strong{Slave} @tab @strong{4.0.1} @tab yes @tab no @tab yes @tab no +@item @strong{Slave} @tab @strong{4.0.2} @tab yes @tab no @tab no @tab yes +@end multitable -You must also be aware that @code{LOAD DATA FROM MASTER} currently works only -if all the tables on the master are @code{MyISAM} type, and will acuire a +Starting from 4.0.0, one can use @code{LOAD DATA FROM MASTER} to set up +a slave. Be aware that @code{LOAD DATA FROM MASTER} currently works only +if all the tables on the master are @code{MyISAM} type, and will acquire a global read lock, so no writes are possible while the tables are being transferred from the master. This limitation is of a temporary nature, and is due to the fact that we have not yet implemented hot lock-free table backup. @@ -33787,6 +33780,13 @@ The offset of the initial row is 0 (not 1): mysql> SELECT * FROM table LIMIT 5,10; # Retrieve rows 6-15 @end example +To retrieve all rows from a certain offset upto the end of the result set, +you can use -1 for the second parameter: + +@example +mysql> SELECT * FROM table LIMIT 95,-1; # Retrieve rows 96-last. +@end example + If one argument is given, it indicates the maximum number of rows to return: @example @@ -38231,23 +38231,23 @@ Also the small archived InnoDB log file [mysqld] # You can write your other MySQL server options here # ... -# Data file(s) must be able to -# hold your data and indexes. -# Make sure you have enough -# free disk space. +# Data file(s) must be able to +# hold your data and indexes. +# Make sure you have enough +# free disk space. innodb_data_file_path = ibdata1:10M:autoextend -# Set buffer pool size to -# 50 - 80 % of your computer's -# memory +# Set buffer pool size to +# 50 - 80 % of your computer's +# memory set-variable = innodb_buffer_pool_size=70M set-variable = innodb_additional_mem_pool_size=10M -# Set the log file size to about -# 25 % of the buffer pool size +# Set the log file size to about +# 25 % of the buffer pool size set-variable = innodb_log_file_size=20M set-variable = innodb_log_buffer_size=8M -# Set ..flush_log_at_trx_commit -# to 0 if you can afford losing -# some last transactions +# Set ..flush_log_at_trx_commit +# to 0 if you can afford losing +# some last transactions innodb_flush_log_at_trx_commit=1 @end example @@ -38325,28 +38325,28 @@ have to create them yourself.} Use the Unix or MS-DOS # You can write your other MySQL server options here # ... innodb_data_home_dir = -# Data files must be able to -# hold your data and indexes +# Data files must be able to +# hold your data and indexes innodb_data_file_path = /ibdata/ibdata1:2000M;/dr2/ibdata/ibdata2:2000M:autoextend -# Set buffer pool size to -# 50 - 80 % of your computer's -# memory, but make sure on Linux -# x86 total memory usage is -# < 2 GB +# Set buffer pool size to +# 50 - 80 % of your computer's +# memory, but make sure on Linux +# x86 total memory usage is +# < 2 GB set-variable = innodb_buffer_pool_size=1G set-variable = innodb_additional_mem_pool_size=20M innodb_log_group_home_dir = /dr3/iblogs -# .._log_arch_dir must be the same -# as .._log_group_home_dir +# .._log_arch_dir must be the same +# as .._log_group_home_dir innodb_log_arch_dir = /dr3/iblogs set-variable = innodb_log_files_in_group=3 -# Set the log file size to about -# 15 % of the buffer pool size +# Set the log file size to about +# 15 % of the buffer pool size set-variable = innodb_log_file_size=150M set-variable = innodb_log_buffer_size=8M -# Set ..flush_log_at_trx_commit to -# 0 if you can afford losing -# some last transactions +# Set ..flush_log_at_trx_commit to +# 0 if you can afford losing +# some last transactions innodb_flush_log_at_trx_commit=1 set-variable = innodb_lock_wait_timeout=50 #innodb_flush_method=fdatasync @@ -49652,6 +49652,8 @@ find on the MySQL download page (@uref{http://www.mysql.com/downloads/}), this means that the version has not yet been released! +@c Please don't add a new version here without also updating ../configure.in! + @menu * News-4.0.x:: Changes in release 4.0.x (Development; Alpha) * News-3.23.x:: Changes in release 3.23.x (Stable) diff --git a/Docs/mirrors.texi b/Docs/mirrors.texi index d42696af88d..651963c57c3 100644 --- a/Docs/mirrors.texi +++ b/Docs/mirrors.texi @@ -41,6 +41,10 @@ WWW (@uref{http://www.mysql.cz/}) WWW (@uref{http://mysql.borsen.dk/}) @item +@image{Flags/denmark} Denmark [Cybercity Internet] @@ +WWW (@uref{http://mysql.mirrors.cybercity.dk/}) + +@item @image{Flags/denmark} Denmark [SunSITE] @@ WWW (@uref{http://mirrors.sunsite.dk/mysql/}) FTP (@uref{ftp://sunsite.dk/mirrors/mysql/}) @@ -54,6 +58,10 @@ WWW (@uref{http://mysql.mirror.ok.ee/}) WWW (@uref{http://mysql.kpnqwest.fi/}) @item +@image{Flags/finland} Finland [Mediatraffic] @@ +WWW (@uref{http://mysql.mediatraffic.fi/}) + +@item @image{Flags/finland} Finland [tonnikala.net] @@ WWW (@uref{http://mysql.tonnikala.org/}) @@ -222,6 +230,10 @@ FTP (@uref{ftp://sunsite.cnlab-switch.ch/mirror/mysql/}) WWW (@uref{http://mysql.progen.com.tr/}) @item +@image{Flags/turkey} Turkey [Turkish National Academic Network & Information Center] @@ +WWW (@uref{http://mysql.ulak.net.tr/}) + +@item @image{Flags/great-britain} UK [PLiG/UK] @@ WWW (@uref{http://ftp.plig.org/pub/mysql/}) FTP (@uref{ftp://ftp.plig.org/pub/mysql/}) @@ -391,7 +403,7 @@ WWW (@uref{http://mysql.webiiz.com/}) @item @image{Flags/taiwan} Taiwan [I-SHOU University] @@ -WWW (@uref{http://mysql.isu.edu.tw}) +WWW (@uref{http://mysql.isu.edu.tw/}) @item @image{Flags/taiwan} Taiwan [nctu.edu/HsinChu] @@ @@ -427,10 +439,6 @@ WWW (@uref{http://mysql.soa.co.nz/}) @itemize @bullet @item -@image{Flags/south-africa} South African Republic [Mweb] @@ -WWW (@uref{http://www.mysql.mweb.co.za/}) - -@item @image{Flags/south-africa} South African Republic [The Internet Solution/Johannesburg] @@ FTP (@uref{ftp://ftp.is.co.za/linux/mysql/}) diff --git a/configure.in b/configure.in index 90ee62059e6..1488303e565 100644 --- a/configure.in +++ b/configure.in @@ -4,7 +4,7 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(sql/mysqld.cc) AC_CANONICAL_SYSTEM # The Docs Makefile.am parses this line! -AM_INIT_AUTOMAKE(mysql, 4.0.2-alpha) +AM_INIT_AUTOMAKE(mysql, 4.0.3-alpha) AM_CONFIG_HEADER(config.h) PROTOCOL_VERSION=10 diff --git a/include/config-os2.h b/include/config-os2.h index 9064cd5a5bb..2554cfd8495 100644 --- a/include/config-os2.h +++ b/include/config-os2.h @@ -64,10 +64,10 @@ #define NO_FCNTL_NONBLOCK #define EFBIG E2BIG -//#define ENFILE EMFILE -//#define ENAMETOOLONG (EOS2ERR+2) -//#define ETIMEDOUT 145 -//#define EPIPE 146 +/*#define ENFILE EMFILE */ +/*#define ENAMETOOLONG (EOS2ERR+2) */ +/*#define ETIMEDOUT 145 */ +/*#define EPIPE 146 */ #define EROFS 147 #define sleep(A) DosSleep((A)*1000) @@ -129,7 +129,7 @@ typedef unsigned long long os_off_t; #define HAVE_ALLOCA 1 /* Define if you have <alloca.h> and it should be used (not on Ultrix). */ -//#define HAVE_ALLOCA_H 1 +/* #define HAVE_ALLOCA_H 1 */ /* Define if you don't have vprintf but do have _doprnt. */ /* #undef HAVE_DOPRNT */ @@ -145,7 +145,7 @@ typedef unsigned long long os_off_t; #define HAVE_ST_RDEV 1 /* Define if you have <sys/wait.h> that is POSIX.1 compatible. */ -//#define HAVE_SYS_WAIT_H 1 +/* #define HAVE_SYS_WAIT_H 1 */ /* Define if you don't have tm_zone but do have the external array tzname. */ @@ -216,7 +216,7 @@ typedef unsigned long long os_off_t; #define HAVE_BOOL 1 /* Have berkeley db installed */ -//#define HAVE_BERKELEY_DB 1 +/* #define HAVE_BERKELEY_DB 1 */ /* DSB style signals ? */ /* #undef HAVE_BSD_SIGNALS */ @@ -395,7 +395,7 @@ typedef unsigned long long os_off_t; #define HAVE_CHSIZE 1 /* Define if you have the cuserid function. */ -//#define HAVE_CUSERID 1 +/* #define HAVE_CUSERID 1 */ /* Define if you have the dlerror function. */ #define HAVE_DLERROR 1 @@ -407,7 +407,7 @@ typedef unsigned long long os_off_t; /* #undef HAVE_FCHMOD */ /* Define if you have the fcntl function. */ -//#define HAVE_FCNTL 1 +/* #define HAVE_FCNTL 1 */ /* Define if you have the fconvert function. */ /* #undef HAVE_FCONVERT */ @@ -425,7 +425,7 @@ typedef unsigned long long os_off_t; /* #undef HAVE_FSEEKO */ /* Define if you have the ftruncate function. */ -//#define HAVE_FTRUNCATE 1 +/* #define HAVE_FTRUNCATE 1 */ /* Define if you have the getcwd function. */ #define HAVE_GETCWD 1 @@ -440,16 +440,16 @@ typedef unsigned long long os_off_t; #define HAVE_GETPAGESIZE 1 /* Define if you have the getpass function. */ -//#define HAVE_GETPASS 1 +/*#define HAVE_GETPASS 1 */ /* Define if you have the getpassphrase function. */ /* #undef HAVE_GETPASSPHRASE */ /* Define if you have the getpwnam function. */ -//#define HAVE_GETPWNAM 1 +/* #define HAVE_GETPWNAM 1 */ /* Define if you have the getpwuid function. */ -//#define HAVE_GETPWUID 1 +/* #define HAVE_GETPWUID 1 */ /* Define if you have the getrlimit function. */ /* #undef HAVE_GETRLIMIT */ @@ -491,7 +491,7 @@ typedef unsigned long long os_off_t; #define HAVE_MEMMOVE 1 /* Define if you have the mkstemp function. */ -//#define HAVE_MKSTEMP 1 +/* #define HAVE_MKSTEMP 1 */ /* Define if you have the mlockall function. */ /* #undef HAVE_MLOCKALL */ @@ -581,7 +581,7 @@ typedef unsigned long long os_off_t; /* #undef HAVE_SIGTHREADMASK */ /* Define if you have the snprintf function. */ -//#define HAVE_SNPRINTF 1 +/* #define HAVE_SNPRINTF 1 */ /* Define if you have the socket function. */ #define HAVE_SOCKET 1 @@ -635,7 +635,7 @@ typedef unsigned long long os_off_t; /* #undef HAVE_VIDATTR */ /* Define if you have the <alloca.h> header file. */ -//#define HAVE_ALLOCA_H 1 +/* #define HAVE_ALLOCA_H 1 */ /* Define if you have the <arpa/inet.h> header file. */ #define HAVE_ARPA_INET_H 1 @@ -647,10 +647,10 @@ typedef unsigned long long os_off_t; #define HAVE_CRYPT_H 1 /* Define if you have the <curses.h> header file. */ -//#define HAVE_CURSES_H 1 +/* #define HAVE_CURSES_H 1 */ /* Define if you have the <dirent.h> header file. */ -//#define HAVE_DIRENT_H 1 +/* #define HAVE_DIRENT_H 1 */ /* Define if you have the <fcntl.h> header file. */ #define HAVE_FCNTL_H 1 @@ -662,7 +662,7 @@ typedef unsigned long long os_off_t; /* #undef HAVE_FLOATINGPOINT_H */ /* Define if you have the <grp.h> header file. */ -//#define HAVE_GRP_H 1 +/* #define HAVE_GRP_H 1 */ /* Define if you have the <ieeefp.h> header file. */ /* #undef HAVE_IEEEFP_H */ @@ -686,7 +686,7 @@ typedef unsigned long long os_off_t; /* #undef HAVE_PATHS_H */ /* Define if you have the <pwd.h> header file. */ -//#define HAVE_PWD_H 1 +/* #define HAVE_PWD_H 1 */ /* Define if you have the <sched.h> header file. */ /* #undef HAVE_SCHED_H */ @@ -707,16 +707,16 @@ typedef unsigned long long os_off_t; #define HAVE_STRING_H 1 /* Define if you have the <strings.h> header file. */ -//#define HAVE_STRINGS_H 1 +/* #define HAVE_STRINGS_H 1 */ /* Define if you have the <synch.h> header file. */ /* #undef HAVE_SYNCH_H */ /* Define if you have the <sys/dir.h> header file. */ -//#define HAVE_SYS_DIR_H 1 +/* #define HAVE_SYS_DIR_H 1 */ /* Define if you have the <sys/file.h> header file. */ -//#define HAVE_SYS_FILE_H 1 +/* #define HAVE_SYS_FILE_H 1 */ /* Define if you have the <sys/ioctl.h> header file. */ #define HAVE_SYS_IOCTL_H 1 @@ -758,7 +758,7 @@ typedef unsigned long long os_off_t; /* #undef HAVE_SYS_VADVISE_H */ /* Define if you have the <sys/wait.h> header file. */ -//#define HAVE_SYS_WAIT_H 1 +/* #define HAVE_SYS_WAIT_H 1 */ /* Define if you have the <term.h> header file. */ /* #undef HAVE_TERM_H */ @@ -767,13 +767,13 @@ typedef unsigned long long os_off_t; /* #undef HAVE_TERMBITS_H */ /* Define if you have the <termcap.h> header file. */ -//#define HAVE_TERMCAP_H 1 +/* #define HAVE_TERMCAP_H 1 */ /* Define if you have the <termio.h> header file. */ -//#define HAVE_TERMIO_H 1 +/* /#define HAVE_TERMIO_H 1 */ /* Define if you have the <termios.h> header file. */ -//#define HAVE_TERMIOS_H 1 +/* #define HAVE_TERMIOS_H 1 */ /* Define if you have the <unistd.h> header file. */ #define HAVE_UNISTD_H 1 @@ -826,4 +826,4 @@ typedef unsigned long long os_off_t; /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ -#endif // __CONFIG_OS2_H__ +#endif /* __CONFIG_OS2_H__ */ diff --git a/include/sslopt-case.h b/include/sslopt-case.h index e6e3a416bb0..331c9a307f1 100644 --- a/include/sslopt-case.h +++ b/include/sslopt-case.h @@ -20,8 +20,8 @@ break; case OPT_SSL_KEY: opt_use_ssl = 1; /* true */ -//QQ to be removed??? my_free(opt_ssl_key, MYF(MY_ALLOW_ZERO_PTR)); -//QQ to be removed??? opt_ssl_key = my_strdup(optarg, MYF(0)); +/* QQ to be removed??? my_free(opt_ssl_key, MYF(MY_ALLOW_ZERO_PTR)); */ +/* QQ to be removed??? opt_ssl_key = my_strdup(optarg, MYF(0)); */ break; case OPT_SSL_CERT: opt_use_ssl = 1; /* true */ diff --git a/mysys/mf_tempfile.c b/mysys/mf_tempfile.c index 86e43e5b6fc..09fde27afd6 100644 --- a/mysys/mf_tempfile.c +++ b/mysys/mf_tempfile.c @@ -122,10 +122,10 @@ File create_temp_file(char *to, const char *dir, const char *prefix, dir=to; } #ifdef OS2 - // changing environ variable doesn't work with VACPP + /* changing environ variable doesn't work with VACPP */ char buffer[256]; sprintf( buffer, "TMP=%s", dir); - // remove ending backslash + /* remove ending backslash */ if (buffer[strlen(buffer)-1] == '\\') buffer[strlen(buffer)-1] = '\0'; putenv( buffer); diff --git a/sql/field.h b/sql/field.h index c795cbac974..69d1fbc826f 100644 --- a/sql/field.h +++ b/sql/field.h @@ -37,20 +37,20 @@ public: static void *operator new(size_t size) {return (void*) sql_alloc((uint) size); } static void operator delete(void *ptr_arg, size_t size) {} /*lint -e715 */ - char *ptr; // Position to field in record - uchar *null_ptr; // Byte where null_bit is - struct st_table *table; // Pointer for table + char *ptr; /* Position to field in record */ + uchar *null_ptr; /* Byte where null_bit is */ + struct st_table *table; /* Pointer for table */ const char *table_name,*field_name; - ulong query_id; // For quick test of used fields - // Field is part of the following keys + ulong query_id; /* For quick test of used fields */ + /* Field is part of the following keys */ key_map key_start,part_of_key,part_of_sortkey; enum utype { NONE,DATE,SHIELD,NOEMPTY,CASEUP,PNR,BGNR,PGNR,YES,NO,REL, CHECK,EMPTY,UNKNOWN_FIELD,CASEDN,NEXT_NUMBER,INTERVAL_FIELD, BIT_FIELD, TIMESTAMP_FIELD,CAPITALIZE,BLOB_FIELD}; utype unireg_check; - uint32 field_length; // Length of field + uint32 field_length; /* Length of field */ uint16 flags; - uchar null_bit; // Bit used to test null bit + uchar null_bit; /* Bit used to test null bit */ Field(char *ptr_arg,uint32 length_arg,uchar *null_ptr_arg,uchar null_bit_arg, utype unireg_check_arg, const char *field_name_arg, @@ -90,11 +90,12 @@ public: { return cmp(ptr,(char*) str); } virtual uint decimals() const { return 0; } virtual void sql_type(String &str) const =0; - // Caller beware: sql_type can change str.Ptr, so check - // ptr() to see if it changed if you are using your own buffer - // in str and restore it with set() if needed - - virtual uint size_of() const =0; // For new field + /* + Caller beware: sql_type can change str.Ptr, so check + ptr() to see if it changed if you are using your own buffer + in str and restore it with set() if needed + */ + virtual uint size_of() const =0; /* For new field */ inline bool is_null(uint row_offset=0) { return null_ptr ? (null_ptr[row_offset] & null_bit ? 1 : 0) : table->null_row; } inline bool is_real_null(uint row_offset=0) @@ -186,7 +187,7 @@ public: { return cmp(a,b); } virtual int pack_cmp(const char *b, uint key_length_arg) { return cmp(ptr,b); } - uint offset(); // Should be inline ... + uint offset(); /* Should be inline ... */ void copy_from_tmp(int offset); uint fill_cache_field(struct st_cache_field *copy); virtual bool get_date(TIME *ltime,bool fuzzydate); @@ -211,7 +212,7 @@ public: class Field_num :public Field { public: const uint8 dec; - bool zerofill,unsigned_flag; // Purify cannot handle bit fields + bool zerofill,unsigned_flag; /* Purify cannot handle bit fields */ Field_num(char *ptr_arg,uint32 len_arg, uchar *null_ptr_arg, uchar null_bit_arg, utype unireg_check_arg, const char *field_name_arg, @@ -823,7 +824,7 @@ public: class Field_blob :public Field_str { uint packlength; - String value; // For temporaries + String value; /* For temporaries */ bool binary_flag; public: Field_blob(char *ptr_arg, uchar *null_ptr_arg, uchar null_bit_arg, @@ -975,23 +976,23 @@ public: /* -** Create field class for CREATE TABLE + Create field class for CREATE TABLE */ class create_field :public Sql_alloc { public: const char *field_name; - const char *change; // If done with alter table - const char *after; // Put column after this one - Item *def; // Default value + const char *change; /* If done with alter table */ + const char *after; /* Put column after this one */ + Item *def; /* Default value */ enum enum_field_types sql_type; uint32 length; uint decimals,flags,pack_length; Field::utype unireg_check; - TYPELIB *interval; // Which interval to use - Field *field; // For alter table + TYPELIB *interval; /* Which interval to use */ + Field *field; /* For alter table */ - uint8 row,col,sc_length,interval_id; // For rea_create_table + uint8 row,col,sc_length,interval_id; /* For rea_create_table */ uint offset,pack_flag; create_field() :after(0) {} create_field(Field *field, Field *orig_field); @@ -999,7 +1000,7 @@ public: /* -** A class for sending info to the client + A class for sending info to the client */ class Send_field { @@ -1024,14 +1025,14 @@ public: uint from_bit,to_bit; uint from_length,to_length; Field *from_field,*to_field; - String tmp; // For items + String tmp; /* For items */ Copy_field() {} ~Copy_field() {} - void set(Field *to,Field *from,bool save); // Field to field - void set(char *to,Field *from); // Field to string + void set(Field *to,Field *from,bool save); /* Field to field */ + void set(char *to,Field *from); /* Field to string */ void (*do_copy)(Copy_field *); - void (*do_copy2)(Copy_field *); // Used to handle null values + void (*do_copy2)(Copy_field *); /* Used to handle null values */ }; @@ -1052,18 +1053,18 @@ bool test_if_int(const char *str,int length); */ #define FIELDFLAG_DECIMAL 1 -#define FIELDFLAG_BINARY 1 // Shares same flag +#define FIELDFLAG_BINARY 1 /*Shares same flag */ #define FIELDFLAG_NUMBER 2 #define FIELDFLAG_ZEROFILL 4 -#define FIELDFLAG_PACK 120 // Bits used for packing +#define FIELDFLAG_PACK 120 /* Bits used for packing */ #define FIELDFLAG_INTERVAL 256 -#define FIELDFLAG_BITFIELD 512 // mangled with dec! -#define FIELDFLAG_BLOB 1024 // mangled with dec! +#define FIELDFLAG_BITFIELD 512 /* mangled with dec! */ +#define FIELDFLAG_BLOB 1024 /* mangled with dec! */ #define FIELDFLAG_LEFT_FULLSCREEN 8192 #define FIELDFLAG_RIGHT_FULLSCREEN 16384 -#define FIELDFLAG_FORMAT_NUMBER 16384 // predit: ###,,## in output -#define FIELDFLAG_SUM ((uint) 32768)// predit: +#fieldflag -#define FIELDFLAG_MAYBE_NULL ((uint) 32768)// sql +#define FIELDFLAG_FORMAT_NUMBER 16384 /* predit: ###,,## in output */ +#define FIELDFLAG_SUM ((uint) 32768)/* predit: +#fieldflag */ +#define FIELDFLAG_MAYBE_NULL ((uint) 32768)/* sql */ #define FIELDFLAG_PACK_SHIFT 3 #define FIELDFLAG_DEC_SHIFT 8 #define FIELDFLAG_MAX_DEC 31 diff --git a/sql/ha_myisam.h b/sql/ha_myisam.h index e7f426bb76c..d70f3f11d4e 100644 --- a/sql/ha_myisam.h +++ b/sql/ha_myisam.h @@ -24,11 +24,11 @@ #include <myisam.h> #include <ft_global.h> -#define HA_RECOVER_NONE 0 // No automatic recover -#define HA_RECOVER_DEFAULT 1 // Automatic recover active -#define HA_RECOVER_BACKUP 2 // Make a backupfile on recover -#define HA_RECOVER_FORCE 4 // Recover even if we loose rows -#define HA_RECOVER_QUICK 8 // Don't check rows in data file +#define HA_RECOVER_NONE 0 /* No automatic recover */ +#define HA_RECOVER_DEFAULT 1 /* Automatic recover active */ +#define HA_RECOVER_BACKUP 2 /* Make a backupfile on recover */ +#define HA_RECOVER_FORCE 4 /* Recover even if we loose rows */ +#define HA_RECOVER_QUICK 8 /* Don't check rows in data file */ extern ulong myisam_sort_buffer_size; extern TYPELIB myisam_recover_typelib; diff --git a/sql/mysql_priv.h b/sql/mysql_priv.h index 1ac3fed5721..2e2dce4a33c 100644 --- a/sql/mysql_priv.h +++ b/sql/mysql_priv.h @@ -29,7 +29,7 @@ #include <my_bitmap.h> #ifdef __EMX__ -#undef write // remove pthread.h macro definition for EMX +#undef write /* remove pthread.h macro definition for EMX */ #endif typedef ulong table_map; /* Used for table bits in join */ diff --git a/sql/slave.h b/sql/slave.h index 8657566654a..36849c884e9 100644 --- a/sql/slave.h +++ b/sql/slave.h @@ -77,11 +77,11 @@ typedef struct st_relay_log_info cur_log_fd - file descriptor of the current read relay log */ File info_fd,cur_log_fd; - // name of current read relay log + /* name of current read relay log */ char relay_log_name[FN_REFLEN]; - // master log name corresponding to current read position + /* master log name corresponding to current read position */ char master_log_name[FN_REFLEN]; - // original log position of last processed event + /* original log position of last processed event */ volatile my_off_t master_log_pos; /* @@ -92,9 +92,9 @@ typedef struct st_relay_log_info LOG_INFO linfo; IO_CACHE cache_buf,*cur_log; - /*** The following variables are safe to read any time ***/ + /* The following variables are safe to read any time */ - // IO_CACHE of the info file - set only during init or end + /* IO_CACHE of the info file - set only during init or end */ IO_CACHE info_file; /* @@ -117,7 +117,7 @@ typedef struct st_relay_log_info */ pthread_cond_t start_cond, stop_cond, data_cond; - // parent master info structure + /* parent master info structure */ struct st_master_info *mi; /* @@ -153,7 +153,7 @@ typedef struct st_relay_log_info #endif char last_slave_error[MAX_SLAVE_ERRMSG]; - // if not set, the value of other members of the structure are undefined + /* if not set, the value of other members of the structure are undefined */ bool inited; volatile bool abort_slave, slave_running; bool log_pos_current; @@ -189,7 +189,7 @@ typedef struct st_relay_log_info { pending += val; } - // TODO: this probably needs to be fixed + /* TODO: this probably needs to be fixed */ inline void inc_pos(ulonglong val, ulonglong log_pos, bool skip_lock=0) { if (!skip_lock) @@ -254,7 +254,7 @@ typedef struct st_master_info File fd; IO_CACHE file; - // the variables below are needed because we can change masters on the fly + /* the variables below are needed because we can change masters on the fly */ char host[HOSTNAME_LENGTH+1]; char user[USERNAME_LENGTH+1]; char password[HASH_PASSWORD_LENGTH+1]; @@ -262,7 +262,7 @@ typedef struct st_master_info pthread_cond_t data_cond,start_cond,stop_cond; THD *io_thd; MYSQL* mysql; - uint32 file_id; // for 3.23 load data infile + uint32 file_id; /* for 3.23 load data infile */ RELAY_LOG_INFO rli; uint port; uint connect_retry; @@ -270,7 +270,7 @@ typedef struct st_master_info int events_till_abort; #endif bool inited; - bool old_format; // master binlog is in 3.23 format + bool old_format; /* master binlog is in 3.23 format */ volatile bool abort_slave, slave_running; bool ignore_stop_event; @@ -352,18 +352,18 @@ int start_slave_thread(pthread_handler h_func, pthread_mutex_t* start_lock, volatile bool* slave_running, MASTER_INFO* mi); -// If fd is -1, dump to NET +/* If fd is -1, dump to NET */ int mysql_table_dump(THD* thd, const char* db, const char* tbl_name, int fd = -1); -// retrieve non-exitent table from master +/* retrieve non-exitent table from master */ int fetch_master_table(THD* thd, const char* db_name, const char* table_name, MASTER_INFO* mi, MYSQL* mysql); int show_master_info(THD* thd, MASTER_INFO* mi); int show_binlog_info(THD* thd); -// See if the query uses any tables that should not be replicated +/* See if the query uses any tables that should not be replicated */ int tables_ok(THD* thd, TABLE_LIST* tables); /* @@ -382,7 +382,7 @@ int check_expected_error(THD* thd, RELAY_LOG_INFO* rli, int error_code); void skip_load_data_infile(NET* net); void slave_print_error(RELAY_LOG_INFO* rli,int err_code, const char* msg, ...); -void end_slave(); // clean up +void end_slave(); /* clean up */ int init_master_info(MASTER_INFO* mi, const char* master_info_fname, const char* slave_info_fname); void end_master_info(MASTER_INFO* mi); @@ -400,7 +400,7 @@ extern bool opt_log_slave_updates ; pthread_handler_decl(handle_slave_io,arg); pthread_handler_decl(handle_slave_sql,arg); extern bool volatile abort_loop; -extern MASTER_INFO main_mi, *active_mi; // active_mi for multi-master +extern MASTER_INFO main_mi, *active_mi; /* active_mi for multi-master */ extern volatile int active_mi_in_use; extern LIST master_list; extern HASH replicate_do_table, replicate_ignore_table; @@ -411,7 +411,7 @@ extern bool table_rules_on; extern int disconnect_slave_event_count, abort_slave_event_count ; -// the master variables are defaults read from my.cnf or command line +/* the master variables are defaults read from my.cnf or command line */ extern uint master_port, master_connect_retry, report_port; extern my_string master_user, master_password, master_host, master_info_file, relay_log_info_file, report_user, report_host, diff --git a/sql/stacktrace.c b/sql/stacktrace.c index d86d65f567e..1aba73dda33 100644 --- a/sql/stacktrace.c +++ b/sql/stacktrace.c @@ -145,7 +145,7 @@ terribly wrong...\n"); fprintf(stderr, "Warning: Alpha stacks are difficult -\ will be taking some wild guesses, stack trace may be incorrect or \ terminate abruptly\n"); - // On Alpha, we need to get pc + /* On Alpha, we need to get pc */ __asm __volatile__ ("bsr %0, do_next; do_next: " :"=r"(pc) :"r"(pc)); @@ -210,8 +210,8 @@ resolve it\n"); void write_core(int sig) { signal(sig, SIG_DFL); - if (fork() != 0) exit(1); // Abort main program - // Core will be written at exit + if (fork() != 0) exit(1); /* Abort main program */ + /* Core will be written at exit */ } #else void write_core(int sig) diff --git a/sql/structs.h b/sql/structs.h index fde618caf4f..8014b3b27a3 100644 --- a/sql/structs.h +++ b/sql/structs.h @@ -50,14 +50,14 @@ typedef struct st_keyfile_info { /* used with ha_info() */ typedef struct st_key_part_info { /* Info about a key part */ Field *field; uint offset; /* offset in record (from 0) */ - uint null_offset; // Offset to null_bit in record + uint null_offset; /* Offset to null_bit in record */ uint16 length; /* Length of key_part */ uint16 store_length; uint16 key_type; uint16 fieldnr; /* Fieldnum in UNIREG */ uint8 key_part_flag; /* 0 or HA_REVERSE_SORT */ uint8 type; - uint8 null_bit; // Position to null_bit + uint8 null_bit; /* Position to null_bit */ } KEY_PART_INFO ; diff --git a/sql/time.cc b/sql/time.cc index 1597368908d..817469aa096 100644 --- a/sql/time.cc +++ b/sql/time.cc @@ -84,7 +84,7 @@ long my_gmt_sec(TIME *t) /* Get difference in days */ int days= t->day - l_time->tm_mday; if (days < -1) - days= 1; // Month has wrapped + days= 1; /* Month has wrapped */ else if (days > 1) days= -1; diff=(3600L*(long) (days*24+((int) t->hour - (int) l_time->tm_hour)) + @@ -100,15 +100,15 @@ long my_gmt_sec(TIME *t) { int days= t->day - l_time->tm_mday; if (days < -1) - days=1; // Month has wrapped + days=1; /* Month has wrapped */ else if (days > 1) days= -1; diff=(3600L*(long) (days*24+((int) t->hour - (int) l_time->tm_hour))+ (long) (60*((int) t->minute - (int) l_time->tm_min))); if (diff == 3600) - tmp+=3600 - t->minute*60 - t->second; // Move to next hour + tmp+=3600 - t->minute*60 - t->second; /* Move to next hour */ else if (diff == -3600) - tmp-=t->minute*60 + t->second; // Move to next hour + tmp-=t->minute*60 + t->second; /* Move to next hour */ } if ((my_time_zone >=0 ? my_time_zone: -my_time_zone) > 3600L*12) my_time_zone=0; /* Wrong date */ @@ -183,7 +183,7 @@ uint calc_week(TIME *l_time, bool with_year, bool sunday_first_day_of_week, /* Last week of the previous year */ if (!with_year) return 0; - with_year=0; // Don't check the week again + with_year=0; /* Don't check the week again */ (*year)--; first_daynr-= (days=calc_days_in_year(*year)); weekday= (weekday + 53*7- days) % 7; @@ -198,7 +198,7 @@ uint calc_week(TIME *l_time, bool with_year, bool sunday_first_day_of_week, /* Check if we are on the first week of the next year (or week 53) */ weekday= (weekday + calc_days_in_year(*year)) % 7; if (weekday < 4) - { // We are at first week on next year + { /* We are at first week on next year */ (*year)++; return 1; } @@ -434,7 +434,7 @@ str_to_TIME(const char *str, uint length, TIME *l_time,bool fuzzy_date) DBUG_ENTER("str_to_TIME"); DBUG_PRINT("enter",("str: %.*s",length,str)); - for (; str != end && !isdigit(*str) ; str++) ; // Skip garbage + for (; str != end && !isdigit(*str) ; str++) ; /* Skip garbage */ if (str == end) DBUG_RETURN(TIMESTAMP_NONE); /* @@ -456,18 +456,18 @@ str_to_TIME(const char *str, uint length, TIME *l_time,bool fuzzy_date) } date[i]=tmp_value; if (i == 2 && str != end && *str == 'T') - str++; // ISO8601: CCYYMMDDThhmmss - else if ( i != 5 ) // Skip inter-field delimiters + str++; /* ISO8601: CCYYMMDDThhmmss */ + else if ( i != 5 ) /* Skip inter-field delimiters */ { while (str != end && (ispunct(*str) || isspace(*str))) { - // Only allow space between days and hours + /* Only allow space between days and hours */ if (isspace(*str) && i != 2) DBUG_RETURN(TIMESTAMP_NONE); str++; } } - field_length=1; // Rest fields can only be 2 + field_length=1; /* Rest fields can only be 2 */ } /* Handle second fractions */ if (i == 6 && (uint) (end-str) >= 2 && *str == '.' && isdigit(str[1])) @@ -572,9 +572,9 @@ bool str_to_time(const char *str,uint length,TIME *l_time) /* Check first if this is a full TIMESTAMP */ if (length >= 12) - { // Probably full timestamp + { /* Probably full timestamp */ if (str_to_TIME(str,length,l_time,1) == TIMESTAMP_FULL) - return 0; // Was an ok timestamp + return 0; /* Was an ok timestamp */ } /* Not a timestamp. Try to get this as a DAYS_TO_SECOND string */ @@ -590,19 +590,19 @@ bool str_to_time(const char *str,uint length,TIME *l_time) LINT_INIT(state); found_days=found_hours=0; if ((uint) (end-str) > 1 && (*str == ' ' && isdigit(str[1]))) - { // days ! + { /* days ! */ date[0]=value; - state=1; // Assume next is hours + state=1; /* Assume next is hours */ found_days=1; - str++; // Skip space; + str++; /* Skip space; */ } else if ((end-str) > 1 && *str == ':' && isdigit(str[1])) { - date[0]=0; // Assume we found hours + date[0]=0; /* Assume we found hours */ date[1]=value; state=2; found_hours=1; - str++; // skip ':' + str++; /* skip ':' */ } else { @@ -623,11 +623,11 @@ bool str_to_time(const char *str,uint length,TIME *l_time) date[state++]=value; if (state == 4 || (end-str) < 2 || *str != ':' || !isdigit(str[1])) break; - str++; // Skip ':' + str++; /* Skip ':' */ } if (state != 4) - { // Not HH:MM:SS + { /* Not HH:MM:SS */ /* Fix the date to assume that seconds was given */ if (!found_hours && !found_days) { |