summaryrefslogtreecommitdiff
path: root/innobase/lock
diff options
context:
space:
mode:
authorunknown <marko@hundin.mysql.fi>2004-11-03 21:32:48 +0200
committerunknown <marko@hundin.mysql.fi>2004-11-03 21:32:48 +0200
commitd07f96cf4987ec7b41a5d9ee3f2180e32770342a (patch)
tree0d981727fb0b5fe6050d51af4a11d69d6ea3c9d0 /innobase/lock
parent37e92c9b3cc7781fa110839ebccc1bdad9ec54aa (diff)
downloadmariadb-git-d07f96cf4987ec7b41a5d9ee3f2180e32770342a.tar.gz
InnoDB: commit after every 10000 rows in ALTER TABLE
innobase/include/lock0lock.h: Added function lock_get_ix_table() innobase/include/row0mysql.h: Added parameter "table" to row_lock_table_for_mysql() innobase/lock/lock0lock.c: Added function lock_get_ix_table() innobase/row/row0mysql.c: Added parameter "table" to row_lock_table_for_mysql() sql/ha_innodb.cc: write_row(): commit every 10000 rows in ALTER TABLE sql/ha_innodb.h: Added member variable num_write_row
Diffstat (limited to 'innobase/lock')
-rw-r--r--innobase/lock/lock0lock.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/innobase/lock/lock0lock.c b/innobase/lock/lock0lock.c
index 68073647248..6f2d58b72c3 100644
--- a/innobase/lock/lock0lock.c
+++ b/innobase/lock/lock0lock.c
@@ -395,6 +395,19 @@ lock_rec_get_nth_bit(
return(ut_bit_get_nth(b, bit_index));
}
+/*************************************************************************
+Gets the table covered by an IX table lock. */
+
+dict_table_t*
+lock_get_ix_table(
+/*==============*/
+ /* out: the table covered by the lock */
+ lock_t* lock) /* in: table lock */
+{
+ ut_a(lock->type_mode == (LOCK_TABLE | LOCK_IX));
+ return(lock->un_member.tab_lock.table);
+}
+
/*************************************************************************/
#define lock_mutex_enter_kernel() mutex_enter(&kernel_mutex)