diff options
author | tomas@whalegate.ndb.mysql.com <> | 2008-01-30 16:08:25 +0100 |
---|---|---|
committer | tomas@whalegate.ndb.mysql.com <> | 2008-01-30 16:08:25 +0100 |
commit | 07fafa2b61c4508f0a7a5e3655efec9a8f1892ee (patch) | |
tree | 0997133dffce23044a2309ec3dce37f404660169 /sql/log_event.cc | |
parent | dbcd4d9ec854a6a7ce29e34e356f8bafbe4bd02a (diff) | |
parent | 7b101e4860928a89459dfcad08d64b13cf44a86d (diff) | |
download | mariadb-git-07fafa2b61c4508f0a7a5e3655efec9a8f1892ee.tar.gz |
Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
Diffstat (limited to 'sql/log_event.cc')
-rw-r--r-- | sql/log_event.cc | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/sql/log_event.cc b/sql/log_event.cc index cf03dd5bf44..a03f8883ce5 100644 --- a/sql/log_event.cc +++ b/sql/log_event.cc @@ -7848,7 +7848,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) { DBUG_PRINT("info",("ha_index_init returns error %d",error)); table->file->print_error(error, MYF(0)); - DBUG_RETURN(error); + goto err; } /* Fill key data for the row */ @@ -7881,7 +7881,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) DBUG_PRINT("info",("no record matching the key found in the table")); table->file->print_error(error, MYF(0)); table->file->ha_index_end(); - DBUG_RETURN(error); + goto err; } /* @@ -7909,7 +7909,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) if (table->key_info->flags & HA_NOSAME) { table->file->ha_index_end(); - DBUG_RETURN(0); + goto ok; } /* @@ -7941,7 +7941,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) DBUG_PRINT("info",("no record matching the given row found")); table->file->print_error(error, MYF(0)); table->file->ha_index_end(); - DBUG_RETURN(error); + goto err; } } @@ -7962,7 +7962,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) DBUG_PRINT("info",("error initializing table scan" " (ha_rnd_init returns %d)",error)); table->file->print_error(error, MYF(0)); - DBUG_RETURN(error); + goto err; } /* Continue until we find the right record or have made a full loop */ @@ -7986,7 +7986,7 @@ int Rows_log_event::find_row(const Relay_log_info *rli) " (rnd_next returns %d)",error)); table->file->print_error(error, MYF(0)); table->file->ha_rnd_end(); - DBUG_RETURN(error); + goto err; } } while (restart_count < 2 && record_compare(table)); @@ -8006,10 +8006,14 @@ int Rows_log_event::find_row(const Relay_log_info *rli) table->file->ha_rnd_end(); DBUG_ASSERT(error == HA_ERR_END_OF_FILE || error == HA_ERR_RECORD_DELETED || error == 0); - DBUG_RETURN(error); + goto err; } - +ok: + table->default_column_bitmaps(); DBUG_RETURN(0); +err: + table->default_column_bitmaps(); + DBUG_RETURN(error); } #endif |