Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
a434c8d2
Commit
a434c8d2
authored
Oct 05, 2000
by
monty@donna.mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed bug in how FAST and CHANGED worked
parent
a8a15e83
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
30 additions
and
17 deletions
+30
-17
Docs/manual.texi
Docs/manual.texi
+26
-14
sql/ha_myisam.cc
sql/ha_myisam.cc
+4
-3
No files found.
Docs/manual.texi
View file @
a434c8d2
...
@@ -12021,6 +12021,7 @@ Website}.
...
@@ -12021,6 +12021,7 @@ Website}.
@findex SET PASSWORD statement
@findex SET PASSWORD statement
@cindex setting, passwords
@cindex setting, passwords
@node Passwords, Access denied, Adding users, Privilege system
@node Passwords, Access denied, Adding users, Privilege system
@section Setting passwords
In most cases you should use @code{GRANT} to set up your users/passwords,
In most cases you should use @code{GRANT} to set up your users/passwords,
so the following only applies for advanced users. @xref{GRANT, , @code{GRANT}}.
so the following only applies for advanced users. @xref{GRANT, , @code{GRANT}}.
...
@@ -16653,7 +16654,7 @@ This is an "RSA Data Security, Inc. MD5 Message-Digest Algorithm".
...
@@ -16653,7 +16654,7 @@ This is an "RSA Data Security, Inc. MD5 Message-Digest Algorithm".
@item LAST_INSERT_ID([expr])
@item LAST_INSERT_ID([expr])
Returns the last automatically generated value that was inserted into an
Returns the last automatically generated value that was inserted into an
@code{AUTO_INCREMENT} column.
@code{AUTO_INCREMENT} column.
@xref{mysql_insert_id,, @code{mysql_insert_id()}}
:
@xref{mysql_insert_id,, @code{mysql_insert_id()}}
.
@example
@example
mysql> select LAST_INSERT_ID();
mysql> select LAST_INSERT_ID();
...
@@ -16872,7 +16873,7 @@ mysql> select student_name, AVG(test_score)
...
@@ -16872,7 +16873,7 @@ mysql> select student_name, AVG(test_score)
@itemx MAX(expr)
@itemx MAX(expr)
Returns the minimum or maximum value of @code{expr}. @code{MIN()} and
Returns the minimum or maximum value of @code{expr}. @code{MIN()} and
@code{MAX()} may take a string argument; in such cases they return the
@code{MAX()} may take a string argument; in such cases they return the
minimum or maximum string value. @xref{MySQL indexes}
:
minimum or maximum string value. @xref{MySQL indexes}
.
@example
@example
mysql> select student_name, MIN(test_score), MAX(test_score)
mysql> select student_name, MIN(test_score), MAX(test_score)
...
@@ -17813,12 +17814,34 @@ The different check types stand for the following:
...
@@ -17813,12 +17814,34 @@ The different check types stand for the following:
@multitable @columnfractions .20 .80
@multitable @columnfractions .20 .80
@item @strong{Type} @tab @strong{Meaning}
@item @strong{Type} @tab @strong{Meaning}
@item @code{QUICK} @tab Don't scan the rows
for fixed size record table
s.
@item @code{QUICK} @tab Don't scan the rows
to check for wrong link
s.
@item @code{FAST} @tab Only check tables which haven't been closed properly.
@item @code{FAST} @tab Only check tables which haven't been closed properly.
@item @code{CHANGED} @tab Only check tables which have been changed since last check or haven't been closed properly.
@item @code{CHANGED} @tab Only check tables which have been changed since last check or haven't been closed properly.
@item @code{EXTENDED} @tab Do a full key lookup for all keys for each row. This ensures that the table is 100 % consistent, but will take a long time!
@item @code{EXTENDED} @tab Do a full key lookup for all keys for each row. This ensures that the table is 100 % consistent, but will take a long time!
@end multitable
@end multitable
If a table is corrupted, then it's most likely that the problem is in
the indexes and not in the data part. All of the above check types
checks the indexes throughly and should thus find most errors.
If you just want to check a table that you assume is ok, you should use
no check options or the @code{QUICK} option. The later should be used
when you are in a hurry and can take the very small risk that
@code{QUICK} didn't find an error in the data file (In most cases
@strong{MySQL} should find, under normal usage, any error in the data
file. If this happens then the table will be marked as 'corrupted'.
@code{FAST} and @code{CHANGED} are mostly intended to be used from a
script (for example to be executed from cron) if you want to check your
table from time to time. In most cases you @code{FAST} is to be prefered
over @code{CHANGED}. (The only case when it isn't is when you suspect a
bug you have found a bug in the @code{MyISAM} code.).
@code{EXTENDED} is only to be used after you have run a normal check but
still get strange errors from a table when @strong{MySQL} tries to
update a row or find a row by key (this is VERY unlikely to happen if a
normal check has succeeded!).
@findex BACKUP TABLE
@findex BACKUP TABLE
@node BACKUP TABLE, RESTORE TABLE, CHECK TABLE, Reference
@node BACKUP TABLE, RESTORE TABLE, CHECK TABLE, Reference
@section @code{BACKUP TABLE} syntax
@section @code{BACKUP TABLE} syntax
...
@@ -43265,17 +43288,6 @@ All new development is concentrated to @strong{MySQL}.
...
@@ -43265,17 +43288,6 @@ All new development is concentrated to @strong{MySQL}.
@page
@page
@c This node name is special
@c This node name is special
@ifset nusphere
@cindex GNU General Public License
@cindex licenses, GNU General Public License
@node GPL license, LGPL license, Unireg, Top
@appendix GNU General Public License
The GPL License can be found at ...
@end ifset
@ifclear nusphere
@node GPL license, LGPL license, Unireg, Top
@node GPL license, LGPL license, Unireg, Top
@appendix GNU General Public License
@appendix GNU General Public License
sql/ha_myisam.cc
View file @
a434c8d2
...
@@ -250,10 +250,11 @@ int ha_myisam::check(THD* thd, HA_CHECK_OPT* check_opt)
...
@@ -250,10 +250,11 @@ int ha_myisam::check(THD* thd, HA_CHECK_OPT* check_opt)
if
(
!
mi_is_crashed
(
file
)
&&
if
(
!
mi_is_crashed
(
file
)
&&
(((
param
.
testflag
&
T_CHECK_ONLY_CHANGED
)
&&
(((
param
.
testflag
&
T_CHECK_ONLY_CHANGED
)
&&
(
share
->
state
.
changed
&
(
STATE_CHANGED
|
STATE_CRASHED
|
!
(
share
->
state
.
changed
&
(
STATE_CHANGED
|
STATE_CRASHED
|
STATE_CRASHED_ON_REPAIR
))
&&
STATE_CRASHED_ON_REPAIR
))
&&
share
->
state
.
open_count
==
0
)
||
share
->
state
.
open_count
==
0
)
||
((
param
.
testflag
&
T_FAST
)
&&
share
->
state
.
open_count
==
0
)))
((
param
.
testflag
&
T_FAST
)
&&
(
share
->
state
.
open_count
==
(
share
->
global_changed
?
1
:
0
)))))
return
HA_ADMIN_ALREADY_DONE
;
return
HA_ADMIN_ALREADY_DONE
;
error
=
chk_size
(
&
param
,
file
);
error
=
chk_size
(
&
param
,
file
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment