summaryrefslogtreecommitdiff
path: root/sql/session_tracker.h
diff options
context:
space:
mode:
authorSergey Vojtovich <svoj@mariadb.org>2019-03-13 14:41:52 +0400
committerSergey Vojtovich <svoj@mariadb.org>2019-05-03 12:16:26 +0400
commit0e91e0c377f38c31cd5ad766b9a6faceacb7ce18 (patch)
treea1e879bc8c8d66ce85ea52948936a3e766d7df4b /sql/session_tracker.h
parent879878e43d5ffd2bf4d18ffe4d0186f8926e58ca (diff)
downloadmariadb-git-0e91e0c377f38c31cd5ad766b9a6faceacb7ce18.tar.gz
A proper State_tracker::m_changed enacpsulation
Note: preserved original behaviour, where remaining trackers are not reset on error from store(). This effectively means subsequent statements will start tracking from unclean state. Part of MDEV-14984 - regression in connect performance
Diffstat (limited to 'sql/session_tracker.h')
-rw-r--r--sql/session_tracker.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/sql/session_tracker.h b/sql/session_tracker.h
index 684692aae0c..2452183acd4 100644
--- a/sql/session_tracker.h
+++ b/sql/session_tracker.h
@@ -67,6 +67,7 @@ protected:
*/
bool m_enabled;
+private:
/** Has the session state type changed ? */
bool m_changed;
@@ -86,6 +87,8 @@ public:
bool is_changed() const
{ return m_changed; }
+ void reset_changed() { m_changed= false; }
+
/** Called in the constructor of THD*/
virtual bool enable(THD *thd)= 0;
@@ -276,8 +279,6 @@ private:
/** isolation level */
enum enum_tx_isol_level tx_isol_level;
- void reset();
-
inline void update_change_flags(THD *thd)
{
tx_changed &= uint(~TX_CHG_STATE);