summaryrefslogtreecommitdiff
path: root/ndb/src/common/mgmcommon/IPCConfig.cpp
diff options
context:
space:
mode:
authorunknown <tomas@poseidon.ndb.mysql.com>2005-02-16 20:37:14 +0100
committerunknown <tomas@poseidon.ndb.mysql.com>2005-02-16 20:37:14 +0100
commit4d9e12438250c1a9d9b624746dca468d69b4a2b7 (patch)
tree291ceb6cc5278770ce7f6cdba00d8785a99ed7c0 /ndb/src/common/mgmcommon/IPCConfig.cpp
parent7663198d08a67fec733475b22f7e77d08806fb07 (diff)
downloadmariadb-git-4d9e12438250c1a9d9b624746dca468d69b4a2b7.tar.gz
removed NdbMgmHandle from TransporterRegistry constructor
changed to set NdbMgmHandle from IPPConfig, and use info from configuration, instead of mgm handle from config retrieval ndb/src/ndbapi/Ndb.cpp: added som debug printout ndb/src/ndbapi/NdbTransaction.cpp: added some debug printout
Diffstat (limited to 'ndb/src/common/mgmcommon/IPCConfig.cpp')
-rw-r--r--ndb/src/common/mgmcommon/IPCConfig.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/ndb/src/common/mgmcommon/IPCConfig.cpp b/ndb/src/common/mgmcommon/IPCConfig.cpp
index af24e738e05..f188a433f1b 100644
--- a/ndb/src/common/mgmcommon/IPCConfig.cpp
+++ b/ndb/src/common/mgmcommon/IPCConfig.cpp
@@ -170,6 +170,35 @@ IPCConfig::configureTransporters(Uint32 nodeId,
DBUG_ENTER("IPCConfig::configureTransporters");
+ /**
+ * Iterate over all MGM's an construct a connectstring
+ * create mgm_handle and give it to the Transporter Registry
+ */
+ {
+ const char *separator= "";
+ BaseString connect_string;
+ ndb_mgm_configuration_iterator iter(config, CFG_SECTION_NODE);
+ for(iter.first(); iter.valid(); iter.next())
+ {
+ Uint32 type;
+ if(iter.get(CFG_TYPE_OF_SECTION, &type)) continue;
+ if(type != NODE_TYPE_MGM) continue;
+ const char* hostname;
+ Uint32 port;
+ if(iter.get(CFG_NODE_HOST, &hostname)) continue;
+ if( strlen(hostname) == 0 ) continue;
+ if(iter.get(CFG_MGM_PORT, &port)) continue;
+ connect_string.appfmt("%s%s:port",separator,hostname,port);
+ separator= ",";
+ }
+ NdbMgmHandle h= ndb_mgm_create_handle();
+ if ( h && connect_string.length() > 0 )
+ {
+ ndb_mgm_set_connectstring(h,connect_string.c_str());
+ tr.set_mgm_handle(h);
+ }
+ }
+
Uint32 noOfTransportersCreated= 0;
ndb_mgm_configuration_iterator iter(config, CFG_SECTION_CONNECTION);