List:Falcon Storage Engine« Previous MessageNext Message »
From:Christopher Powers Date:November 9 2008 8:20am
Subject:Re: Review fix for Bug#39696, serial log corruption
View as plain text  
Kevin Lewis wrote:
> Chris,
> 
> Good work here.
> 
> Shouldn't this comment read;
> 
> -    // Flush record data, if any, and force the creation of a new 
> serial log window
> +    // Flush record data, if any, and force the creation of a new 
> serial log record

Actually, both are true, but your suggestion is clearer.

> What you have here is a fix for chilling records that avoids the problem 
> of flushing a zero length record by not doing it.  But if a zero length 
> serial log record is flushed anywhere else, will the reading of it 
> become one byte off and cause an assert?  In that case, there are 
> probably other related bugs.

Yes. Now that record chill/thaw works, we still have a problem with 
index chill/thaw. This assert in SRLUpdateIndexes::thaw() fails:

      ASSERT(type == srlUpdateIndex)

It happens reliably with the falcon_chill_thaw stress test, with or 
without concurrent record chill/thaw. I'd like to talk about it soon...


> 
> Kevin
> 
> Christopher Powers wrote:
>> Kevin,
>>
>> Can you have a look at this commit: 
>> http://lists.mysql.com/commits/58261 ?
>>
>> The falcon_chill_thaw stress test now completes on Xeno when it has 
>> never done so before. I've pushed the fix to falcon-chris to see how 
>> it does on Pushbuild2.
>>
>> SerialLog::flush() bears a bit more scrutiny, and should be reviewed 
>> to see how it handles zero-byte flushes.
>>
>> Chris
>>
> 
Thread
Review fix for Bug#39696, serial log corruptionChristopher Powers9 Nov
  • Re: Review fix for Bug#39696, serial log corruptionKevin Lewis9 Nov
    • Re: Review fix for Bug#39696, serial log corruptionChristopher Powers9 Nov
      • Re: Review fix for Bug#39696, serial log corruptionKevin Lewis10 Nov
        • Re: Review fix for Bug#39696, serial log corruptionChristopher Powers10 Nov