summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Golubchik <serg@mariadb.org>2022-05-25 19:20:30 +0200
committerNikita Malyavin <nikitamalyavin@gmail.com>2022-08-23 16:36:25 +0300
commit24b7e3acf26325a855e9e4445fb809cabfa493ba (patch)
treee3def09fef0e66802b1b9e1d0806b4d760789b1e
parent063033763089862941871981bf9cdfc187360c32 (diff)
downloadmariadb-git-24b7e3acf26325a855e9e4445fb809cabfa493ba.tar.gz
remove handler::open_read_view()
use ht->start_consistent_snapshot() instead
-rw-r--r--sql/handler.h1
-rw-r--r--sql/sql_table.cc2
-rw-r--r--storage/innobase/handler/ha_innodb.cc14
-rw-r--r--storage/innobase/handler/ha_innodb.h1
4 files changed, 1 insertions, 17 deletions
diff --git a/sql/handler.h b/sql/handler.h
index e65dbfdbe16..a0cf57dfd76 100644
--- a/sql/handler.h
+++ b/sql/handler.h
@@ -3526,7 +3526,6 @@ public:
/** to be actually called to get 'check()' functionality*/
int ha_check(THD *thd, HA_CHECK_OPT *check_opt);
int ha_repair(THD* thd, HA_CHECK_OPT* check_opt);
- virtual void open_read_view(){}
void ha_start_bulk_insert(ha_rows rows, uint flags= 0)
{
DBUG_ENTER("handler::ha_start_bulk_insert");
diff --git a/sql/sql_table.cc b/sql/sql_table.cc
index 770b9053fc5..5597e4102b3 100644
--- a/sql/sql_table.cc
+++ b/sql/sql_table.cc
@@ -11503,7 +11503,7 @@ copy_data_between_tables(THD *thd, TABLE *from, TABLE *to,
if (ht->start_consistent_snapshot)
{
thd->tx_isolation= ISO_REPEATABLE_READ;
- from->file->open_read_view();
+ error= ht->start_consistent_snapshot(ht, thd);
}
}
diff --git a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc
index a8953e6209c..7ff81e02247 100644
--- a/storage/innobase/handler/ha_innodb.cc
+++ b/storage/innobase/handler/ha_innodb.cc
@@ -21208,17 +21208,3 @@ buf_pool_size_align(
return (size / m + 1) * m;
}
}
-
-void ha_innobase::open_read_view()
-{
- trx_t *trx= m_prebuilt->trx;
- auto thd_iso= thd_get_trx_isolation(m_user_thd);
-
- trx->isolation_level= innobase_map_isolation_level(thd_iso);
- ut_ad(trx->isolation_level == TRX_ISO_REPEATABLE_READ);
- ut_ad(!trx_is_started(trx));
-
- trx_start_if_not_started_xa(trx, false);
-
- trx->read_view.open(m_prebuilt->trx);
-}
diff --git a/storage/innobase/handler/ha_innodb.h b/storage/innobase/handler/ha_innodb.h
index a334c8a9b6c..6a4948256a0 100644
--- a/storage/innobase/handler/ha_innodb.h
+++ b/storage/innobase/handler/ha_innodb.h
@@ -444,7 +444,6 @@ public:
const KEY_PART_INFO& old_part,
const KEY_PART_INFO& new_part) const override;
- void open_read_view() override;
protected:
dberr_t innobase_get_autoinc(ulonglong* value);
dberr_t innobase_lock_autoinc();