diff options
author | unknown <monty@donna.mysql.com> | 2000-10-16 02:29:48 +0300 |
---|---|---|
committer | unknown <monty@donna.mysql.com> | 2000-10-16 02:29:48 +0300 |
commit | 9c019f4e4fc4d34f3c82723d1182f0917b9c5360 (patch) | |
tree | 5027f963ce243feb9758c98bc0d3be35c3b4c614 /Docs | |
parent | d78f9840978cf60b73f13f6a5201ed5593636573 (diff) | |
download | mariadb-git-9c019f4e4fc4d34f3c82723d1182f0917b9c5360.tar.gz |
Automatic primary key for BDB tables
sql/field.h:
Cleanup
sql/filesort.cc:
Cleanup
sql/opt_range.cc:
Remove index in use
sql/sql_base.cc:
Allow Berkeley DB tables used only the index when the query only uses
the index + data from the primary key
sql/sql_select.cc:
Fix for left join optimization
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
Diffstat (limited to 'Docs')
-rw-r--r-- | Docs/manual.texi | 34 |
1 files changed, 25 insertions, 9 deletions
diff --git a/Docs/manual.texi b/Docs/manual.texi index e28a6820873..33f185de9dd 100644 --- a/Docs/manual.texi +++ b/Docs/manual.texi @@ -1793,16 +1793,20 @@ Big changes made in @strong{MySQL} Version 3.22.12. @item @strong{MyODBC} (uses ODBC SDK 2.5) --- Gamma It seems to work well with some programs. -@item Replication -- Alpha +@item Replication -- Alpha / Beta We are still working on replication, so don't expect this to be rock solid yet. On the other hand, some @strong{MySQL} users are already using this with good results. -@item BDB Tables -- Alpha +@item BDB Tables -- Alpha / Beta The Berkeley DB code is very stable, but we are still improving the interface between @strong{MySQL} and BDB tables, so it will take some time before this is as tested as the other table types. +@item Automatic recovery of MyISAM tables - Alpha. +This only affects the new code that checks if the table was closed properly +on open and executes an automatic check/repair of the table if it wasn't. + @end table MySQL AB provides e-mail support for paying customers, but the @strong{MySQL} @@ -7979,12 +7983,10 @@ you should also compile your code to be multi-threaded! @node Windows and BDB tables., Windows vs Unix, Windows compiling, Windows @subsection Windows and BDB Tables -We are working on removing the requirement that one must have a primary -key in a BDB table. As soon as this is fixed we will throughly test the -BDB interface by running the @strong{MySQL} benchmark and our internal -test suite on it. When the above is done we will start to release binary -distributions (for Windows and UNIX) of @strong{MySQL} that will include -support for BDB tables. +We will shortly do a full test on the new BDB interface on Windows. +When this is done we will start to release binary distributions (for +Windows and UNIX) of @strong{MySQL} that will include support for BDB +tables. @cindex Windows, versus UNIX @cindex operating systems, Windows versus UNIX @@ -21876,13 +21878,22 @@ Some characteristic of @code{BDB} tables: @itemize @bullet @item -All @code{BDB} tables must have a primary key. +@strong{MySQL} requires a @code{PRIMARY KEY} in each BDB table to be +able to refer to previously read rows; If you don't create on, +@strong{MySQL} will create an maintain a hidden @code{PRIMARY KEY} for +you. The hidden key has a length of 5 bytes and is incremented for each +insert attempt. @item If all columns you access in a @code{BDB} tables is part of the same index or part of the the primary key then @strong{MySQL} can execute the query without having to access the actual row. In a @code{MyISAM} table the above holds only if the columns are part of the same index. @item +The @code{PRIMARY KEY} will be faster than any other key, as the +@code{PRIMARY KEY} is stored together with the row data. As the other keys are +stored as the key data + the @code{PRIMARY KEY}, its important to keep the +@code{PRIMARY KEY} as short as possible to save disk and get better speed. +@item @code{LOCK TABLES} works on @code{BDB} tables as with other tables. If you don't use @code{LOCK TABLE}, @strong{MYSQL} will issue an internal multiple write lock on the table to ensure that the table will be @@ -37972,6 +37983,11 @@ though, so 3.23 is not released as a stable version yet. @appendixsubsec Changes in release 3.23.26 @itemize @bullet @item +If one don't create a @code{PRIMARY KEY} in a BDB table, a hidden +@code{PRIMARY KEY} will be created. +@item +Added read-only-key optimization to BDB tables. +@item @code{LEFT JOIN} did in some case prefer a full table scan when one didn't have a @code{WHERE} clause. @item |