473,703 Members | 2,334 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

MySQL 4.0.14 has been released

Hash: SHA1


MySQL 4.0.14, a new version of the popular Open Source/Free Software
Database, has been released. It is now available in source and binary form
for a number of platforms from our download pages at
http://www.mysql.com/downloads/ and mirror sites.

Note that not all mirror sites may be up to date at this point in time -
if you can't find this version on some mirror, please try again later or
choose another download site.

This is a maintenance release for the current production version.

Please refer to our bug database at http://bugs.mysql.com/ for more
details about the individual bugs fixed in this version.
News from the ChangeLog:

Functionality added or changed:

* A documentation change: Function `INTERVAL(NULL, ...)' returns

* Enabled `INSERT' from `SELECT' when the table into which the
records are inserted is also a table listed in the `SELECT'.

* Allow `CREATE TABLE' and `INSERT' from any `UNION'.

* The `SQL_CALC_FOUND _ROWS' option now always returns the total
number of rows for any `UNION'.

* Removed `--table' option from `mysqlbinlog' to avoid repeating
`mysqldump' functionality.

* Changed optimiser slightly to prefer index lookups over full table

* Added thread-specific `max_seeks_for_ key' variable that can be
used to force the optimiser to use keys instead of table scans
even if the cardinality of the index is low.

* Added optimisation that converts `LEFT JOIN' to normal join in
some cases.

* A documentation change: added a paragraph about failover in
replication (how to use a surviving slave as the new master, how to
resume to the original setup). *Note Replication FAQ::.

* A documentation change: added warning notes about safe use of the

* MySQL now issues a warning (not an error, as in 4.0.13) when it
opens a table that was created with MySQL 4.1.

* Added `--nice' option to `mysqld_safe' to allow setting the
niceness of the `mysqld' process. (Thanks to Christian Hammers for
providing the initial patch.) (Bug #627)

* Added `--read-only' option to cause `mysqld' to allow no updates
except from slave threads or from users with the `SUPER' privilege.
(Original patch from Markus Benning).

* `SHOW BINLOG EVENTS FROM x' where `x' is strictly less than 4 now
silently converts `x' to 4 instead of printing an error. The same
change was done for `CHANGE MASTER TO MASTER_LOG_POS= x' and

* `mysqld' now only adds an interrupt handler for the `SIGINT' signal
if you start it with the new `--gdb' option. This is because some
MySQL users encountered strange problems when they accidently sent
`SIGINT' to `mysqld' threads.

* `RESET SLAVE' now clears the `Last_errno' and `Last_error' fields
in the output of `SHOW SLAVE STATUS'.

* Added `max_relay_log_ size' variable; the relay log will be rotated
automatically when its size exceeds `max_relay_log_ size'. But if
`max_relay_log_ size' is 0 (the default), `max_binlog_siz e' will be
used (as in older versions). `max_binlog_siz e' still applies to
binary logs in any case.

* `FLUSH LOGS' now rotates relay logs in addition to the other types
of logs it already rotated.
Bugs fixed:

* Comparison/sorting for `latin1_de' character set was rewritten. The
old algorithm could not handle cases like `"sa"" > "ssa"'. *Note German
character set::. In rare cases it resulted in table corruption.

