summaryrefslogtreecommitdiff
path: root/ndb/src/mgmsrv
diff options
context:
space:
mode:
authortomas@poseidon.ndb.mysql.com <>2005-07-15 10:44:54 +0200
committertomas@poseidon.ndb.mysql.com <>2005-07-15 10:44:54 +0200
commitda6d1504537795504f4159adb85fe3f9ce618c92 (patch)
treee197b282c7ce2626ed55db230c3dd9c2476051e8 /ndb/src/mgmsrv
parent07d4f27195efc64cba7af16cf07e54ea545599d2 (diff)
downloadmariadb-git-da6d1504537795504f4159adb85fe3f9ce618c92.tar.gz
BUG#11596 (partial fix), IP addresses not shown in ndb_mgm SHOW command on second ndb_mgmd (or on ndb_mgmd restart)
Diffstat (limited to 'ndb/src/mgmsrv')
-rw-r--r--ndb/src/mgmsrv/MgmtSrvr.cpp18
-rw-r--r--ndb/src/mgmsrv/MgmtSrvr.hpp2
2 files changed, 19 insertions, 1 deletions
diff --git a/ndb/src/mgmsrv/MgmtSrvr.cpp b/ndb/src/mgmsrv/MgmtSrvr.cpp
index ceaedc9955b..f17d2a41be1 100644
--- a/ndb/src/mgmsrv/MgmtSrvr.cpp
+++ b/ndb/src/mgmsrv/MgmtSrvr.cpp
@@ -2124,6 +2124,24 @@ MgmtSrvr::getNodeType(NodeId nodeId) const
return nodeTypes[nodeId];
}
+const char *MgmtSrvr::get_connect_address(Uint32 node_id)
+{
+ if (m_connect_address[node_id].s_addr == 0 &&
+ theFacade && theFacade->theTransporterRegistry &&
+ theFacade->theClusterMgr &&
+ getNodeType(node_id) == NDB_MGM_NODE_TYPE_NDB)
+ {
+ const ClusterMgr::Node &node=
+ theFacade->theClusterMgr->getNodeInfo(node_id);
+ if (node.connected)
+ {
+ m_connect_address[node_id]=
+ theFacade->theTransporterRegistry->get_connect_address(node_id);
+ }
+ }
+ return inet_ntoa(m_connect_address[node_id]);
+}
+
void
MgmtSrvr::get_connected_nodes(NodeBitmask &connected_nodes) const
{
diff --git a/ndb/src/mgmsrv/MgmtSrvr.hpp b/ndb/src/mgmsrv/MgmtSrvr.hpp
index ce78983b3c3..9ed5c2eb1d4 100644
--- a/ndb/src/mgmsrv/MgmtSrvr.hpp
+++ b/ndb/src/mgmsrv/MgmtSrvr.hpp
@@ -508,7 +508,7 @@ 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]); }
+ const char *get_connect_address(Uint32 node_id);
void get_connected_nodes(NodeBitmask &connected_nodes) const;
SocketServer *get_socket_server() { return m_socket_server; }