• Timothy Smith's avatar
    Fix a few problems after latest bunch of InnoDB snapshot changes: · e6100a22
    Timothy Smith authored
    The binlog_innodb test was sensitive to what tests ran before it.  Now run
    FLUSH STATUS before performing operations that need to be checked.
    
    sys_var_thd_ulong::update() was improperly casting an option value from
    ulonglong to ulong before comparing it to the max allowed value.  On systems
    where ulong and ulonglong are of different size, this caused values greater
    than ULONG_MAX to wrap around (not be truncated to ULONG_MAX, which appears to
    have been the intention of the original coder), and caused some checks to work
    incorrectly.  This wasn't generally visible to the user, because later checks
    would prevent the wrapped-around value from being used.  But it caused warning
    messages to differ between 32- and 64-bit platforms.  Fix is to just remove the
    cast.  Also added a DBUG_ASSERT to ensure that the value really is capped
    properly before finally stuffing it into the ulong.
    e6100a22
binlog_innodb.test 3.93 KB