• tsmith@siva.hindu.god's avatar
    NULL MERGE this to 5.1 · 8abc9536
    tsmith@siva.hindu.god authored
    Apply the following InnoDB snapshots:
    innodb-5.0-ss1319
    innodb-5.0-ss1331
    innodb-5.0-ss1333
    innodb-5.0-ss1341
    
    Fixes:
    - Bug #21409: Incorrect result returned when in READ-COMMITTED with query_cache ON
      At low transaction isolation levels we let each consistent read set
      its own snapshot.
    - Bug #23666: strange Innodb_row_lock_time_% values in show status; also millisecs wrong
      On Windows ut_usectime returns secs and usecs relative to the UNIX
      epoch (which is Jan, 1 1970).
    
    - Bug #25494: LATEST DEADLOCK INFORMATION is not always cleared
      lock_deadlock_recursive(): When the search depth or length is exceeded,
      rewind lock_latest_err_file and display the two transactions at the
      point of aborting the search.
    
    - Bug #25927: Foreign key with ON DELETE SET NULL on NOT NULL can crash server
      Prevent ALTER TABLE ... MODIFY ... NOT NULL on columns for which
      there is a foreign key constraint ON ... SET NULL.
    
    - Bug #26835: Repeatable corruption of utf8-enabled tables inside InnoDB
      The bug could be reproduced as follows:
    
      Define a table so that the first column of the clustered index is
      a VARCHAR or a UTF-8 CHAR in a collation where sequences of bytes
      of differing length are considered equivalent.
    
      Insert and delete a record.  Before the delete-marked record is
      purged, insert another record whose first column is of different
      length but equivalent to the first record.  Under certain conditions,
      the insertion can be incorrectly performed as update-in-place.
    
      Likewise, an operation that could be done as update-in-place can
      unnecessarily be performed as delete and insert, but that would not
      cause corruption but merely degraded performance.
    8abc9536
lock0lock.c 138 KB