Functionality added or changed:
Incompatible Change: 
        Prior to this release, when DATE
        values were compared with
        DATETIME values, the time portion
        of the DATETIME value was
        ignored, or the comparison could be performed as a string
        compare. Now a DATE value is
        coerced to the DATETIME type by
        adding the time portion as 00:00:00. To mimic
        the old behavior, use the CAST()
        function as shown in this example: SELECT
        .
       (Bug#28929)date_col = CAST(NOW() AS DATE) FROM
        table;
Incompatible Change: 
        INSERT DELAYED is now downgraded
        to a normal INSERT if the
        statement uses functions that access tables or triggers, or that
        is called from a function or a trigger.
      
This was done to resolve the following interrelated issues:
            The server could abort or deadlock for
            INSERT DELAYED statements for
            which another insert was performed implicitly (for example,
            via a stored function that inserted a row).
          
            A trigger using an INSERT
            DELAYED caused the error INSERT DELAYED
            can't be used with table ... because it is locked with LOCK
            TABLES although the target table was not
            actually locked.
          
            INSERT DELAYED into a table
            with a BEFORE INSERT or AFTER
            INSERT trigger gave an incorrect
            NEW pseudocolumn value and caused the
            server to deadlock or abort.
          
Bugs fixed:
Security Fix: A malformed password packet in the connection protocol could cause the server to crash. Thanks for Dormando for reporting this bug, and for providing details and a proof of concept. (Bug#28984, CVE-2007-3780)
Security Fix: Use of a view could allow a user to gain update privileges for tables in other databases. (Bug#27878, CVE-2007-3782)
Security Fix: 
        The requirement of the DROP
        privilege for RENAME TABLE was
        not enforced.
       (Bug#27515, CVE-2007-2691)
Security Fix: 
        If a stored routine was declared using SQL SECURITY
        INVOKER, a user who invoked the routine could gain
        privileges.
       (Bug#27337, CVE-2007-2692)
Security Fix: 
        CREATE TABLE LIKE did not require any
        privileges on the source table. Now it requires the
        SELECT privilege.
      
        In addition, CREATE TABLE LIKE was not
        isolated from alteration by other connections, which resulted in
        various errors and incorrect binary log order when trying to
        execute concurrently a CREATE TABLE LIKE
        statement and either DDL statements on the source table or DML
        or DDL statements on the target table.
       (Bug#23667, Bug#25578, CVE-2007-3781)
Incompatible Change: 
        The names of stored functions referenced by views were not
        properly displayed by SHOW CREATE
        VIEW.
      
The fix corrects a problem introduced by Bug#23491. There is an incompatibility when upgrading from versions affected by that bug fix (MySQL 5.0.40 through 5.0.43, MySQL 5.1.18 through 5.1.19): If you use mysqldump before upgrading from an affected version and reload the data after upgrading to a higher version, you must drop and recreate your views. (Bug#28605)
Incompatible Change: 
        When mysqldump was run with the
        --delete-master-logs option,
        binary log files were deleted before it was known that the dump
        had succeeded, not after. (The method for removing log files
        used RESET MASTER prior to the
        dump. This also reset the binary log sequence numbering to
        .000001.) Now mysqldump
        flushes the logs (which creates a new binary log number with the
        next sequence number), performs the dump, and then uses
        PURGE BINARY LOGS to remove the
        log files older than the new one. This also preserves log
        numbering because the new log with the next number is generated
        and only the preceding logs are removed. However, this may
        affect applications if they rely on the log numbering sequence
        being reset.
       (Bug#24733)
Incompatible Change: 
        The use of an ORDER BY or
        DISTINCT clause with a query containing a
        call to the GROUP_CONCAT()
        function caused results from previous queries to be redisplayed
        in the current result. The fix for this includes replacing a
        BLOB value used internally for
        sorting with a VARCHAR. This
        means that for long results (more than 65,535 bytes), it is
        possible for truncation to occur; if so, an appropriate warning
        is issued.
       (Bug#23856, Bug#28273)