* Fixed a problem with the password prompt on Windows (Bug #683)

* `ALTER TABLE ... UNION=(...)' for `MERGE' table is now allowed
even if some underlying `MyISAM' tables are read-only. (Bug #702)

* Fixed a problem with `CREATE TABLE t1 SELECT x'41''. (Bug #801)

* Removed some incorrect lock warnings from the error log.

* Fixed memory overrun when doing `REPAIR' on a table with a multi-part
auto_increment key where one part was a packed `CHAR'.

* Fixed a probable race condition in the replication code that could
potentially lead to `INSERT' statements not being replicated in the
event of a `FLUSH LOGS' command or when the binary log exceeds
`max_binlog_siz e'. (Bug #791)

* Fixed a crashing bug in `INTERVAL' and `GROUP BY' or `DISTINCT'.
(Bug #807)

* Fixed bug in `mysqlhotcopy' so it actually aborts for unsuccessful
table copying operations. Fixed another bug so that it succeeds
when there are thousands of tables to copy. (Bug #812)

* Fixed problem with `mysqlhotcopy' failing to read options from
option files. (Bug #808)

* Fixed bugs in optimiser that sometimes prevented MySQL from using
`FULLTEXT' indexes even though it was possible (for example, in
`SELECT * FROM t1 WHERE MATCH a,b AGAINST("index" ) > 0').

* Fixed a bug with "table is full" in `UNION' operations.

* Fixed a security problem that enabled users with no privileges to
obtain information on the list of existing databases by using
`SHOW TABLES' and similar commands.

* Fixed a stack problem on UnixWare/OpenServer.

* Fixed a configuration problem on UnixWare/OpenUnix and OpenServer.

* Fixed a stack overflow problem in password verification.

* Fixed a problem with `max_user_conne ctions'.

* `HANDLER' without an index now works properly when a table has
deleted rows. (Bug #787)

* Fixed a bug with `LOAD DATA' in `mysqlbinlog'. (Bug #670).

* Fixed that `SET CHARACTER SET DEFAULT' works. (Bug #462)

* Fixed `MERGE' table behaviour in `ORDER BY ... DESC' queries.
(Bug #515)

* Fixed server crash on `PURGE MASTER LOGS' or `SHOW MASTER LOGS'
when the binary log is off. (Bug #733)

* Fixed password-checking problem on Windows. (Bug #464)

* Fixed the bug in comparison of a `DATETIME' column and an integer
constant. (Bug #504)

* Fixed remote mode of `mysqlbinlog'. (Bug #672)

* Fixed `ERROR 1105: Unknown error' that occurred for some `SELECT'
queries, where a column that was declared as `NOT NULL' was
compared with an expression that took `NULL' value.

* Changed timeout in `mysql_real_con nect()' to use `poll()' instead
of `select()' to work around problem with many open files in the

* Fixed incorrect results from `MATCH ... AGAINST' used with a `LEFT
JOIN' query.

* Fixed a bug that limited the maximum value for `mysqld' variables
to 4294967295 when they are specified on the command line.

* Fixed a bug that sometimes caused spurious "Access denied" errors
in `HANDLER ... READ' statements, when a table is referenced via
an alias.

* Fixed portability problem with `safe_malloc', which caused MySQL to
give "Freeing wrong aligned pointer" errors on SCO 3.2.

* `ALTER TABLE ... ENABLE/DISABLE KEYS' could cause a core dump when
done after an `INSERT DELAYED' statement on the same table.

* Fixed problem with conversion of localtime to GMT where some times
resulted in different (but correct) timestamps. Now MySQL should
use the smallest possible timestamp value in this case. (Bug #316)

* Very small query cache sizes could crash `mysqld'. (Bug #549)

* Fixed a bug (accidentally introduced by us but present only in
version 4.0.13) that made `INSERT ... SELECT' into an
`AUTO_INCREMENT ' column not replicate well. This bug is in the
master, not in the slave. (Bug #490)

* Fixed a bug: When an `INSERT ... SELECT' statement inserted rows
into a non-transactional table, but failed at some point (for
example, due to a "Duplicate key" error), the query was not
written to the binlog. Now it is written to the binlog, with its
error code, as all other queries are. About the
`slave-skip-errors' option for how to handle partially completed
queries in the slave, see *Note Replication Options::. (Bug #491)

* `SET FOREIGN_KEY_CHE CKS=0' was not replicated properly. The fix
probably will not be backported to 3.23.

* On a slave, `LOAD DATA INFILE' which had no `IGNORE' or `REPLACE'
clause on the master, was replicated with `IGNORE'. While this is
not a problem if the master and slave data are identical (a `LOAD'
that produces no duplicate conflicts on the master will produce
none on the slave anyway), which is true in normal operation, it
is better for debugging not to silently add the `IGNORE'. That way,
you can get an error message on the slave and discover that for
some reason, the data on master and slave are different and
investigate why. (Bug #571)

* On a slave, `LOAD DATA INFILE' printed an incomplete "Duplicate
entry '%-.64s' for key %d"' message (the key name and value were
not mentioned) in case of duplicate conflict (which does not
happen in normal operation). (Bug #573)

* When using a slave compiled with `--debug', `CHANGE MASTER TO
RELAY_LOG_POS' could cause a debug assertion failure. (Bug #576)

* When doing a `LOCK TABLES WRITE' on an InnoDB table, commit could
not happen, if the query was not written to the binary log (for
example, if `--log-bin' was not used, or `binlog-ignore-db' was
used). (Bug #578)

* If a 3.23 master had open temporary tables that had been
replicated to a 4.0 slave, and the binlog got rotated, these
temporary tables were immediately dropped by the slave (which
caused problems if the master used them subsequently). This bug
had been fixed in 4.0.13, but in a manner which caused an unlikely
inconvenience: if the 3.23 master died brutally (power failure),
without having enough time to automatically write `DROP TABLE'
statements to its binlog, then the 4.0.13 slave would not notice
the temporary tables have to be dropped, until the slave `mysqld'
server is restarted. This minor inconvenience is fixed in 3.23.57
and 4.0.14 (meaning the master must be upgraded to 3.23.57 and the
slave to 4.0.14 to remove the inconvenience). (Bug #254)

* If `MASTER_POS_WAI T()' was waiting, and the slave was idle, and
the SQL slave thread terminated, `MASTER_POS_WAI T()' would wait
forever. Now when the SQL slave thread terminates,
`MASTER_POS_WAI T()' immediately returns `NULL' ("slave stopped").
(Bug #651)

* After `RESET SLAVE; START SLAVE;', the `Relay_log_spac e' value
displayed by `SHOW SLAVE STATUS' was too big by four bytes. (Bug

* If a query was ignored on the slave (because of
`replicate-ignore-table' and other similar rules), the slave still
checked if the query got the same error code (0, no error) as on
the master. So if the master had an error on the query (for
example, "Duplicate entry" in a multiple-row insert), then the
slave stopped and warned that the error codes didn't match. (Bug
Additional notes:

* In addition to Solaris 8/9 for SPARC, we now also offer binaries
for Sun Solaris 8 on the Intel x86 architecture.

* Binaries for FreeBSD 5.0 (sparc64) have been added (thanks to Ken
McKittrick for granting us access to such a system)

* Due to technical problems with the build hosts, we currently can not
offer binaries for Linux/s390 and binaries for AIX 4.3 (compiled with
gcc). These will be added as soon as these problems have been
resolved. We apologize for any inconveniences that may cause you.

- --
Lenz Grimmer <le**@mysql.com >
Senior Production Engineer
MySQL GmbH, http://www.mysql.de/
Hamburg, Germany

For technical support contracts, visit https://order.mysql.com/?ref=mlgr
Version: GnuPG v1.2.2-rc1-SuSE (GNU/Linux)
Comment: For info see http://quantumlab.net/pine_privacy_guard/

b6nsaGkt2SzWBp7 8wWu+8ug=

MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/my***********...ie.nctu.edu.tw

Jul 19 '05 #1
0 3524

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

by: Amadeus | last post by:
Hello Everybody! I have a problem with MySQL servers running RedHat 9 (smp kernel 2.4.20) on Intel and MySQL server 4.0.14 (problem also appears on binary distr 4.0.15 and on 4.0.15 I bilt myself from source). I have few big tables with BLOBS and regular table 4.2 and 2.7 Gb respectively, plust several smaller tables. Every time I run query against this tables MySQL uses all available memory on server (I have 3Gb RAM on server) and it...
by: B. Pigman | last post by:
There have been many questions as to the viability of MySQL's assertion that it can dictate what constitutes a derived work in order to use the GPL against developers who don't wish their software GPL'd and force them to pay for a commercial license. According to the lawyers I've consulted, based on the letter of the GPL, here is the conclusion: Commercial users of MySQL opting for the GPL'd version are not compelled to release their...
by: Arc | last post by:
Sorry if this has been gone over before, but I checked google groups and I couldn't find anything. Does anyone here have any idea when 4.1.x will be released into production (i.e. come out of beta). It is currently impossible to find a commercial web host who supports it because it is in beta, even though it has been out for a long time now. My system *requires* subqueries, and so I can't even host it until 4.1.x is released to...
by: Vaclav Frolik | last post by:
CHARONWARE, s.r.o. is pleased to announce that a new version of CASE Studio 2 version 2.18 has been released. CASE Studio 2 allows database designers and developers to visualy create and maintain Entity Relationship Diagrams (ERD) and Data Flow Diagrams (DFD) and generate SQL scripts for various databases automatically. The new version includes more than 80 significant improvements.
by: John Wells | last post by:
Yes, I know you've seen the above subject before, so please be gentle with the flamethrowers. I'm preparing to enter a discussion with management at my company regarding going forward as either a MySql shop or a Postgresql shop. It's my opinion that we should be using PG, because of the full ACID support, and the license involved. A consultant my company hired before bringing me in is pushing hard for MySql, citing speed and community...
by: Mike | last post by:
I recently had a Microsoft Access 97 database corrupt on me. The setup is a split database (front end/back end) setup with about 10-15 users. This is the first corruption in something like a year. The database has about 25 tables, and the total size is about 15MB, after a compact. The front end sits on users Windows 2000 Professional desktops, and the file server is a Windows 2000 Server. I've been thinking of migrating the back end,...
by: Vincent V | last post by:
Hey guys im about to start a large project and am wondering what DB server to use I have the Choise of MySql(innodb) or if i pay a bit extra i can get MS SQL 2000 The concerns i have -What type of limited functionality will i come accros with MYSQL ie No stored POCS -Limitations with the RDBMS system of innodb If i go with MySQL + Innodb i think this will be offer the fastest runtime
by: Wak | last post by:
I have been searching for ERP system that runs on PHP/Mysql for a med-large sized business. Most of the ones I have found are pretty cheesy and don't do everything a ecommerce company would need. Looking for 1. Ability to maintain inventory 2. Ability to drop ship a order 3. Import orders from a already created ecommerce website.
by: Roopesh | last post by:
Hi, In my mod_python project I am using mysql as the database. There is table card in which unique cards are stored. When a user request comes he has to get a unique card. In this situation I want to use LOCK with which I can prevent other users accessing the table. I tried excuting "LOCK" command of mysql through python code, but it is not locking the database. Any ideas why this isn't working and how can I do the same. //python code...
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.