Commit 8d7f3781 authored by unknown's avatar unknown

Rewrite/re-arrange of "How stable is MySQL?" section, as per Monty/Kaj request.

parent 0493640c
...@@ -693,76 +693,85 @@ options to obtain online assistance. ...@@ -693,76 +693,85 @@ options to obtain online assistance.
@cindex stability @cindex stability
This section addresses the questions ``How stable is MySQL?'' and This section addresses the questions ``@emph{How stable is MySQL?}''
``Can I depend on MySQL in this project?'' We will try to clarify and ``@emph{Can I depend on MySQL in this project?}''
some issues and to answer some of the more important questions that seem to We will try to clarify these issues and answer some important
concern many people. This section has been put together from information questions that concern many potential users. The information in this
gathered from the mailing list (which is very active in reporting bugs). section is based on data gathered from the mailing list, which is
very active in identifying problems as well as reporting types of use.
At TcX, the predecessor of MySQL AB, MySQL has worked without any problems in
projects since mid-1996. Original code stems back from the early 80s, Original code stems back from the early 80s, providing a stable code
providing a table code base, and the ISAM table format remains backwards base, and the ISAM table format remains backwards compatible.
compatible. When MySQL was released to a wider public, we noticed that there At TcX, the predecessor of MySQL AB, MySQL has worked in projects
were some pieces of ``untested code'' that were quickly found by the new users since mid-1996, without any problems.
who made queries in a manner different than our own. Each new release has had When MySQL was released to a wider public, we noticed that there were
fewer portability problems than the previous one (even though each has had some pieces of ``untested code'' that were quickly found by the new
many new features). users who made different types of queries from us. Each new release
has had fewer portability problems (even though each new release has
Each release of MySQL has been usable, and there have been problems had many new features).
only when users start to use code from the ``gray zones.'' Naturally, outside
users don't know what the gray zones are; this section attempts to indicate Each release of MySQL has been usable. There have only been problems
those that are currently known. The descriptions deal with Version 3.23 when users try code from the ``gray zones.'' Naturally, new users
of MySQL. All known and reported bugs are fixed in the latest don't know what the gray zones are; this section attempts to indicate
version, with the exception of the bugs listed in the bugs section, which those that are currently known.
are things that are design-related. @xref{Bugs}. The descriptions mostly deal with Version 3.23 of MySQL.
All known and reported bugs are fixed in the latest version, with the
MySQL is written in multiple layers and different independent modules. exception of those listed in the bugs section, which are things that
Some of the new modules are listed below with an indication of how are design-related. @xref{Bugs}.
well-tested each of them is:
MySQL design is multi-layered with independent modules. Some of the
newer modules are listed below with an indication of how well-tested
each of them is:
@cindex modules, list of @cindex modules, list of
@table @strong @table @strong
@item Locking --- Gamma
This is very system-dependent. On some systems there are big problems
using standard OS locking (@code{fcntl()}). In these cases, you should run the
MySQL daemon with the @code{--skip-locking} flag. Problems are known
to occur on some Linux systems, and on SunOS when using NFS-mounted file
systems.
@item @strong{MyODBC 2.50} (uses ODBC SDK 2.5) --- Gamma
It seems to work well with some programs.
@item Replication -- Gamma @item Replication -- Gamma
We are still working on replication, so don't expect this to be rock Large server clusters using replication are in production use, with
solid yet. On the other hand, some MySQL users are already good results. Work on enhanced replication features is continuing
using this with good results. in MySQL 4.0.
@item BDB Tables -- Gamma @item @code{InnoDB} tables -- Gamma
The Berkeley DB code is very stable, but we are still improving the interface While the @code{InnoDB} transactional table handler is a fairly recent
between MySQL and BDB tables, so it will take some time before this addition to @code{MySQL}, it appears to work well and is already being
is tested as well as the other table types. used in some large, heavy load production systems.
@item InnoDB Tables -- Gamma @item @code{BDB} tables -- Gamma
This is a recent addition to @code{MySQL}. They appear to work well and The @code{Berkeley DB} code is very stable, but we are still improving
can be used after some initial testing. the @code{BDB} transactional table handler interface in MySQL, so it
will take some time before this is as well tested as the other table
@item Automatic recovery of MyISAM tables - Gamma types.
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. @item @code{FULLTEXT} -- Beta
Full text search works but is not yet widely used.
@item FULLTEXT -- Beta Important enhancements are being implemented for MySQL 4.0.
Text search seems to work, but is still not widely used.
@item @code{MyODBC 2.50} (uses ODBC SDK 2.5) -- Gamma
@item Bulk-insert - Alpha Increasingly in wide use. Some issues brought up appear to be
application related and independent of the ODBC driver or underlying
database server.
@item Automatic recovery of @code{MyISAM} tables -- Gamma
This status only regards the new code in the @code{MyISAM} table
handler that checks if the table was closed properly on open and
executes an automatic check/repair of the table if it wasn't.
@item Bulk-insert -- Alpha
New feature in MyISAM in MySQL 4.0 for faster insert of many rows. New feature in MyISAM in MySQL 4.0 for faster insert of many rows.
@item Locking -- Gamma
This is very system-dependent. On some systems there are big problems
using standard OS locking (@code{fcntl()}). In these cases, you should
run @code{mysqld} with the @code{--skip-locking} flag.
Problems are known to occur on some Linux systems, and on SunOS when
using NFS-mounted file systems.
@end table @end table
MySQL AB provides high-quality support for paying customers, but the MySQL AB provides high-quality support for paying customers, but the
MySQL mailing list usually provides answers to common questions. MySQL mailing list usually provides answers to common questions.
Bugs are usually fixed right away with a patch; for serious bugs, there is Bugs are usually fixed right away with a patch; for serious bugs,
almost always a new release. there is almost always a new release.
@node Table size, Year 2000 compliance, Stability, What-is @node Table size, Year 2000 compliance, Stability, What-is
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment