![]()  | 
  
    MySQL 9.5.0
    
   Source Code Documentation 
   | 
 
The pipeline stats aggregator of all group members stats and flow control module. More...
#include <pipeline_stats.h>
Public Member Functions | |
| Flow_control_module () | |
| Default constructor.  More... | |
| virtual | ~Flow_control_module () | 
| Destructor.  More... | |
| int | handle_stats_data (const uchar *data, size_t len, const std::string &member_id) | 
| Handles a Pipeline_stats_message, updating the Flow_control_module_info and the delay, if needed.  More... | |
| void | flow_control_step (Pipeline_stats_member_collector *) | 
| Evaluate the information received in the last flow control period and adjust the system parameters accordingly.  More... | |
| Pipeline_member_stats * | get_pipeline_stats (const std::string &member_id) | 
| Returns copy of individual member stats information.  More... | |
| int32 | do_wait () | 
| Compute and wait the amount of time in microseconds that must be elapsed before a new message is sent.  More... | |
Static Public Attributes | |
| static const int64 | MAXTPS = INT_MAX32 | 
Private Attributes | |
| mysql_mutex_t | m_flow_control_lock | 
| mysql_cond_t | m_flow_control_cond | 
| Flow_control_module_info | m_info | 
| Checkable_rwlock * | m_flow_control_module_info_lock | 
| std::atomic< int32 > | m_holds_in_period | 
| std::atomic< int64 > | m_quota_used | 
| std::atomic< int64 > | m_quota_size | 
| uint64 | m_stamp | 
| int | seconds_to_skip | 
The pipeline stats aggregator of all group members stats and flow control module.
| Flow_control_module::Flow_control_module | ( | ) | 
Default constructor.
      
  | 
  virtual | 
Destructor.
| int32 Flow_control_module::do_wait | ( | ) | 
Compute and wait the amount of time in microseconds that must be elapsed before a new message is sent.
If there is no need to wait, the method returns immediately.
| 0 | No wait was done | 
| >0 | The wait time | 
| void Flow_control_module::flow_control_step | ( | Pipeline_stats_member_collector * | member | ) | 
Evaluate the information received in the last flow control period and adjust the system parameters accordingly.
| Pipeline_member_stats * Flow_control_module::get_pipeline_stats | ( | const std::string & | member_id | ) | 
Returns copy of individual member stats information.
| [in] | member_id | GCS Type Member Id, i.e. format HOST:PORT | 
| int Flow_control_module::handle_stats_data | ( | const uchar * | data, | 
| size_t | len, | ||
| const std::string & | member_id | ||
| ) | 
Handles a Pipeline_stats_message, updating the Flow_control_module_info and the delay, if needed.
| [in] | data | the packet data | 
| [in] | len | the packet length | 
| [in] | member_id | the GCS member_id which sent the message | 
| 0 | OK | 
| !=0 | Error on queue | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private |