![SWC-DB logo](logo.svg) |
SWC-DB
v0.5.12 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.
6 #ifndef swcdb_manager_MngdColumns_h
7 #define swcdb_manager_MngdColumns_h
10 #include <forward_list>
12 namespace SWC {
namespace Manager {
20 typedef std::shared_ptr<ColumnReq>
Ptr;
55 void reset(
bool schemas_mngr);
78 void action(const ColumnReq::Ptr& req);
81 cids_t&& columns,
bool initial);
84 const DB::Schema::Ptr& schema,
int err, uint64_t req_id,
87 void update(Comm::Protocol::Mngr::Params::ColumnMng::
Function func,
88 const DB::Schema::Ptr& schema,
int err, uint64_t req_id);
90 void remove(const DB::Schema::Ptr& schema,
rgrid_t rgrid, uint64_t req_id);
92 void print(std::ostream& out);
103 void create(
int &err, DB::Schema::Ptr& schema);
105 void update(
int &err, DB::Schema::Ptr& schema, const DB::Schema::Ptr& old);
108 Comm::Protocol::Mngr::Params::ColumnMng::
Function func,
109 const DB::Schema::Ptr& schema,
int err, uint64_t req_id);
139 #endif // swcdb_manager_MngdColumns_h
std::unordered_map< uint64_t, ColumnReq::Ptr > m_actions_pending
bool is_schemas_mngr(int &err)
Core::Atomic< cid_t > m_last_used_cid
Core::StateRunning m_columns_load
const Config::Property::Value_int32_g::Ptr cfg_delay_cols_init
Column::Ptr get_column(int &err, cid_t cid)
bool has_active() noexcept
std::shared_ptr< ColumnReq > Ptr
void set_expect(cid_t cid_begin, cid_t cid_end, uint64_t total, cids_t &&columns, bool initial)
void print(std::ostream &out)
Core::AtomicBool m_schemas_set
bool is_active(cid_t cid) noexcept
void create(int &err, DB::Schema::Ptr &schema)
void change_active(const cid_t cid_begin, const cid_t cid_end, bool has_cols)
Core::MutexSptd m_mutex_active
bool active(cid_t &cid_begin, cid_t &cid_end) noexcept
void update_status(Comm::Protocol::Mngr::Params::ColumnMng::Function func, const DB::Schema::Ptr &schema, int err, uint64_t req_id, bool initial=false)
void remove(const DB::Schema::Ptr &schema, rgrid_t rgrid, uint64_t req_id)
SWC_CAN_INLINE ColumnReq(const Comm::ConnHandlerPtr &conn, const Comm::Event::Ptr &ev) noexcept
void columns_ready(int &err)
std::forward_list< cid_t > m_expected_load
MngdColumns & operator=(const MngdColumns &)=delete
const Config::Property::Value_uint8_g::Ptr cfg_schema_replication
MngdColumns & operator=(MngdColumns &&)=delete
SWC_CAN_INLINE bool running() const noexcept
The SWC-DB C++ namespace 'SWC'.
const Config::Property::Value_enum_g::Ptr cfg_schemas_store_encoder
const Config::Property::Value_int32_g::Ptr cfg_schemas_store_blksz
uint64_t m_expected_remain
void reset(bool schemas_mngr)
MngdColumns(MngdColumns &&)=delete
std::shared_ptr< ConnHandler > ConnHandlerPtr
void create_schemas_store()
void update(Comm::Protocol::Mngr::Params::ColumnMng::Function func, const DB::Schema::Ptr &schema, int err, uint64_t req_id)
Core::MutexSptd m_mutex_actions
constexpr static uint64_t STATE_COLUMNS_NOT_INITIALIZED
const Config::Property::Value_uint64_g::Ptr cfg_schemas_store_cap
MngdColumns(const MngdColumns &)=delete
bool expected_ready() noexcept
Core::MutexSptd m_mutex_schemas
std::shared_ptr< Event > Ptr
Core::QueueSafe< ColumnReq::Ptr > m_actions
void update_status_ack(Comm::Protocol::Mngr::Params::ColumnMng::Function func, const DB::Schema::Ptr &schema, int err, uint64_t req_id)
AtomicBase< bool > AtomicBool
void action(const ColumnReq::Ptr &req)