Commit a3b4f575 authored by Monty's avatar Monty

Reset table->record[1] early for sequences to fix comparision of innodb row

Added also suppression of openssl warnings from valgrind
parent 7204f66c
......@@ -1737,3 +1737,34 @@
...
}
#
# OpenSSL 1.0.1k problems
#
{
OPENSSL 1.0.1k crypto leak
Memcheck:Leak
match-leak-kinds: reachable
fun:malloc
fun:CRYPTO_malloc
fun:ENGINE_ADD
}
{
OPENSSL 1.0.1k crypto leak
Memcheck:Leak
match-leak-kinds: reachable
fun:malloc
fun:CRYPTO_malloc
fun:ENGINE_new
}
{
OPENSSL 1.0.1k crypto leak2
Memcheck:Leak
match-leak-kinds: reachable
fun:malloc
fun:CRYPTO_malloc
fun:sk_new
obj:/lib64/libcrypto.so*
fun:ENGINE_ADD
}
......@@ -112,6 +112,12 @@ int ha_sequence::open(const char *name, int mode, uint flags)
}
else
table->m_needs_reopen= true;
/*
The following is needed to fix comparison of rows in
ha_update_first_row() for InnoDB
*/
memcpy(table->record[1], table->s->default_values, table->s->reclength);
}
DBUG_RETURN(error);
}
......
......@@ -6066,7 +6066,7 @@ int handler::update_first_row(uchar *new_data)
/*
We have to do the memcmp as otherwise we may get error 169 from InnoDB
*/
if (memcmp(table->record[0], table->record[1], table->s->reclength))
if (memcmp(new_data, table->record[1], table->s->reclength))
error= update_row(table->record[1], new_data);
}
end_error= ha_rnd_end();
......
......@@ -594,12 +594,6 @@ int sequence_definition::write(TABLE *table, bool all_fields)
else
table->rpl_write_set= &table->s->all_set;
/*
The following is needed to fix comparison of rows in
ha_update_first_row() for InnoDB
*/
memcpy(table->record[1],table->s->default_values, table->s->reclength);
/* Update table */
save_write_set= table->write_set;
save_read_set= table->read_set;
......
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