◆ sysvar_map
Registered system variables. 
(@session_track_system_variables) A hash to store the name of all the system variables specified by the user. 
 
 
◆ vars_list()
  
  
      
        
          | Session_sysvars_tracker::vars_list::vars_list  | 
          ( | 
          const CHARSET_INFO *  | 
          char_set | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
◆ ~vars_list()
  
  
      
        
          | Session_sysvars_tracker::vars_list::~vars_list  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
◆ begin()
  
  
      
        
          | sysvar_map::iterator Session_sysvars_tracker::vars_list::begin  | 
          ( | 
          void  | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
 
◆ char_set()
  
  
      
        
          | const CHARSET_INFO * Session_sysvars_tracker::vars_list::char_set  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
 
◆ claim_memory_ownership()
  
  
      
        
          | void Session_sysvars_tracker::vars_list::claim_memory_ownership  | 
          ( | 
          bool  | 
          claim | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
◆ end()
  
  
      
        
          | sysvar_map::iterator Session_sysvars_tracker::vars_list::end  | 
          ( | 
          void  | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
 
◆ free_hash()
  
  
      
        
          | void Session_sysvars_tracker::vars_list::free_hash  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inlineprivate   | 
  
 
 
◆ init()
  
  
      
        
          | void Session_sysvars_tracker::vars_list::init  | 
          ( | 
          const CHARSET_INFO *  | 
          char_set | ) | 
           | 
         
       
   | 
  
inlineprivate   | 
  
 
 
◆ insert()
Inserts the variable to be tracked into m_registered_sysvars hash. 
@param node Node to be inserted. @param var LEX_STRING which has the name of variable.
@return false success true error 
 
 
◆ parse_var_list()
      
        
          | bool Session_sysvars_tracker::vars_list::parse_var_list  | 
          ( | 
          THD *  | 
          thd,  | 
        
        
           | 
           | 
          LEX_STRING  | 
          var_list,  | 
        
        
           | 
           | 
          bool  | 
          throw_error,  | 
        
        
           | 
           | 
          const CHARSET_INFO *  | 
          char_set,  | 
        
        
           | 
           | 
          bool  | 
          session_created  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Parse the specified system variables list. 
While parsing raise warning/error on invalid/duplicate entries.
In case of duplicate entry ER_DUP_LIST_ENTRY is raised. In case of invalid entry a warning is raised per invalid entry. This is done in order to handle 'potentially' valid system variables from uninstalled plugins which might get installed in future.
Value of @session_track_system_variables is initially put into variables_list. This string is used to update the hash with valid system variables.
- Parameters
 - 
  
    | thd | The thd handle.  | 
    | var_list | System variable list.  | 
    | throw_error | bool when set to true, returns an error in case of invalid/duplicate values.  | 
    | char_set | character set information used for string manipulations.  | 
    | session_created | bool variable which says if the parse is already executed once. The mutex on variables is not acquired if this variable is false. | 
  
   
- Returns
 - true Error false Success 
 
 
 
◆ reset()
      
        
          | void Session_sysvars_tracker::vars_list::reset  | 
          ( | 
          void  | 
           | ) | 
           | 
        
      
 
 
◆ search() [1/2]
  
  
      
        
          | sysvar_node_st * Session_sysvars_tracker::vars_list::search  | 
          ( | 
          const uchar *  | 
          token,  | 
         
        
           | 
           | 
          size_t  | 
          length  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlineprivate   | 
  
 
 
◆ search() [2/2]
◆ update()
      
        
          | bool Session_sysvars_tracker::vars_list::update  | 
          ( | 
          vars_list *  | 
          from,  | 
        
        
           | 
           | 
          THD *  | 
          thd  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
This function is used to update the members of one vars_list object with the members from the other. 
@param from Source vars_list object. @param thd THD handle to retrieve the charset in use.
@return true if the m_registered_sysvars hash has any records. Else the value of track_all. 
 
 
◆ m_char_set
  
  
      
        
          | const CHARSET_INFO* Session_sysvars_tracker::vars_list::m_char_set | 
         
       
   | 
  
private   | 
  
 
 
◆ m_registered_sysvars
  
  
      
        
          | std::unique_ptr<sysvar_map> Session_sysvars_tracker::vars_list::m_registered_sysvars | 
         
       
   | 
  
private   | 
  
 
 
◆ track_all
  
  
      
        
          | bool Session_sysvars_tracker::vars_list::track_all | 
         
       
   | 
  
private   | 
  
 
The boolean which when set to true, signifies that every variable is to be tracked. 
 
 
◆ variables_list
  
  
      
        
          | char* Session_sysvars_tracker::vars_list::variables_list | 
         
       
   | 
  
private   | 
  
 
 
The documentation for this class was generated from the following file: