Commit 774a1955 authored by unknown's avatar unknown

Bug#27127, Incorrect behaviour of timestamp column with DEFAULT CURRENT_TIMESTAMP

correct the bitmap_set_bit when a field is timestamp and described 
with default CURRENT_TIMESTAMP or on update CURRENT_TIMESTAMP,
then it will reduce a little time cost when the field doesnot need 
to write.


sql/sql_update.cc:
  here table->timestamp_field represent only the timestamp field related to CURRENT_TIMESTAMP,
  when the timestamp_field_type is 0 or 1, it need not to write the field data further.
parent 7af5a3e9
...@@ -201,8 +201,10 @@ int mysql_update(THD *thd, ...@@ -201,8 +201,10 @@ int mysql_update(THD *thd,
table->timestamp_field_type= TIMESTAMP_NO_AUTO_SET; table->timestamp_field_type= TIMESTAMP_NO_AUTO_SET;
else else
{ {
bitmap_set_bit(table->write_set, if (table->timestamp_field_type == TIMESTAMP_AUTO_SET_ON_UPDATE ||
table->timestamp_field->field_index); table->timestamp_field_type == TIMESTAMP_AUTO_SET_ON_BOTH)
bitmap_set_bit(table->write_set,
table->timestamp_field->field_index);
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment