mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
Merge 10.4 into 10.5
This commit is contained in:
@ -706,7 +706,9 @@ longlong SEQUENCE::next_value(TABLE *table, bool second_round, int *error)
|
||||
{
|
||||
longlong res_value, org_reserved_until, add_to;
|
||||
bool out_of_values;
|
||||
THD *thd= table->in_use;
|
||||
DBUG_ENTER("SEQUENCE::next_value");
|
||||
DBUG_ASSERT(thd);
|
||||
|
||||
*error= 0;
|
||||
if (!second_round)
|
||||
@ -771,7 +773,8 @@ longlong SEQUENCE::next_value(TABLE *table, bool second_round, int *error)
|
||||
DBUG_RETURN(next_value(table, 1, error));
|
||||
}
|
||||
|
||||
if (unlikely((*error= write(table, 0))))
|
||||
if (unlikely((*error= write(table, thd->variables.binlog_row_image !=
|
||||
BINLOG_ROW_IMAGE_MINIMAL))))
|
||||
{
|
||||
reserved_until= org_reserved_until;
|
||||
next_free_value= res_value;
|
||||
@ -838,7 +841,9 @@ int SEQUENCE::set_value(TABLE *table, longlong next_val, ulonglong next_round,
|
||||
longlong org_reserved_until= reserved_until;
|
||||
longlong org_next_free_value= next_free_value;
|
||||
ulonglong org_round= round;
|
||||
THD *thd= table->in_use;
|
||||
DBUG_ENTER("SEQUENCE::set_value");
|
||||
DBUG_ASSERT(thd);
|
||||
|
||||
write_lock(table);
|
||||
if (is_used)
|
||||
@ -877,7 +882,8 @@ int SEQUENCE::set_value(TABLE *table, longlong next_val, ulonglong next_round,
|
||||
needs_to_be_stored)
|
||||
{
|
||||
reserved_until= next_free_value;
|
||||
if (write(table, 0))
|
||||
if (write(table,
|
||||
thd->variables.binlog_row_image != BINLOG_ROW_IMAGE_MINIMAL))
|
||||
{
|
||||
reserved_until= org_reserved_until;
|
||||
next_free_value= org_next_free_value;
|
||||
|
Reference in New Issue
Block a user