summaryrefslogtreecommitdiff
path: root/storage/ndb/src/ndbapi/TransporterFacade.hpp
diff options
context:
space:
mode:
authorunknown <tomas@poseidon.mysql.com>2007-03-07 15:31:11 +0700
committerunknown <tomas@poseidon.mysql.com>2007-03-07 15:31:11 +0700
commit51ef14cd8419fbe9a8d4241887792f2c6d936796 (patch)
tree1f5829f83b2a098d78e22daf2cab677aba51b3f8 /storage/ndb/src/ndbapi/TransporterFacade.hpp
parent690b46cfe2d9035b5faad8c75830752bd7185181 (diff)
parent5d2ad21b624627868fa4861cfc601f56a4193fac (diff)
downloadmariadb-git-51ef14cd8419fbe9a8d4241887792f2c6d936796.tar.gz
Merge poseidon.mysql.com:/home/tomas/mysql-5.0-telco-gca-single-user
into poseidon.mysql.com:/home/tomas/mysql-5.1-telco-gca-single-user storage/ndb/src/kernel/blocks/dbtc/Dbtc.hpp: Auto merged storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp: Auto merged storage/ndb/src/ndbapi/ClusterMgr.cpp: Auto merged storage/ndb/src/ndbapi/Ndb.cpp: Auto merged storage/ndb/src/ndbapi/TransporterFacade.hpp: Auto merged
Diffstat (limited to 'storage/ndb/src/ndbapi/TransporterFacade.hpp')
-rw-r--r--storage/ndb/src/ndbapi/TransporterFacade.hpp16
1 files changed, 5 insertions, 11 deletions
diff --git a/storage/ndb/src/ndbapi/TransporterFacade.hpp b/storage/ndb/src/ndbapi/TransporterFacade.hpp
index d19974f8999..23fea8792f7 100644
--- a/storage/ndb/src/ndbapi/TransporterFacade.hpp
+++ b/storage/ndb/src/ndbapi/TransporterFacade.hpp
@@ -365,7 +365,8 @@ inline
bool
TransporterFacade::get_node_stopping(NodeId n) const {
const ClusterMgr::Node & node = theClusterMgr->getNodeInfo(n);
- return ((node.m_state.startLevel == NodeState::SL_STOPPING_1) ||
+ return (!node.m_state.getSingleUserMode() &&
+ (node.m_state.startLevel == NodeState::SL_STOPPING_1) ||
(node.m_state.startLevel == NodeState::SL_STOPPING_2));
}
@@ -376,16 +377,9 @@ TransporterFacade::getIsNodeSendable(NodeId n) const {
const Uint32 startLevel = node.m_state.startLevel;
if (node.m_info.m_type == NodeInfo::DB) {
- if(node.m_state.singleUserMode &&
- ownId() == node.m_state.singleUserApi) {
- return (node.compatible &&
- (node.m_state.startLevel == NodeState::SL_STOPPING_1 ||
- node.m_state.startLevel == NodeState::SL_STARTED ||
- node.m_state.startLevel == NodeState::SL_SINGLEUSER));
- }
- else
- return node.compatible && (startLevel == NodeState::SL_STARTED ||
- startLevel == NodeState::SL_STOPPING_1);
+ return node.compatible && (startLevel == NodeState::SL_STARTED ||
+ startLevel == NodeState::SL_STOPPING_1 ||
+ node.m_state.getSingleUserMode());
} else {
ndbout_c("TransporterFacade::getIsNodeSendable: Illegal node type: "
"%d of node: %d",