Merge [TRAFODION-2913] PR 1403 Tweak some MDAM-related heuristics
diff --git a/core/sql/optimizer/ScanOptimizer.cpp b/core/sql/optimizer/ScanOptimizer.cpp
index 5ca7d86..9265a55 100644
--- a/core/sql/optimizer/ScanOptimizer.cpp
+++ b/core/sql/optimizer/ScanOptimizer.cpp
@@ -3124,8 +3124,7 @@
 					 const ValueIdSet nonKeyColumnSet,
 					 const Disjuncts &curDisjuncts,
 					 const IndexDesc * indexDesc,
-					 const ValueIdSet externalInputs,
-					 NABoolean mdamFlag)
+					 const ValueIdSet externalInputs)
 {
 
   NABoolean canDoMdam = TRUE;
@@ -3135,11 +3134,6 @@
   // Check whether MDAM can be considered for this node:
   // -----------------------------------------------------------------------
 
-  if(CURRSTMT_OPTDEFAULTS->indexEliminationLevel() != OptDefaults::MINIMUM
-     AND mdamFlag == MDAM_OFF)
-       	canDoMdam = FALSE;
-
-  else
   if (NOT indexDesc->getNAFileSet()->isKeySequenced())
   {
     // -----------------------------------------------------------
@@ -3477,17 +3471,6 @@
     return ScanForceWildCard::MDAM_OFF;
   }
 
-  // The Index elimination project added the MdamFlag which can force
-  // MDAM off
-  //
-  if(CURRSTMT_OPTDEFAULTS->indexEliminationLevel() != OptDefaults::MINIMUM
-     AND fileScan.getMdamFlag() == MDAM_OFF 
-	 && (CmpCommon::getDefault(RANGESPEC_TRANSFORMATION) != DF_ON )
-	 )
-  { 
-    return ScanForceWildCard::MDAM_OFF;
-  }
-
   // If the number of disjuncts exceeds the maximum, MDAM is forced OFF
   //
   if(fileScan.getDisjuncts().entries() > MDAM_MAX_NUM_DISJUNCTS) {
@@ -4166,7 +4149,6 @@
        else
        {
 	 ValueIdSet externalInputs = getExternalInputs();
-	 NABoolean mdamFlag = getMdamFlag();
 
 	 if (NOT partKeyPreds.isEmpty())
 	 {
@@ -4174,8 +4156,7 @@
 						 nonKeyColumnSet,
 						 *curDisjuncts,
 						 indexDesc,
-						 externalInputs,
-						 mdamFlag);
+						 externalInputs);
 	 }
 	 else
 	 {
@@ -4183,8 +4164,7 @@
 						 nonKeyColumnSet,
 						 getDisjuncts(),
 						 indexDesc,
-						 externalInputs,
-						 mdamFlag);
+						 externalInputs);
 	 }
 
        }
diff --git a/core/sql/optimizer/ScanOptimizer.h b/core/sql/optimizer/ScanOptimizer.h
index 29bafd2..d6f445e 100644
--- a/core/sql/optimizer/ScanOptimizer.h
+++ b/core/sql/optimizer/ScanOptimizer.h
@@ -387,8 +387,7 @@
 					 const ValueIdSet nonKeyColumnSet,
 					 const Disjuncts &curDisjuncts,
 					 const IndexDesc * indexDesc,
-					 const ValueIdSet externalInputs,
-					 NABoolean mdamFlag);
+					 const ValueIdSet externalInputs);
 
   // get and set various probing counters for all partitions.
 
diff --git a/core/sql/sqlcomp/nadefaults.cpp b/core/sql/sqlcomp/nadefaults.cpp
index a75c20b..ea2d8d4 100644
--- a/core/sql/sqlcomp/nadefaults.cpp
+++ b/core/sql/sqlcomp/nadefaults.cpp
@@ -1877,7 +1877,7 @@
  // mdam off on open source at this point
   XDDkwd__(MDAM_SCAN_METHOD,			"ON"),
 
-  DDflt0_(MDAM_SELECTION_DEFAULT,		"0.5"),
+  DDflt0_(MDAM_SELECTION_DEFAULT,		"8.0"),
 
   // Overhead charge for a subset in the rewritten MDAM costing code
   DDflt0_(MDAM_SUBSET_FACTOR,                   "8.0"),