Hi,

MySQL 4.1.15, a new version of the popular Open Source Database
Management System, has been released. The Community Edition is now
available in source and binary form for a number of platforms from our
download pages at http://dev.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 bugfix 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:

    The limit of 255 characters on the input buffer for mysql on Windows
    has been lifted. The exact limit depends on what the system allows,
    but can be up to 64K characters. A typical limit is 16K characters.
    (Bug #12929 (http://bugs.mysql.com/12929))

    Added the myisam_stats_method, which controls whether NULL values in
    indexes are considered the same or different when collecting
    statistics for MyISAM tables. This influences the query optimizer as
    described in Section 7.4.7, "MyISAM Index Statistics Collection."
    (Bug #12232  (http://bugs.mysql.com/12232))

      * Better  detection of connection timeout for replication servers
        on Windows allows elimination of extraneous Lost connection
        errors in the error log.
        (Bug #5588 (http://bugs.mysql.com/5588))
      * When using IF NOT EXISTS with CREATE DATABASE or CREATE TABLE, a
        warning now is generated if the database or table already
        exists. (Bug #6008 (http://bugs.mysql.com/6008))
      * A  new  command line argument was added to mysqld to ignore
        client character set information sent during handshake, and use
        server side settings instead, to reproduce 4.0 behaviour
        (Bug  #9948 (http://bugs.mysql.com/9948)):
        mysqld --skip-character-set-client-handshake

    Bugs fixed:
      * NDBCluster: Updating a text-type column during a cluster backup
        could cause the ndbd process to crash, due to the incorrect use
        of charset-normalized reads. This could also lead to “wrong”
        data in the backup if such a column was updated during the
        backup; for example, supposing that the column used latin_ci,
        then “aAa” might be stored in the backup as “AAA”. (Bug #12950
        (http://bugs.mysql.com/12950))
      * NDBCluster: When performing a delete of a great many (tens of
        thousands of) rows at once from a Cluster table, an improperly
        dereferenced pointer  could  cause  the  mysqld  process  to
        crash. (Bug #9282 (http://bugs.mysql.com/9282))
      * Server could over-allocate memory when performing a FULLTEXT
        search for stopwords only. (Bug #13582
        (http://bugs.mysql.com/13582))
      * UNION of two DECIMAL columns returned wrong field type. (Bug
        #13372 (http://bugs.mysql.com/13372))
      * CHECKSUM TABLE locked InnoDB tables and did not use a consistent
        read. (Bug #12669 (http://bugs.mysql.com/12669))
      * SHOW CREATE TABLE did not display any FOREIGN KEY clauses if a
        temporary file could not be created. Now SHOW CREATE TABLE
        displays an error message in an SQL comment if this occurs.
        (Bug  #13002 (http://bugs.mysql.com/13002))
      * Display of the AUTO_INCREMENT attribute by SHOW CREATE TABLE
        was not controlled by the NO_FIELD_OPTIONS SQL mode as it should
        have been. (Bug #7977 (http://bugs.mysql.com/7977))
      * For VARCHAR columns with the ucs2 character set, InnoDB trimmed
        trailing 0x20  bytes rather than 0x0020 words, resulting in
        incorrect index lookups later. (Bug #12178
        (http://bugs.mysql.com/12178))
      * MySQL programs in binary distributions for Solaris 8/9/10 x86
        systems would not run on Pentium III machines.   (Bug   #6772
        (http://bugs.mysql.com/6772))
      * NDB Cluster: Multiple ndb_mgmd processes in a cluster would not
        know each other's IP addresses. (Bug #12037
        (http://bugs.mysql.com/12037))
      * NDB Cluster: With two mgmd processes in a cluster, ndb_mgm
        output for SHOW would display the same IP address for both
        processes, even when they were on different hosts. (Bug #11595
        (http://bugs.mysql.com/11595))
      * The --replicate-rewrite-db and --replicate-do-table options did
        not work for statements in which tables were aliased to names
        other than those listed by the options. (Bug #11139
        (http://bugs.mysql.com/11139))
      * After running configure with the
           --with-embedded-privilege-control
        option, the embedded server  failed  to  build.  (Bug  #13501
        (http://bugs.mysql.com/13501))
      * Queries against a MERGE table that has a composite index could
        produce incorrect results. (Bug #9112
        (http://bugs.mysql.com/9112))
      * Comparisons involving row constructors containing constants
        could cause a server crash. (Bug #13356
        (http://bugs.mysql.com/13356))
      * MySQL would pass an incorrect key length to storage engines for
        MIN(). This could cause warnings such as InnoDB: Warning: using
        a partial-field key prefix in search. in the .err log.
        (Bug  #13218  (http://bugs.mysql.com/13218),   same as
        Bug #11039 (http://bugs.mysql.com/11039) in MySQL 5.0.7)
      * NDB Cluster: LOAD DATA INFILE with a large data file failed.
        (Bug #10694  (http://bugs.mysql.com/10694))
      * NDB Cluster: Adding an index to a table with a large number of
        columns  (more   than   100)   crashed   the   storage  node.
        (Bug  #13316  (http://bugs.mysql.com/13316))
      * Aggregate functions sometimes incorrectly were allowed in the
        WHERE clause of UPDATE and DELETE statements.   (Bug   #13180
        (http://bugs.mysql.com/13180))
      * MIN() and MAX() sometimes returned a non-NULL value for an empty
        row set (for example, SELECT MAX(1) FROM empty_table).
        (Bug  #12882 (http://bugs.mysql.com/12882))
      * LOAD DATA INFILE did not respect the NO_AUTO_VALUE_ON_ZERO SQL
        mode setting. (Bug #12053 (http://bugs.mysql.com/12053))
      * Use of a user-defined function within the HAVING clause of a
        query resulted in an Unknown column error.   (Bug   #11553
        (http://bugs.mysql.com/11553))
      * The data type for DECIMAL columns was not respected when
        updating the column from another column. For example, updating a
        DECIMAL(10,1) column with the value from a DECIMAL(10,5) column
        resulted in a DECIMAL(10,5) value being stored. Similarly,
        altering a column with a DECIMAL(10,5) datatype to a
        DECIMAL(10,1) data type did not properly convert data
        values. (Bug #7598 (http://bugs.mysql.com/7598))
      * NDB: A cluster shutdown following the crash of a data node would
        fail to terminate the remaining node processes, even though
        ndb_mgm showed the shutdown request as having been completed.
        (Bug  #10938  (http://bugs.mysql.com/10938),
        Bug #9996 (http://bugs.mysql.com/9996),
        Bug #11623 (http://bugs.mysql.com/11623))
      * For  queries with DISTINCT and WITH ROLLUP, the DISTINCT should
        be applied after the rollup operation, but was not always.
        (Bug #12887 (http://bugs.mysql.com/12887))
      * The counters for the Key_read_requests, Key_reads,
        Key_write_requests, and Key_writes status variables were changed
        from unsigned long to unsigned longlong to accommodate larger
        variables without rollover. (Bug #12920
        (http://bugs.mysql.com/12920))
      * A column that can be NULL was not handled properly for WITH
        ROLLUP in a subquery or view.
        (Bug #12885 (http://bugs.mysql.com/12885))
      * Shared-memory connections were not working on Windows.
        (Bug #12723 (http://bugs.mysql.com/12723))
      * A concurrency problem for CREATE ... SELECT could cause a server
        crash. (Bug #12845 (http://bugs.mysql.com/12845))
      * Performing an IS NULL check on the MIN() or MAX() of an indexed
        column in a complex query could produce incorrect results.
        (Bug #12695 (http://bugs.mysql.com/12695))
      * The NDB START BACKUP command could be interrupted by a SHOW
        command. (Bug #13054 (http://bugs.mysql.com/13054))
      * The  LIKE  ...  ESCAPE syntax produced invalid results when
        escape character was larger than one byte.   (Bug  #12611
        (http://bugs.mysql.com/12611))
      * A client connection thread cleanup problem caused the server to
        crash when closing the connection if the binary log was enabled.
        (Bug #12517  (http://bugs.mysql.com/12517))
      * CHECKSUM  TABLE command returned incorrect results for tables
        with deleted rows.  After  upgrading,  users  who used stored
        checksum information to detect table changes should rebuild
        their checksum data. (Bug #12296 (http://bugs.mysql.com/12296))
      * The value of character_set_results could be set to NULL, but
        returned the string "NULL" when retrieved.    (Bug    #12363
        (http://bugs.mysql.com/12363))
      * GROUP_CONCAT() ignored an empty string if it was the first value
        to occur in the result. (Bug #12863
        (http://bugs.mysql.com/12863))
      * Outer join elimination was erroneously applied for some queries
        that used a NOT BETWEEN condition, an IN(value_list) condition,
        or an IF() condition.
        (Bug  #12101 (http://bugs.mysql.com/12101), Bug #12102
        (http://bugs.mysql.com/12102))
      * Reverted a change introduced in MySQL 4.1.13 to fix a problem of
        SHOW FIELDS  truncating  the TYPE column to 40 characters. This
        fix was reverted for MySQL 4.1 because it broke existing
        applications. The fix will be made to MySQL 5.0 instead
        (5.0.13).  (Bug  #7142 (http://bugs.mysql.com/7142), Bug #12817
        (http://bugs.mysql.com/12817))
      * On HP-UX 11.x (PA-RISC), the -L option caused mysqlimport to
        crash. (Bug #12958 (http://bugs.mysql.com/12958))
      * After changing the character set with SET CHARACTER SET, the
        result of the GROUP_CONCAT() function was not converted to the
        proper character set. (Bug #12829 (http://bugs.mysql.com/12829))
      * myisampack did not properly pack BLOB values larger than 2^24
        bytes. (Bug #4214 (http://bugs.mysql.com/4214))
      * The server crashed when one thread resized the query cache while
        another thread was using it.
        (Bug #12848 (http://bugs.mysql.com/12848))
      * mysqld_multi now quotes arguments on command lines that it
        constructs to avoid problems with arguments that contain shell
        metacharacters. (Bug #11280 (http://bugs.mysql.com/11280))
      * When  any --replicate-wild-* option is used, the slave ignores
        SET ONE_SHOT TIME_ZONE statements as belonging to a
        non-replicated table.
        (Bug #12542 (http://bugs.mysql.com/12542))
      * Deadlock occurred when several account management statements
        were run (particularly between FLUSH PRIVILEGES/SET PASSWORD and
        GRANT/REVOKE statements).
        (Bug #12423 (http://bugs.mysql.com/12423))
      * On Windows, the server was preventing tables from being created
        if the table name was a prefix of a forbidden name. For example,
        nul is a forbidden name because it's the same as a Windows
        device name, but a table with the name of n or nu was being
        forbidden as well. (Bug #12325 (http://bugs.mysql.com/12325))
      * InnoDB was too permissive with LOCK TABLE ... READ LOCAL and
        allowed new inserts into the table. Now READ LOCAL is equivalent
        to READ for InnoDB. This will cause slightly more locking in
        mysqldump, but makes InnoDB table dumps consistent with MyISAM
        table dumps. (Bug #12410 (http://bugs.mysql.com/12410))
      * The have_innodb read-only system variable could not be selected
        with SELECT @@have_innodb.
       (Bug #9613 (http://bugs.mysql.com/9613))
      * A UNION of long utf8 VARCHAR columns was sometimes returned as a
        column with a LONGTEXT data type rather than VARCHAR. This could
        prevent such queries from working at all if selected into a
        MEMORY table because the MEMORY storage engine does not support
        the TEXT data types. (Bug #12537 (http://bugs.mysql.com/12537))
      * NDB Cluster: Corrected the parsing of the CLUSTERLOG command by
        ndb_mgm to allow multiple items.
        (Bug #12833 (http://bugs.mysql.com/12833))
      * NDB Cluster: Improved error messages related to filesystem
        issues. (Bug #11218 (http://bugs.mysql.com/11218))
      * NDB Cluster: When a schema was detected to be corrupt, ndb
        neglected to close it, resulting in a “file already open” error
        if the schema was opened again later. written.
        (Bug #12027 (http://bugs.mysql.com/12027))
      * NDB Cluster: When it could not copy a fragment, ndbd exited
        without printing a message about the condition to the error log.
        Now the message is written.
        (Bug #12900 (http://bugs.mysql.com/12900))
      * NDB Cluster: When a disk full condition occurred, ndbd exited
        without printing a message about the condition to the error log.
        Now the message is written.
        (Bug #12716 (http://bugs.mysql.com/12716))
      * If  a client has opened an InnoDB table for which the .ibd file
        is missing, InnoDB would not honor a DROP TABLE statement for
        the table.  (Bug #12852 (http://bugs.mysql.com/12852))
      * SELECT GROUP_CONCAT(...) FROM DUAL in a subquery could cause the
        client to hang. (Bug #12861 (http://bugs.mysql.com/12861))
      * NDB Cluster: Bad values in config.ini caused ndb_mdmd to crash.
        (Bug #12043 (http://bugs.mysql.com/12043))
      * TRUNCATE TABLE did not work with TEMPORARY InnoDB tables.
        (Bug #11816 (http://bugs.mysql.com/11816))
      * ALTER  TABLE  db_name.t RENAME t did not move the table to
        default database unless the new name was qualified with the
        database name. (Bug #11493 (http://bugs.mysql.com/11493))
      * Spatial  index  corruption  could occur during updates.
        (Bug #9645 (http://bugs.mysql.com/9645))
      * If a DROP DATABASE fails on a master server due to the presence
        of a non-database file in the database directory, the master
        have the database tables deleted, but not the slaves. To deal
        with failed database drops, we now write DROP TABLE statements
        to the binary log for the tables so that they are dropped on
        slaves.  (Bug #4680  (http://bugs.mysql.com/4680))
      * DELETE or UPDATE for an indexed MyISAM table could fail. This
        was due to a change in end-space comparison behavior from 4.0 to
        4.1. (Bug #12565 (http://bugs.mysql.com/12565))
      * The ARCHIVE storage engine does not support deletes, but it was
        possible to delete by using DELETE or TRUNCATE TABLE with a
        FEDERATED table that points to an ARCHIVE table.
        (Bug #12836 (http://bugs.mysql.com/12836))
      * Queries that created implicit temporary tables could return
        incorrect column types for some columns.
        (Bug #11718 (http://bugs.mysql.com/11718))
      * An optimizer estimate of zero rows for a non-empty InnoDB table
        used in a left or right join could cause incomplete rollback for
        the table. (Bug #12779 (http://bugs.mysql.com/12779))
      * A SELECT DISTINCT query with a constant value for one of the
        columns would return only a single row.
        (Bug  #12625  (http://bugs.mysql.com/12625))
      * Users created using an IP address or other alias rather than a
        hostname listed in /etc/hosts could not set their own passwords.
        (Bug #12302   (http://bugs.mysql.com/12302))
      * NDB Cluster: An ALTER TABLE command caused loss of data stored
        prior to the issuing of the command.
        (Bug #12118 (http://bugs.mysql.com/12118))
      * MEMORY tables using B-Tree index on 64-bit platforms could
        produce false table is full errors.
        (Bug #12460 (http://bugs.mysql.com/12460))
      * MySQL failed to compile when --with-ndb-ccflags was specified.
        (Bug #11538 (http://bugs.mysql.com/11538))
      * On Windows when the --innodb_buffer_pool_awe_mem_mb option has
        been given, the server detects whether AWE support is available
        and has been compiled into the server, and displays an
        appropriate error message if not.
        (Bug #6581 (http://bugs.mysql.com/6581))


Enjoy!
Joerg Bruehe

--
Joerg Bruehe, Senior Production Engineer
MySQL AB, www.mysql.com


--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to