diff --git a/src/backend/optimizer/path/costsize.c b/src/backend/optimizer/path/costsize.c
index 459368e..d1d6f45 100644
--- a/src/backend/optimizer/path/costsize.c
+++ b/src/backend/optimizer/path/costsize.c
@@ -120,6 +120,7 @@ bool		enable_bitmapscan = true;
 bool		enable_tidscan = true;
 bool		enable_sort = true;
 bool		enable_hashagg = true;
+bool		enable_paramnestloop = true;
 bool		enable_nestloop = true;
 bool		enable_material = true;
 bool		enable_mergejoin = true;
@@ -1934,9 +1935,16 @@ final_cost_nestloop(PlannerInfo *root, NestPath *path,
 	 * would amount to optimizing for the case where the join method is
 	 * disabled, which doesn't seem like the way to bet.
 	 */
-	if (!enable_nestloop)
-		startup_cost += disable_cost;
-
+	if (path->innerjoinpath->param_info)
+	{
+		if (!enable_paramnestloop)
+			startup_cost += disable_cost;
+	}
+	else
+	{
+		if (!enable_nestloop)
+			startup_cost += disable_cost;
+	}
 	/* cost of inner-relation source data (we already dealt with outer rel) */
 
 	if (path->jointype == JOIN_SEMI || path->jointype == JOIN_ANTI)
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index 38ba82f..22e51e4 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -837,8 +837,17 @@ static struct config_bool ConfigureNamesBool[] =
 		NULL, NULL, NULL
 	},
 	{
+		{"enable_paramnestloop", PGC_USERSET, QUERY_TUNING_METHOD,
+			gettext_noop("Enables the planner's use of parameterized nested-loop join plans."),
+			NULL
+		},
+		&enable_paramnestloop,
+		true,
+		NULL, NULL, NULL
+	},
+	{
 		{"enable_nestloop", PGC_USERSET, QUERY_TUNING_METHOD,
-			gettext_noop("Enables the planner's use of nested-loop join plans."),
+			gettext_noop("Enables the planner's use of non-parameterized nested-loop join plans."),
 			NULL
 		},
 		&enable_nestloop,
diff --git a/src/include/optimizer/cost.h b/src/include/optimizer/cost.h
index 9999ca3..f89d817 100644
--- a/src/include/optimizer/cost.h
+++ b/src/include/optimizer/cost.h
@@ -62,6 +62,7 @@ extern bool enable_bitmapscan;
 extern bool enable_tidscan;
 extern bool enable_sort;
 extern bool enable_hashagg;
+extern bool enable_paramnestloop;
 extern bool enable_nestloop;
 extern bool enable_material;
 extern bool enable_mergejoin;
