logo       

bk commit - mysqldoc tree (1.445): msg#00340

db.mysql.devel

Subject: bk commit - mysqldoc tree (1.445)

Below is the list of changes that have just been committed into a local
mysqldoc repository of monty. When monty does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://www.mysql.com/doc/I/n/Installing_source_tree.html

ChangeSet
1.445 03/04/24 09:17:26 monty@xxxxxxxxxxxxxxx +1 -0
Updated information about SQL_BIG_SELECTS and MAX_JOIN_SIZE

Docs/manual.texi
1.419 03/04/24 09:17:26 monty@xxxxxxxxxxxxxxx +25 -14
Updated information about SQL_BIG_SELECTS and MAX_JOIN_SIZE

# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: monty
# Host: narttu.mysql.fi
# Root: /my/mysqldoc

--- 1.418/Docs/manual.texi Thu Apr 24 00:48:30 2003
+++ 1.419/Docs/manual.texi Thu Apr 24 09:17:26 2003
@@ -29993,15 +29993,22 @@
@code{The table tbl_name is full} for big @code{SELECT} operations that
require a large temporary table. The default value for a new connection is
@code{0} (that is, use in-memory temporary tables).
-This option was before named @code{SQL_BIG_TABLES}.
+This option was before named @code{SQL_BIG_TABLES}. In MySQL 4.0 you should
+normally never need this flag as MySQL will automaticly convert in memory
+tables to disk based ones if need.

@item SQL_BIG_SELECTS = 0 | 1
If set to @code{0}, MySQL will abort if a @code{SELECT} is attempted
-that probably will take a very long time. This is useful when an inadvisable
-@code{WHERE} statement has been issued. A big query is defined as a
-@code{SELECT} that probably will have to examine more than
-@code{max_join_size} rows. The default value for a new connection is
-@code{1} (which will allow all @code{SELECT} statements).
+that probably will take a very long time, which is defined as if the number
+of examined rows is probably going to be bigger than @code{MAX_JOIN_SIZE}.
+This is useful when an inadvisable @code{WHERE} statement has been
+issued. A big query is defined as a @code{SELECT} that probably will
+have to examine more than @code{max_join_size} rows. The default value
+for a new connection is @code{1} (which will allow all @code{SELECT}
+statements).
+
+If you set @code{MAX_JOIN_SIZE} to another value than @code{DEFAULT}
+@code{SQL_BIG_SELECTS} will be set to 0.

@item SQL_BUFFER_RESULT = 0 | 1
@code{SQL_BUFFER_RESULT} will force the result from @code{SELECT}s
@@ -30016,15 +30023,17 @@
This option was before named @code{SQL_LOW_PRIORITY_UPDATES}.

@item MAX_JOIN_SIZE = value | DEFAULT
+
Don't allow @code{SELECT}s that will probably need to examine more than
-@code{value} row combinations. By setting this value, you can catch
-@code{SELECT}s where keys are not used properly and that would probably
-take a long time. Setting this to a value other than @code{DEFAULT} will reset
-the @code{SQL_BIG_SELECTS} flag. If you set the @code{SQL_BIG_SELECTS}
-flag again, the @code{SQL_MAX_JOIN_SIZE} variable will be ignored.
-You can set a default value for this variable by starting @code{mysqld} with
-@code{-O max_join_size=#}.
-This option was before named @code{SQL_MAX_JOIN_SIZE}.
+@code{value} row combinations or is likely to do more than @code{value}
+disk seeks. By setting this value, you can catch @code{SELECT}s where
+keys are not used properly and that would probably take a long
+time. Setting this to a value other than @code{DEFAULT} will reset the
+@code{SQL_BIG_SELECTS} flag. If you set the @code{SQL_BIG_SELECTS} flag
+again, the @code{SQL_MAX_JOIN_SIZE} variable will be ignored. You can
+set a default value for this variable by starting @code{mysqld} with
+@code{-O max_join_size=#}. This option was before named
+@code{SQL_MAX_JOIN_SIZE}.

Note that if the result of the query is already in the query cache, the
above check will not be made. Instead, MySQL will send the result to the
@@ -57691,6 +57700,8 @@

Functionality added or changed:
@itemize
+@item
+Fixed that @code{SET SQL_BIG_SELECTS=1} works again.
@item
Changed @code{UPDATE ... LIMIT} to also count accepted, but not changed rows.
@item

--
MySQL Internals Mailing List
For list archives: http://lists.mysql.com/internals
To unsubscribe:
http://lists.mysql.com/internals?unsub=gcdmd-internals@xxxxxxxxxxx




<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise