• Timothy Smith's avatar
    Applying InnoDB snashot 5.0-ss4007, part 2. Fixes · fd5642b6
    Timothy Smith authored
    Bug #18828: If InnoDB runs out of undo slots, it returns misleading 'table is full'
    
    This is a backport of code already in 5.1+.  The error message change referred
    to in the detailed revision comments is still pending.
    
    Detailed revision comments:
    
    r3937 | calvin | 2009-01-15 03:11:56 +0200 (Thu, 15 Jan 2009) | 17 lines
    branches/5.0:
    
    Backport the fix for Bug#18828. Return DB_TOO_MANY_CONCURRENT_TRXS
    when we run out of UNDO slots in the rollback segment. The backport
    is requested by MySQL under bug#41529 - Safe handling of InnoDB running
    out of undo log slots.
    
    This is a partial fix since the MySQL error code requested to properly
    report the error condition back to the client has not yet materialized.
    Currently we have #ifdef'd the error code translation in ha_innodb.cc.
    This will have to be changed as and when MySQl add the new requested
    code or an equivalent code that we can then use.
    
    Given the above, currently we will get the old behavior, not the
    "fixed" and intended behavior.
    
    Approved by:	Heikki (on IM)
    fd5642b6
trx0undo.h 19.1 KB