31 uint32_t flush_interval_ms, uint32_t flags)
32 :
Parent(props, comm, table, range_locator, timeout_ms, flags),
33 m_flush_interval(flush_interval_ms) {
38 m_tick_handler = make_shared<TableMutatorIntervalHandler>(comm, app_queue.get(),
this);
52 lock_guard<recursive_mutex> lock(
m_mutex);
Declarations for TableMutatorIntervalHandler.
std::shared_ptr< RangeLocator > RangeLocatorPtr
Smart pointer to RangeLocator.
std::shared_ptr< TableMutatorIntervalHandler > m_tick_handler
std::recursive_mutex m_mutex
uint32_t m_flush_interval
Represents an open table.
Provides the ability to mutate a table in the form of adding and deleting rows and cells...
std::shared_ptr< Properties > PropertiesPtr
Compatibility Macros for C/C++.
std::shared_ptr< ApplicationQueueInterface > ApplicationQueueInterfacePtr
Smart pointer to ApplicationQueueInterface.
virtual ~TableMutatorShared()
std::chrono::steady_clock::time_point m_last_flush_ts
void interval_flush()
Flush if necessary considering the flush interval.
Entry point to AsyncComm service.
TableMutatorShared(PropertiesPtr &props, Comm *comm, Table *table, RangeLocatorPtr &range_locator, ApplicationQueueInterfacePtr &app_queue, uint32_t timeout_ms, uint32_t flush_interval_ms, uint32_t flags=0)
virtual void flush()
Flushes the accumulated mutations to their respective range servers.