Hi,
Alexander Nozdrin wrote:
> Hi,
>
> thanks for working on this.
>
> I'm generally okay with your patch, there is only one thing I haven't
> understood yet:
>
> On 28 January 2008 16:11:58 Davi Arnaut wrote:
>> diff -Nrup a/sql/event_db_repository.cc b/sql/event_db_repository.cc ---
>> a/sql/event_db_repository.cc 2007-11-01 18:52:50 -02:00
>> +++ b/sql/event_db_repository.cc 2008-01-28 11:11:50 -02:00
>> @@ -218,9 +218,13 @@ mysql_event_fill_row(THD *thd,
>> */
>> if (et->body_changed)
>> {
>> + LEX_STRING sql_mode;
>> +
>> DBUG_ASSERT(sp->m_body.str);
>>
>> - fields[ET_FIELD_SQL_MODE]->store((longlong)thd->variables.sql_mode,
>> TRUE); + sys_var_thd_sql_mode::symbolic_mode_representation(thd,
>> thd->variables.sql_mode, +
>> &sql_mode); + fields[ET_FIELD_SQL_MODE]->store(sql_mode.str,
>> sql_mode.length, scs);
>>
>> if (fields[f_num= ET_FIELD_BODY]->store(sp->m_body.str,
>> sp->m_body.length,
>
> why did you change that?
>
> Could you please ping me when you're on IRC so that we can discuss this issue.
>
AFAICS, nothing guarantees that sql_mode and the set field will have the
same bit pattern, so it's generally safer to use the string version
which will also do a better job of error detection (spew out a warning
or error if the bit is not found in the set).
Regards,
--
Davi Arnaut, Software Engineer
MySQL Inc, www.mysql.com
Are you MySQL certified? www.mysql.com/certification