Patch approved.
Luis Soares wrote:
> #At file:///home/lsoares/Workspace/bzr/work/bugfixing/49482/mysql-5.1-bugteam/ based
> on revid:davi.arnaut@stripped
>
>
> === modified file 'sql/log_event.cc'
> --- a/sql/log_event.cc 2009-11-21 13:02:18 +0000
> +++ b/sql/log_event.cc 2009-12-06 04:51:12 +0000
> @@ -8708,6 +8708,20 @@ static bool record_compare(TABLE *table)
> }
> }
>
> + /**
> + Check if we are using MyISAM.
> +
> + If this is a myisam table, then we cannot do a memcmp
> + right away because for some nulled fields there can still
> + be old values in the row (null bits for bit fields or values
> + for char like fields) despite the fact that the null bit is
> + set. As such, plain memory contents comparison cannot be
> + assured to work. See: BUG#49482 and BUG#49481.
> + */
> +
Please, improve a little bit the comment. Maybe say that some engines,
in particular myisam, do a logical update when setting a field as null
thus keeping the old value and making the memory comparison infeasible.
Have you checked if there are other cases in which the update/change is logical?
Cheers.