From 9c47380c6da3ff78617ae80b1c8410a79b2ea396 Mon Sep 17 00:00:00 2001
From: test <test>
Date: Tue, 9 Jun 2026 00:11:47 +0200
Subject: [PATCH v2 2/6] release more lists

---
 src/backend/optimizer/path/equivclass.c | 1 +
 src/backend/optimizer/util/relnode.c    | 5 +++++
 2 files changed, 6 insertions(+)

diff --git a/src/backend/optimizer/path/equivclass.c b/src/backend/optimizer/path/equivclass.c
index 1ee6398087e..32e169a70e8 100644
--- a/src/backend/optimizer/path/equivclass.c
+++ b/src/backend/optimizer/path/equivclass.c
@@ -1709,6 +1709,7 @@ generate_join_implied_equalities_for_ecs(PlannerInfo *root,
 															  inner_rel);
 
 		result = list_concat(result, sublist);
+		list_free(sublist);
 	}
 
 	return result;
diff --git a/src/backend/optimizer/util/relnode.c b/src/backend/optimizer/util/relnode.c
index 687e923c46c..88562b6602a 100644
--- a/src/backend/optimizer/util/relnode.c
+++ b/src/backend/optimizer/util/relnode.c
@@ -1910,6 +1910,8 @@ get_joinrel_parampathinfo(PlannerInfo *root, RelOptInfo *joinrel,
 		pclauses = lappend(pclauses, rinfo);
 	}
 
+	list_free(eclauses);
+
 	/*
 	 * EquivalenceClasses are harder to deal with than we could wish, because
 	 * of the fact that a given EC can generate different clauses depending on
@@ -1964,6 +1966,9 @@ get_joinrel_parampathinfo(PlannerInfo *root, RelOptInfo *joinrel,
 											 outer_and_req))
 				pclauses = lappend(pclauses, rinfo);
 		}
+
+		list_free(dropped_ecs);
+		list_free(eclauses);
 	}
 
 	/*
-- 
2.54.0

