diff options
author | unknown <tomas@poseidon.ndb.mysql.com> | 2004-11-09 19:39:29 +0000 |
---|---|---|
committer | unknown <tomas@poseidon.ndb.mysql.com> | 2004-11-09 19:39:29 +0000 |
commit | 4c26186b4723f8cb9c44b1c9b0314d54d532f826 (patch) | |
tree | edc7c262c8c446aa592557dc15ccb01c2a6d7af5 /ndb/src/mgmsrv/MgmtSrvr.hpp | |
parent | 8e8c1a4756f04b582893965af0b780c2d32536f9 (diff) | |
download | mariadb-git-4c26186b4723f8cb9c44b1c9b0314d54d532f826.tar.gz |
added management function to purge stale sessions in the management server
ndb/include/util/Bitmask.hpp:
added bitXORC
ndb/include/util/SocketServer.hpp:
added method to apply function on each session
ndb/src/common/util/SocketServer.cpp:
added method to apply function on each session
Diffstat (limited to 'ndb/src/mgmsrv/MgmtSrvr.hpp')
-rw-r--r-- | ndb/src/mgmsrv/MgmtSrvr.hpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/ndb/src/mgmsrv/MgmtSrvr.hpp b/ndb/src/mgmsrv/MgmtSrvr.hpp index c796e1e9219..b3257491123 100644 --- a/ndb/src/mgmsrv/MgmtSrvr.hpp +++ b/ndb/src/mgmsrv/MgmtSrvr.hpp @@ -96,7 +96,10 @@ public: // methods to reserve/allocate resources which // will be freed when running destructor void reserve_node(NodeId id); - bool is_reserved(NodeId nodeId) { return m_reserved_nodes.get(nodeId);} + bool is_reserved(NodeId nodeId) { return m_reserved_nodes.get(nodeId); } + bool is_reserved(NodeBitmask mask) { return !mask.bitAND(m_reserved_nodes).isclear(); } + bool isclear() { return m_reserved_nodes.isclear(); } + NodeId get_nodeid() const; private: MgmtSrvr &m_mgmsrv; NodeBitmask m_reserved_nodes; @@ -173,6 +176,7 @@ public: /* Constructor */ MgmtSrvr(NodeId nodeId, /* Local nodeid */ + SocketServer *socket_server, const BaseString &config_filename, /* Where to save config */ LocalConfig &local_config, /* Ndb.cfg filename */ Config * config); @@ -499,6 +503,9 @@ public: int setDbParameter(int node, int parameter, const char * value, BaseString&); const char *get_connect_address(Uint32 node_id) { return inet_ntoa(m_connect_address[node_id]); } + void get_connected_nodes(NodeBitmask &connected_nodes) const; + SocketServer *get_socket_server() { return m_socket_server; } + //************************************************************************** private: //************************************************************************** @@ -525,6 +532,8 @@ private: int _blockNumber; NodeId _ownNodeId; + SocketServer *m_socket_server; + BlockReference _ownReference; NdbMutex *m_configMutex; const Config * _config; |