diff options
author | unknown <monty@donna.mysql.com> | 2000-08-18 17:38:57 +0300 |
---|---|---|
committer | unknown <monty@donna.mysql.com> | 2000-08-18 17:38:57 +0300 |
commit | 259c7ea0f84f25d82ec7b818e5b770f0bc7917d3 (patch) | |
tree | a407e69716564ef77bf47429757e05e7a5c4db89 | |
parent | 41814b70d62d28e676c0d5f3e1b577c228cafa48 (diff) | |
parent | 4fedb1208045966c545fd158a08638d19cc043c5 (diff) | |
download | mariadb-git-259c7ea0f84f25d82ec7b818e5b770f0bc7917d3.tar.gz |
Merge monty@work:/home/bk/mysql into donna.mysql.com:/home/my/bk/mysql
myisam/ft_eval.c:
Auto merged
-rw-r--r-- | Docs/manual.texi | 42 | ||||
-rw-r--r-- | myisam/ft_eval.c | 3 | ||||
-rw-r--r-- | myisam/mi_locking.c | 5 | ||||
-rw-r--r-- | myisam/myisamdef.h | 20 | ||||
-rw-r--r-- | myisam/myisampack.c | 2 |
5 files changed, 55 insertions, 17 deletions
diff --git a/Docs/manual.texi b/Docs/manual.texi index 0a1215ec791..13df8e1eda4 100644 --- a/Docs/manual.texi +++ b/Docs/manual.texi @@ -1826,7 +1826,7 @@ Apart from the following links, you can find and download a lot of @strong{MySQL} programs, tools and APIs from the @uref{http://www.mysql.com/Contrib/, Contrib directory}. -@subheading Tutorials +@subheading Tutorials and manuals @itemize @bullet @c just forwards to the devshed link below.. (jcole) @@ -1839,6 +1839,8 @@ Beginners @strong{MySQL} Tutorial on how to install and set up @item @uref{http://www.devshed.com/Server_Side/MySQL/, A lot of @strong{MySQL} tutorials} +@item @uref{http://mysql.hitstar.com/, MySQL manual in Chinise}. + @item @uref{http://www.linuxplanet.com/linuxplanet/tutorials/1046/1/, Setting Up a @strong{MySQL}-Based Website} @@ -1925,6 +1927,9 @@ A Win32 GUI client by David Ecker. @uref{http://www.icaap.org/software/kiosk/, Kiosk; a @strong{MySQL} client for database management}. Written in Perl. Will be a part of Bazaar. @item +@uref{http://home.skif.net/~voland/zeos/eng/index.html, Zeos client} +A client that supports @strong{MySQL}, Interbase and PostgreSQL. +@item @uref{http://www.geocities.com/SiliconValley/Ridge/4280/GenericReportWriter/grwhome.html, A free report writer in Java} @item @uref{http://www.javaframework.de,MySQLExport} @@ -2461,7 +2466,7 @@ carefully and make sure that all the information described here is included in your report. If you can make a test case which clearly shows the bug, you should post -it to the @email{bugs@@list.mysql.com} list. Note that on this list you +it to the @email{bugs@@lists.mysql.com} list. Note that on this list you should only post a full, repeatable bug report, using the @code{mysqlbug} script (if you are running on Windows, you should include a description of the operating system and the @strong{MySQL} version). @@ -5477,6 +5482,22 @@ you are probably using @code{gcc} (or using an old binary compiled with /usr/bin/perl: can't resolve symbol '__divdi3' @end example +If you get the following error from @code{Msql-Mysql-modules}, +when you run the tests: + +@example +t/00base............install_driver(mysql) failed: Can't load '../blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ../blib/arch/auto/DBD/mysql/mysql.so: undefined symbol: uncompress at /usr/lib/perl5/5.00503/i586-linux/DynaLoader.pm line 169. +@end example + +it means that you need to include the compression library, -lz, to the +link line. This can be done by changing the line: +$sysliblist .= " -lm"; +to +$sysliblist .= " -lm -lz"; +in file lib/DBD/mysql/Install.pm in the Msql-Mysql-modules directory. +After this, you MUST run 'make realclean' and then proceed with the +installation from the beginning. + Add @code{-L/usr/lib/gcc-lib/... -lgcc} to the link command when the @file{mysql.so} library gets built (check the output from @code{make} for @file{mysql.so} when you compile the Perl client). The @code{-L} option @@ -11618,7 +11639,7 @@ to restart @code{mysqld} with @code{--skip-grant-tables} to be able to run * DROP TABLE:: @code{DROP TABLE} syntax * OPTIMIZE TABLE:: @code{OPTIMIZE TABLE} syntax * CHECK TABLE:: @code{CHECK TABLE} syntax -* ANALYZE TABLE:: +* ANALYZE TABLE:: @code{ANALYZE TABLE} syntax * REPAIR TABLE:: @code{REPAIR TABLE} syntax * DELETE:: @code{DELETE} syntax * SELECT:: @code{SELECT} syntax @@ -16856,6 +16877,9 @@ The command returns a table with the following columns: You can check the stored key distribution with the @code{SHOW INDEX} command. @xref{SHOW DATABASE INFO}. +If the table hasn't changed since the last @code{ANALYZE TABLE} command, +the table will not be analyzed again. + @findex REPAIR TABLE @node REPAIR TABLE, DELETE, ANALYZE TABLE, Reference @section @code{REPAIR TABLE} syntax @@ -34517,7 +34541,7 @@ Python module with caching. By @email{gandalf@@rosmail.com}. @item @uref{http://www.mysql.com/Downloads/Contrib/MySQLmodule-1.4.tar.gz, MySQLmodule-1.4.tar.gz} Python interface for @strong{MySQL}. By Joseph Skinner @email{joe@@earthlight.co.nz}; Modified by Joerg Senekowitsch @email{senekow@@ibm.net} -@item @uref{http://www.mysql.com/Downloads/Contrib/mysql_mex_1_1.tar.gz, mysql_mex_1_1.tar.gz} +@item @uref{http://www.mysql.com/Downloads/Contrib/mysql_mex_1_1b.tar.gz, mysql_mex_1_1b.tar.gz} An interface program for the Matlab program by MathWorks. The interface is done by Kimmo Uutela and John Fisher (not by Mathworks). Check @uref{http://boojum.hut.fi/~kuutela/mysqlmex.html,mysqlmex.html} @@ -34594,7 +34618,7 @@ have still some bugs. you can test the program with all features. Please send bugs and hints to Marco Suess @email{ms@@it-netservice.de}. Original URL @url{http://www.it-netservice.de/pages/software/index.html}. -@item @uref{http://www.mysql.com/Downloads/Win32/admin13.exe,Atronic's @strong{MySQL} client for Win32 1.3.0.0} and @uref{http://www.mysql.com/Downloads/Win32/admin13.readme,Atronic's @strong{MySQL} client readme}. +@item @uref{http://www.mysql.com/Downloads/Win32/ARTADMIN201.EXE,Atronic's @strong{MySQL} client for Win32 2.0.1.0}. Home page for this can be found at: @uref{http://www.artronic.hr}. @item @uref{http://www.mysql.com/Downloads/Win32/W9xstop.zip,Utility from Artronic to stop MySQL on win9x} @@ -34620,7 +34644,7 @@ A query tool for @strong{MySQL} and PostgreSQL. A query tool written in Perl. Uses DBI and Tk. @item @uref{http://www.mysql.com/Downloads/Contrib/mascon1.exe, mascon1.exe} You can get the newest one from -@uref{http://www.SciBit.com,http://www.SciBit.com}. +@uref{http://www.scibit.com/Products/Software/Utils/Mascon.asp,Mascon.asp}. @item @uref{http://www.virtualbeer.net/dbui/,DBUI} DBUI is a Gtk graphical database editor. @end itemize @@ -35352,6 +35376,12 @@ Fixed that BDB tables work on part keys. @item Check table now updates key statistics for the table. @item +@code{ANALYZE TABLE} will now only update tables that has been changed +since last @code{ANALYZE}. Note that this is a new feature and tables +will not be marked to be analyzed until they are updated in any way with +3.23.23 or newer. For older tables, you have to do @code{CHECK TABLE} +to update the key distribution. +@item Added @code{CHANGE MASTER TO} command @item Added @code{FAST}, @code{QUICK} @code{EXTENDED} check types to diff --git a/myisam/ft_eval.c b/myisam/ft_eval.c index 008e148385f..a8e4d8e8881 100644 --- a/myisam/ft_eval.c +++ b/myisam/ft_eval.c @@ -1,15 +1,12 @@ /* Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB - This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. - This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ diff --git a/myisam/mi_locking.c b/myisam/mi_locking.c index 24a23bda7e2..c6fc8736145 100644 --- a/myisam/mi_locking.c +++ b/myisam/mi_locking.c @@ -407,9 +407,10 @@ int _mi_mark_file_changed(MI_INFO *info) { char buff[3]; register MYISAM_SHARE *share=info->s; - if (!share->state.changed || ! share->global_changed) + if (!(share->state.changed & STATE_CHANGED) || ! share->global_changed) { - share->state.changed|=1; + share->state.changed|=(STATE_CHANGED | STATE_NOT_ANALYZED | + STATE_NOT_OPTIMIZED_KEYS); if (!share->global_changed) { share->global_changed=1; diff --git a/myisam/myisamdef.h b/myisam/myisamdef.h index e1263c89ff5..bd100437c35 100644 --- a/myisam/myisamdef.h +++ b/myisam/myisamdef.h @@ -78,7 +78,7 @@ typedef struct st_mi_state_info time_t check_time; /* Time for last check */ uint sortkey; /* sorted by this key (not used) */ uint open_count; - bool changed; /* Changed since isamchk */ + uint8 changed; /* Changed since myisamchk */ my_off_t rec_per_key_rows; /* Rows when calculating rec_per_key */ ulong *rec_per_key_part; @@ -279,14 +279,24 @@ struct st_myisam_info { #define WRITEINFO_UPDATE_KEYFILE 1 #define WRITEINFO_NO_UNLOCK 2 + /* bits in state.changed */ + +#define STATE_CHANGED 1 +#define STATE_CRASHED 2 +#define STATE_CRASHED_ON_REPAIR 4 +#define STATE_NOT_ANALYZED 8 +#define STATE_NOT_OPTIMIZED_KEYS 16 +#define STATE_NOT_SORTED_PAGES 32 + + #define mi_getint(x) ((uint) mi_uint2korr(x) & 32767) #define mi_putint(x,y,nod) { uint16 boh=(nod ? (uint16) 32768 : 0) + (uint16) (y);\ mi_int2store(x,boh); } #define mi_test_if_nod(x) (x[0] & 128 ? info->s->base.key_reflength : 0) -#define mi_mark_crashed(x) (x)->s->state.changed|=2 -#define mi_mark_crashed_on_repair(x) (x)->s->state.changed|=4+2 -#define mi_is_crashed(x) ((x)->s->state.changed & 2) -#define mi_is_crashed_on_repair(x) ((x)->s->state.changed & 4) +#define mi_mark_crashed(x) (x)->s->state.changed|=STATE_CRASHED +#define mi_mark_crashed_on_repair(x) (x)->s->state.changed|=STATE_CRASHED|STATE_CRASHED_ON_REPAIR +#define mi_is_crashed(x) ((x)->s->state.changed & STATE_CRASHED) +#define mi_is_crashed_on_repair(x) ((x)->s->state.changed & STATE_CRASHED_ON_REPAIR) /* Functions to store length of space packed keys, VARCHAR or BLOB keys */ diff --git a/myisam/myisampack.c b/myisam/myisampack.c index 23d7f494994..fbb543152f8 100644 --- a/myisam/myisampack.c +++ b/myisam/myisampack.c @@ -2078,7 +2078,7 @@ static int save_state_mrg(File file,MRG_INFO *mrg,my_off_t new_length, state.checksum=crc; if (isam_file->s->base.keys) isamchk_neaded=1; - state.changed=1; /* Force one check of table */ + state.changed=STATE_CHANGED | STATE_NOT_ANALYZED; /* Force check of table */ DBUG_RETURN (mi_state_info_write(file,&state,1+2)); } |