Functionality added or changed:
Replication: The way the time zone information is stored in the binary log was changed, so that it is now possible to have a replication master and slave running with different global time zones. A disadvantage is that replication from 5.0.4 masters to pre-5.0.4 slaves is impossible.
        Added ENGINE=MyISAM table option when
        creating mysql.proc table in
        mysql_create_system_tables script to make
        sure the table is created as a MyISAM table
        even if the default storage engine has been changed.
       (Bug#9496)
        SHOW CREATE TABLE for an
        INFORMATION_SCHEMA table no longer prints a
        MAX_ROWS value because the value has no
        meaning.
       (Bug#8941)
        Invalid DEFAULT values for
        CREATE TABLE now generate errors.
       (Bug#5903)
        Added --show-table-type option
        to mysqlshow, to display a column indicating
        the table type, as in SHOW FULL TABLES.
       (Bug#5036)
        New configuration directives !include and
        !includedir implemented for including option
        files and searching directories for option files. See
        Section 4.2.3.3, “Using Option Files”, for usage.
      
        Added --with-big-tables
        compilation option to configure. (Previously
        it was necessary to pass -DBIG_TABLES to the
        compiler manually in order to enable large table support.) See
        Section 2.16.2, “Typical configure Options”, for details.
      
Bugs fixed:
Security Fix: 
        Information in INFORMATION_SCHEMA could be
        exposed to a user with insufficient privileges.
       (Bug#7214)
MySQL Cluster: 
        The commit count cache for NDB was
        not properly invalidated when deleting a record using a cursor.
       (Bug#8585)
Replication: 
        If, on a replication master, a
        LOAD DATA
        INFILE operation was interrupted (by, for example, an
        integrity constraint violation or killed connection), the slave
        skipped the LOAD DATA
        INFILE entirely, thus missing changes if this command
        permanently inserted or updated table records before being
        interrupted.
       (Bug#3247)
mysql.server no longer uses nonportable alias command or LSB functions. (Bug#9852)
        A server installed as a Windows service and started with
        --shared-memory could not be
        stopped.
       (Bug#9665)
        Selecting a BIT column failed if
        the binary client/server protocol was used.
       (Bug#9608)
        Creating a PRIMARY KEY on a table having a
        BIT column caused the server to
        crash.
       (Bug#9571)
        ENUM and SET
        columns in InnoDB tables were treated
        incorrectly as character strings. This bug did not manifest
        itself with latin1 collations, but it caused
        malfunction with utf8. Old tables will
        continue to work. In new tables,
        ENUM and SET
        will be stored internally as unsigned integers.
       (Bug#9526)
        An error in division of floating point numbers could cause nine
        zeros (000000000) to be inserted in the
        middle of the quotient.
       (Bug#9501)
        Fixed option-parsing code for the embedded server to understand
        K, M, and
        G suffixes for the
        net_buffer_length and
        max_allowed_packet options.
       (Bug#9472)
Some user variables were not being handled with “implicit” coercibility. (Bug#9425)
        Using CREATE TABLE
        ... SELECT or
        INSERT INTO ...
        SELECT to select from multiple-table view caused the
        server to crash.
       (Bug#9398, Bug#8703)
        Multiple executions of a prepared statement involving a join of
        an INFORMATION_SCHEMA table with another
        table could lead to a crash of the server.
       (Bug#9383)
        An InnoDB test suite failure was caused by a
        locking conflict between two server instances at server shutdown
        or startup. This conflict on advisory locks appears to be the
        result of a bug in the operating system; these locks should be
        released when the files are closed, but somehow that does not
        always happen immediately in Linux.
       (Bug#9381)
        Allow extra HKSCS and cp950 characters (big5
        extension characters) to be accepted in big5
        columns.
       (Bug#9357)
        The value of the CHARACTER_MAXIMUM_LENGTH and
        CHARACTER_OCTET_LENGTH columns of the
        INFORMATION_SCHEMA.COLUMNS table
        must be NULL for numeric columns, but were
        not.
       (Bug#9344)
        INFORMATION_SCHEMA tables had an implicit
        upper limit for the number of rows. As a result, not all data
        could be returned for some queries.
       (Bug#9317)
        InnoDB: True
        VARCHAR:
        InnoDB stored the 'position' of a row wrong
        in a column prefix primary key index; this could cause MySQL to
        complain ERROR 1032: Can't find record … in
        an update of the primary key, and also some ORDER
        BY or DISTINCT queries.
       (Bug#9314)
        ORDER BY sometimes caused incorrect sorting
        of UTF8 data.
       (Bug#9309)
        The utf8_spanish2_ci and
        ucs2_spanish2_ci collations no longer
        consider r equal to rr .
        If you upgrade to this version from an earlier version, you
        should rebuild the indexes of any affected tables.
       (Bug#9269)
        CREATE OR REPLACE VIEW and
        ALTER VIEW now require the
        CREATE VIEW and
        priv privileges, not
        CREATE VIEW and
        DELETE.
        (DELETE is a row-level privilege,
        not a table-level privilege.)
       (Bug#9260)
        Using GROUP BY on a decimal expression caused
        the server to crash.
       (Bug#9210)
        mysqldump dumped core when invoked with
        --tmp and
        --single-transaction options
        and a nonexistent table name.
       (Bug#9175)
        Calling mysql_stmt_close() for a
        single-row result set could cause the server to crash.
       (Bug#9159)
        Setting the max_error_count
        system variable to 0 resulted in a setting of 1.
       (Bug#9072)
        The use of XOR together with NOT
        ISNULL() erroneously resulted in some outer joins
        being converted to inner joins by the optimizer.
       (Bug#9017)
Two prepared statements for single-row result sets being open simultaneously caused a Commands out of sync error error. (Bug#8880)
        Extraneous comparisons between NULL values in
        indexed columns were performed by the optimzer for operators
        such as = that are never true for
        NULL.
       (Bug#8877)
In the client/server protocol for prepared statements, reconnection failed when the connection was killed with reconnection enabled. (Bug#8866)
        In prepared statements, subqueries containing parameters were
        erroneously treated as const
        tables during preparation, resulting in a server crash.
       (Bug#8807)
        Do not try to space-pad BLOB
        columns containing ucs2 characters.
       (Bug#8771)
This regression was introduced by Bug#7350.
        The warning message from
        GROUP_CONCAT() did not always
        indicate the correct number of lines.
       (Bug#8681)
        InnoDB: SQL statements were not rolled back
        on error.
       (Bug#8650)
        Too many rows were returned from queries that combined
        ROLLUP and LIMIT if
        SQL_CALC_FOUND_ROWS was given.
       (Bug#8617)
        Incorrect results were returned from queries that combined
        SELECT
        DISTINCT, GROUP BY , and
        ROLLUP.
       (Bug#8616)
        Queries that combined
        SELECT
        DISTINCT, SUM(), and
        ROLLUP could cause the MySQL server to crash.
       (Bug#8615)
        The tee command could sometimes cause the
        mysql client to crash.
       (Bug#8499)
        DROP TABLE did not drop triggers
        that were defined for the table. DROP
        DATABASE did not drop triggers in the database.
       (Bug#6559, Bug#5859)
        Added linking with libsupc++ on Fedora Core 3
        to get language support functions.
       (Bug#6554)
Unions between binary and nonbinary columns failed due to a collation coercibility problem. (Bug#6519)
        Using CONVERT('0000-00-00',DATE)
        or CAST('0000-00-00' as DATE)
        with the NO_ZERO_DATE SQL mode
        enabled now produces a warning.
       (Bug#6145)
        TRADITIONAL SQL mode should
        prevent inserts where a column with no default value is omitted
        or set to a value of DEFAULT; however, in
        some cases, this restriction was not enforced.
       (Bug#5986)
        Inserting a zero date in a DATE,
        DATETIME or
        TIMESTAMP column during
        TRADITIONAL mode now produces
        an error.
       (Bug#5933)
        CAST() now produces warnings when
        casting incorrect INTEGER and
        CHAR values. This also applies to
        implicit string to number
        casts.
       (Bug#5912)
        An error now occurs if you try to insert an invalid value via a
        stored procedure in STRICT mode.
       (Bug#5907)
        STR_TO_DATE() now produces errors
        in strict mode (and warnings otherwise) when given an illegal
        argument.
       (Bug#5902)
        Inserting a zero date into a
        DATETIME column in
        TRADITIONAL mode now produces
        an error.
      
        ALTER TABLE now fails in
        STRICT mode if the alteration generates
        warnings.
      

User Comments
Add your own comment.