0.9.8.10
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Private Member Functions | List of all members
Hypertable::MaintenancePrioritizerLogCleanup Class Reference

#include <MaintenancePrioritizerLogCleanup.h>

Inheritance diagram for Hypertable::MaintenancePrioritizerLogCleanup:
Inheritance graph
[legend]
Collaboration diagram for Hypertable::MaintenancePrioritizerLogCleanup:
Collaboration graph
[legend]

Public Member Functions

virtual void prioritize (std::vector< RangeData > &range_data, MemoryState &memory_state, int32_t prioritize, String *trace)
 
- Public Member Functions inherited from Hypertable::MaintenancePrioritizer
 MaintenancePrioritizer ()
 

Private Member Functions

void assign_priorities (std::vector< RangeData > &range_data, CommitLogPtr &log, int64_t prune_threshold, MemoryState &memory_state, int32_t &priority, String *trace)
 

Additional Inherited Members

- Protected Member Functions inherited from Hypertable::MaintenancePrioritizer
void schedule_initialization_operations (std::vector< RangeData > &range_data, int32_t &priority)
 
bool schedule_inprogress_operations (std::vector< RangeData > &range_data, MemoryState &memory_state, int32_t &priority, String *trace)
 
bool schedule_splits_and_relinquishes (std::vector< RangeData > &range_data, MemoryState &memory_state, int32_t &priority, String *trace)
 
bool schedule_necessary_compactions (std::vector< RangeData > &range_data, CommitLogPtr &log, int64_t prune_threshold, MemoryState &memory_state, int32_t &priority, String *trace)
 
bool purge_shadow_caches (std::vector< RangeData > &range_data, MemoryState &memory_state, int32_t &priority, String *trace)
 
bool purge_cellstore_indexes (std::vector< RangeData > &range_data, MemoryState &memory_state, int32_t &priority, String *trace)
 
bool compact_cellcaches (std::vector< RangeData > &range_data, MemoryState &memory_state, int32_t &priority, String *trace)
 
- Protected Attributes inherited from Hypertable::MaintenancePrioritizer
bool m_initialization_complete
 
bool m_uninitialized_ranges_seen
 

Detailed Description

Definition at line 29 of file MaintenancePrioritizerLogCleanup.h.

Member Function Documentation

void MaintenancePrioritizerLogCleanup::assign_priorities ( std::vector< RangeData > &  range_data,
CommitLogPtr log,
int64_t  prune_threshold,
MemoryState memory_state,
int32_t &  priority,
String trace 
)
private
  1. schedule in-progress relinquish or split operations
  2. schedule splits
  3. schedule compactions for log cleanup purposes

Definition at line 131 of file MaintenancePrioritizerLogCleanup.cc.

void MaintenancePrioritizerLogCleanup::prioritize ( std::vector< RangeData > &  range_data,
MemoryState memory_state,
int32_t  prioritize,
String trace 
)
virtual

Assign priority for ROOT range

Assign priority for METADATA ranges

Compute prune threshold based on load activity

Assign priority other SYSTEM ranges

Assign priority for USER ranges

If there is no update activity, or there is little update activity and scan activity, then increase the block cache size

Implements Hypertable::MaintenancePrioritizer.

Definition at line 34 of file MaintenancePrioritizerLogCleanup.cc.


The documentation for this class was generated from the following files: