mirror of
https://github.com/MariaDB/server.git
synced 2025-01-31 02:51:44 +01:00
Fix for failing ps_7ndb.test, force write_row when batching inserts so that update of primary key is done before next value to insert
This commit is contained in:
parent
e0fe3e75c7
commit
ad9fba9f38
1 changed files with 4 additions and 1 deletions
|
@ -1894,6 +1894,7 @@ int ha_ndbcluster::write_row(byte *record)
|
|||
m_bulk_insert_not_flushed= TRUE;
|
||||
if ((m_rows_to_insert == (ha_rows) 1) ||
|
||||
((m_rows_inserted % m_bulk_insert_rows) == 0) ||
|
||||
m_primary_key_update ||
|
||||
set_blob_value)
|
||||
{
|
||||
THD *thd= current_thd;
|
||||
|
@ -2018,17 +2019,19 @@ int ha_ndbcluster::update_row(const byte *old_data, byte *new_data)
|
|||
if (delete_res)
|
||||
{
|
||||
DBUG_PRINT("info", ("delete failed"));
|
||||
// Undo write_row(new_data)
|
||||
DBUG_RETURN(delete_res);
|
||||
}
|
||||
// Insert new row
|
||||
DBUG_PRINT("info", ("delete succeded"));
|
||||
m_primary_key_update= TRUE;
|
||||
insert_res= write_row(new_data);
|
||||
m_primary_key_update= FALSE;
|
||||
if (insert_res)
|
||||
{
|
||||
DBUG_PRINT("info", ("insert failed"));
|
||||
if (trans->commitStatus() == NdbConnection::Started)
|
||||
{
|
||||
// Undo write_row(new_data)
|
||||
m_primary_key_update= TRUE;
|
||||
insert_res= write_row((byte *)old_data);
|
||||
m_primary_key_update= FALSE;
|
||||
|
|
Loading…
Add table
Reference in a new issue