summaryrefslogtreecommitdiff
path: root/storage/innobase/include/que0que.h
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2019-03-11 17:17:24 +0200
committerMarko Mäkelä <marko.makela@mariadb.com>2019-03-11 17:17:24 +0200
commit1ab049e5722975f64d3b8906dd73768898192c00 (patch)
tree94c24a37d4e026e9935c0fa890972945254698b8 /storage/innobase/include/que0que.h
parent3ea49d35bd93c515f3da55b846850ba1125971a0 (diff)
downloadmariadb-git-1ab049e5722975f64d3b8906dd73768898192c00.tar.gz
MDEV-18878 Purge: Optimize away futile table lookups
If a table has been dropped, rebuilt, or its tablespace has been discarded or the table is corrupted, it does not make sense to look up that table again while purging old undo log records. purge_node_t::purge_node_t(): Replaces row_purge_node_create(). que_common_t::que_common_t(): Constructor. row_import_update_index_root(): Remove the constant parameter dict_locked=true, and update the table->def_trx_id in the cache. purge_node_t::unavailable_table_id: The latest unavailable table ID, to avoid future lookups. purge_node_t::def_trx_id: The latest modification of the table identified by unavailable_table_id, or TRX_ID_MAX. purge_node_t::is_skipped(): Determine if a table should be skipped. purge_node_t::skip(): Note that a table should be skipped.
Diffstat (limited to 'storage/innobase/include/que0que.h')
-rw-r--r--storage/innobase/include/que0que.h35
1 files changed, 1 insertions, 34 deletions
diff --git a/storage/innobase/include/que0que.h b/storage/innobase/include/que0que.h
index cf8e48be0af..e1a9606805a 100644
--- a/storage/innobase/include/que0que.h
+++ b/storage/innobase/include/que0que.h
@@ -1,7 +1,7 @@
/*****************************************************************************
Copyright (c) 1996, 2016, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2017, 2018, MariaDB Corporation.
+Copyright (c) 2017, 2019, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
@@ -460,39 +460,6 @@ struct que_fork_t{
/* Flag which is ORed to control structure statement node types */
#define QUE_NODE_CONTROL_STAT 1024
-/* Query graph node types */
-#define QUE_NODE_LOCK 1
-#define QUE_NODE_INSERT 2
-#define QUE_NODE_UPDATE 4
-#define QUE_NODE_CURSOR 5
-#define QUE_NODE_SELECT 6
-#define QUE_NODE_AGGREGATE 7
-#define QUE_NODE_FORK 8
-#define QUE_NODE_THR 9
-#define QUE_NODE_UNDO 10
-#define QUE_NODE_COMMIT 11
-#define QUE_NODE_ROLLBACK 12
-#define QUE_NODE_PURGE 13
-#define QUE_NODE_CREATE_TABLE 14
-#define QUE_NODE_CREATE_INDEX 15
-#define QUE_NODE_SYMBOL 16
-#define QUE_NODE_RES_WORD 17
-#define QUE_NODE_FUNC 18
-#define QUE_NODE_ORDER 19
-#define QUE_NODE_PROC (20 + QUE_NODE_CONTROL_STAT)
-#define QUE_NODE_IF (21 + QUE_NODE_CONTROL_STAT)
-#define QUE_NODE_WHILE (22 + QUE_NODE_CONTROL_STAT)
-#define QUE_NODE_ASSIGNMENT 23
-#define QUE_NODE_FETCH 24
-#define QUE_NODE_OPEN 25
-#define QUE_NODE_COL_ASSIGNMENT 26
-#define QUE_NODE_FOR (27 + QUE_NODE_CONTROL_STAT)
-#define QUE_NODE_RETURN 28
-#define QUE_NODE_ROW_PRINTF 29
-#define QUE_NODE_ELSIF 30
-#define QUE_NODE_CALL 31
-#define QUE_NODE_EXIT 32
-
#include "que0que.ic"
#endif