Abstract base class for group commit implementation. More...
#include <GroupCommitInterface.h>
Public Member Functions | |
virtual void | add (EventPtr &event, uint64_t cluster_id, SchemaPtr &schema, const TableIdentifier &table, uint32_t count, StaticBuffer &buffer, uint32_t flags)=0 |
Adds a batch of updates to the group commit queue. More... | |
virtual void | trigger ()=0 |
Processes queued updates that are ready to be committed. More... | |
Abstract base class for group commit implementation.
Group commit is a feature whereby updates are queued over some period of time (usually measured in milliseconds) and then written and sync'ed to the commit log and processed in one group. This improves efficiency for situations where there are many concurrent updates because otherwise the writing and sync'ing of the commit log can become a bottleneck. This class acts as an interface class to the group commit implementation and provides a way for the group commit system and the RangeServer to reference one another.
Definition at line 53 of file GroupCommitInterface.h.
|
pure virtual |
Adds a batch of updates to the group commit queue.
Implemented in Hypertable::GroupCommit.
|
pure virtual |
Processes queued updates that are ready to be committed.
Implemented in Hypertable::GroupCommit.