diff --git a/dbcon/joblist/distributedenginecomm.cpp b/dbcon/joblist/distributedenginecomm.cpp
index 6fbbee3c5..01f29e75d 100644
--- a/dbcon/joblist/distributedenginecomm.cpp
+++ b/dbcon/joblist/distributedenginecomm.cpp
@@ -329,8 +329,11 @@ void DistributedEngineComm::Setup()
for (j = 0; j < pmCount; j++)
{
- if (newClients[i]->isSameAddr(*fPmConnections[j]))
+ if (!fPmConnections.empty() && j < fPmConnections.size() &&
+ newClients[i]->isSameAddr(*fPmConnections[j]))
+ {
break;
+ }
}
if (j == pmCount)
diff --git a/dbcon/joblist/resourcemanager.cpp b/dbcon/joblist/resourcemanager.cpp
index 7ac2f98cb..b9f207d5b 100644
--- a/dbcon/joblist/resourcemanager.cpp
+++ b/dbcon/joblist/resourcemanager.cpp
@@ -171,6 +171,8 @@ ResourceManager::ResourceManager(bool runningInExeMgr) :
totalUmMemLimit = pmJoinMemLimit;
else
{
+ // Installation.PMwithUM = y by default so RM prefers HashJoin.TotalPmUmMemory
+ // if it exists.
string whichLimit = "TotalUmMemory";
string pmWithUM = fConfig->getConfig("Installation", "PMwithUM");
diff --git a/oam/etc/Columnstore.xml b/oam/etc/Columnstore.xml
index b7caf0b62..df95e40ad 100644
--- a/oam/etc/Columnstore.xml
+++ b/oam/etc/Columnstore.xml
@@ -443,7 +443,7 @@
y
y
2
- n
+ y
n
internal
internal