summaryrefslogtreecommitdiff
path: root/storage
diff options
context:
space:
mode:
authorunknown <petr/cps@owlet.local>2006-09-15 17:24:13 +0400
committerunknown <petr/cps@owlet.local>2006-09-15 17:24:13 +0400
commit372d1c8c5a82ade48a98ca9c724241ef348eff7b (patch)
tree941901b73008934003e348da1eb5233732e53c0b /storage
parentbba4e89a514b7d61ef04ce012514538ee59dff35 (diff)
parentabbb201661144f2a75d70c32da49dcb1692be412 (diff)
downloadmariadb-git-372d1c8c5a82ade48a98ca9c724241ef348eff7b.tar.gz
Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into mysql.com:/home/cps/mysql/trees/5.1-runtime-new sql/handler.h: Auto merged sql/share/errmsg.txt: Auto merged sql/sql_table.cc: Auto merged storage/csv/ha_tina.cc: Auto merged storage/myisam/ha_myisam.cc: Auto merged
Diffstat (limited to 'storage')
-rw-r--r--storage/csv/ha_tina.cc2
-rw-r--r--storage/myisam/ha_myisam.cc2
-rw-r--r--storage/myisam/mi_write.c8
3 files changed, 6 insertions, 6 deletions
diff --git a/storage/csv/ha_tina.cc b/storage/csv/ha_tina.cc
index ce19202d745..698b7302a81 100644
--- a/storage/csv/ha_tina.cc
+++ b/storage/csv/ha_tina.cc
@@ -162,7 +162,7 @@ static int tina_init_func()
tina_hton.db_type= DB_TYPE_CSV_DB;
tina_hton.create= tina_create_handler;
tina_hton.panic= tina_end;
- tina_hton.flags= HTON_CAN_RECREATE;
+ tina_hton.flags= HTON_CAN_RECREATE | HTON_SUPPORT_LOG_TABLES;
}
return 0;
}
diff --git a/storage/myisam/ha_myisam.cc b/storage/myisam/ha_myisam.cc
index 6a32ba95eee..e73735a3203 100644
--- a/storage/myisam/ha_myisam.cc
+++ b/storage/myisam/ha_myisam.cc
@@ -1783,7 +1783,7 @@ static int myisam_init()
myisam_hton.db_type=DB_TYPE_MYISAM;
myisam_hton.create=myisam_create_handler;
myisam_hton.panic=mi_panic;
- myisam_hton.flags=HTON_CAN_RECREATE;
+ myisam_hton.flags= HTON_CAN_RECREATE | HTON_SUPPORT_LOG_TABLES;
return 0;
}
diff --git a/storage/myisam/mi_write.c b/storage/myisam/mi_write.c
index f16d9471afe..7080875009b 100644
--- a/storage/myisam/mi_write.c
+++ b/storage/myisam/mi_write.c
@@ -167,13 +167,13 @@ int mi_write(MI_INFO *info, byte *record)
/*
Update status of the table. We need to do so after each row write
for the log tables, as we want the new row to become visible to
- other threads as soon as possible. We lock mutex here to follow
- pthread memory visibility rules.
+ other threads as soon as possible. We don't lock mutex here
+ (as it is required by pthread memory visibility rules) as (1) it's
+ not critical to use outdated share->is_log_table value (2) locking
+ mutex here for every write is too expensive.
*/
- pthread_mutex_lock(&share->intern_lock);
if (share->is_log_table)
mi_update_status((void*) info);
- pthread_mutex_unlock(&share->intern_lock);
allow_break(); /* Allow SIGHUP & SIGINT */
DBUG_RETURN(0);