summaryrefslogtreecommitdiff
path: root/ndb/src/mgmsrv/MgmtSrvr.hpp
diff options
context:
space:
mode:
authorunknown <tomas@poseidon.ndb.mysql.com>2004-11-09 19:39:29 +0000
committerunknown <tomas@poseidon.ndb.mysql.com>2004-11-09 19:39:29 +0000
commit4c26186b4723f8cb9c44b1c9b0314d54d532f826 (patch)
treeedc7c262c8c446aa592557dc15ccb01c2a6d7af5 /ndb/src/mgmsrv/MgmtSrvr.hpp
parent8e8c1a4756f04b582893965af0b780c2d32536f9 (diff)
downloadmariadb-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.hpp11
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;