 |
SWC-DB
v0.5.11 C++ documentations
SWC-DB© (Super Wide Column Database) - High Performance Scalable Database (https://github.com/kashirin-alex/swc-db)
|
Go to the documentation of this file.
12 namespace SWC {
namespace client {
namespace Query {
namespace Update {
13 namespace Handlers {
namespace Metric {
41 m->definitions(colp, key);
51 m->report(for_ns, colp, key);
94 uint64_t
avg = value.
avg();
122 key.
copy(parent_key);
146 key.
copy(parent_key);
171 key.
copy(parent_key);
204 DB::Types::
KeySeq::LEXIC, 1, 0, DB::Types::
Column::SERIAL,
208 cfg_intval(a_cfg_intval),
210 m_timer(io->executor()) {
226 std::this_thread::sleep_for(std::chrono::microseconds(100));
241 uint64_t for_ns = (::time(
nullptr) / intval) * intval;
243 return for_ns * 1000000000;
294 m->definitions(&
column, key);
298 m->report(for_ns, &
column, key);
309 uint32_t secs = ::time(
nullptr);
310 secs = ((secs/intval) * intval + intval) - secs;
314 m_timer.expires_after(std::chrono::seconds(secs));
318 TimerTask(
Reporting* a_ptr) noexcept : ptr(a_ptr) { }
319 void operator()(
const asio::error_code& ec) {
320 if(ec != asio::error::operation_aborted)
324 m_timer.async_wait(TimerTask(
this));
Reporting(const Clients::Ptr &a_clients, const Comm::IoContextPtr &a_io, Config::Property::Value_int32_g::Ptr a_cfg_intval, Clients::Flag a_executor=client::Clients::DEFAULT)
virtual void error(int err) noexcept override
constexpr SWC_CAN_INLINE bool compare_exchange_weak(T &at, T value) noexcept
SWC_CAN_INLINE void set_value(uint8_t *v, uint32_t len, bool owner)
#define SWC_LOGF(priority, fmt,...)
virtual void definitions(Handlers::Base::Column *colp, const DB::Cell::KeyVec &parent_key) override
#define SWC_LOG_OUT(pr, _code_)
virtual bool empty() noexcept override
SWC_CAN_INLINE uint64_t avg() const noexcept
Core::Atomic< uint64_t > m_count
std::shared_ptr< IoContext > IoContextPtr
SWC_CAN_INLINE ValueT avg() const noexcept
const cid_t SYS_CID_DEFINE_LEXIC
SWC_CAN_INLINE void ensure(size_t len)
Level * get_level(const char *name)
SWC_CAN_INLINE int32_t get() const noexcept
virtual bool empty() noexcept override
SWC_CAN_INLINE void add(Field *field)
virtual void report(uint64_t for_ns, Handlers::Base::Column *colp, const DB::Cell::KeyVec &parent_key) override
Config::Property::Value_int32_g::Ptr cfg_intval
SWC_CAN_INLINE void add(const std::string_view &fraction)
static const uint24_t FIELD_ID_MAX
bool str_eq(const char *s1, const char *s2) noexcept SWC_ATTRIBS((SWC_ATTRIB_O3))
Level * get_level(const char *_name, bool inner=true) override
constexpr SWC_CAN_INLINE void store(T v) noexcept
virtual void reset() override
The SWC-DB C++ namespace 'SWC'.
Core::CompletionCounter< uint64_t > completion
constexpr SWC_CAN_INLINE size_type size() const noexcept
Core::Vector< Base::Ptr > metrics
virtual void report(uint64_t for_ns, Handlers::Base::Column *colp, const DB::Cell::KeyVec &parent_key) override
virtual void report(uint64_t for_ns, Handlers::Base::Column *colp, const DB::Cell::KeyVec &parent_key) override
static const uint24_t FIELD_ID_MIN
SWC_CAN_INLINE void finished() noexcept
constexpr SWC_CAN_INLINE void set_time_order_desc(bool desc) noexcept
Core::Vector< Metric::Base::Ptr > metrics
constexpr SWC_CAN_INLINE uint8_t encoded_length_vi64(uint64_t val) noexcept
static const uint24_t FIELD_ID_VOLUME
Core::Atomic< uint64_t > m_volume
static const uint24_t FIELD_ID_AVG
const char *SWC_CONST_FUNC aggregation_to_string(uint8_t agg) noexcept
constexpr SWC_CAN_INLINE CountT count() const noexcept
constexpr SWC_CAN_INLINE T exchange(T value) noexcept
virtual int error() noexcept
SWC_CAN_INLINE void gather(MinMaxAvgCount< uint64_t > &to) noexcept
Core::Atomic< uint64_t > m_count
constexpr SWC_CAN_INLINE size_t fill() const noexcept
constexpr SWC_CAN_INLINE T load() const noexcept
Core::Atomic< int > state_error
virtual void response(int err=Error::OK) override
virtual void report(uint64_t for_ns, Handlers::Base::Column *colp, const DB::Cell::KeyVec &parent_key) override
void copy(const KeyVec &other)
Core::Atomic< uint64_t > m_volume
Level(const char *a_name)
static const uint24_t FIELD_ID_COUNT
constexpr SWC_CAN_INLINE bool is_last() noexcept
SWC_CAN_INLINE void add(const Fraction &fraction)
virtual size_t add(const DynamicBuffer &cells, const DB::Cell::Key &upto_key, const DB::Cell::Key &from_key, uint32_t skip, bool malformed)=0
virtual uint64_t apply_time(uint32_t intval, DB::Cell::KeyVec &key)
void print(std::ostream &out, int err)
SWC_CAN_INLINE std::string to_string(const BitFieldInt< T, SZ > &v)
Core::Atomic< int > state_error
SWC_CAN_INLINE reference emplace_back(ArgsT &&... args)
virtual bool requires_commit() noexcept override
SWC_CAN_INLINE void reserve(size_type cap)
asio::high_resolution_timer m_timer
const cid_t SYS_CID_STATS
virtual void report(uint64_t for_ns, Handlers::Base::Column *colp, const DB::Cell::KeyVec &parent_key) override
constexpr SWC_CAN_INLINE void set_timestamp(int64_t ts) noexcept