Skip to content

Commit 623644f

Browse files
committed
Plug memory leak in index_get_partition
The list of indexes was being leaked when asked for an index that doesn't have an index partition in the table partition. Not a common case admittedly --and in most cases where it occurs, caller throws an error anyway-- but worth fixing for cleanliness and in case any third-party code is calling this function. While at it, remove use of lfirst_oid() to obtain a value we already have. Author: Justin Pryzby <pryzby@telsasoft.com> Reviewed-by: Michael Paquier <michael@paquier.xyz> Discussion: https://postgr.es/m/20201105203606.GF22691@telsasoft.com
1 parent a05dbf4 commit 623644f

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

src/backend/catalog/partition.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,13 +170,14 @@ index_get_partition(Relation partition, Oid indexId)
170170
ReleaseSysCache(tup);
171171
if (!ispartition)
172172
continue;
173-
if (get_partition_parent(lfirst_oid(l)) == indexId)
173+
if (get_partition_parent(partIdx) == indexId)
174174
{
175175
list_free(idxlist);
176176
return partIdx;
177177
}
178178
}
179179

180+
list_free(idxlist);
180181
return InvalidOid;
181182
}
182183

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy