postgres.git / summary / log / commit / refs
commit 4d0d607a454ee832574afd52a3c515099cc85eb3
Author: Bruce Momjian <bruce@momjian.us>
Date: Tue Apr 22 22:05:44 2014 +0000
release memory used while flushing logical mappings
Patch by Ants Aasma
src/backend/access/heap/rewriteheap.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/backend/access/heap/rewriteheap.c b/src/backend/access/heap/rewriteheap.c
index 4cf07eaa2e4..ae439e8d6f1 100644
--- a/src/backend/access/heap/rewriteheap.c
+++ b/src/backend/access/heap/rewriteheap.c
@@ -897,7 +897,7 @@ logical_heap_rewrite_flush_mappings(RewriteState state)
/* write all mappings consecutively */
len = src->num_mappings * sizeof(LogicalRewriteMappingData);
- waldata = palloc(len);
+ waldata = MemoryContextAlloc(state->rs_cxt, len);
waldata_start = waldata;
/*
@@ -943,6 +943,7 @@ logical_heap_rewrite_flush_mappings(RewriteState state)
/* write xlog record */
XLogInsert(RM_HEAP2_ID, XLOG_HEAP2_REWRITE, rdata);
+ pfree(waldata);
}
Assert(state->rs_num_rewrite_mappings == 0);
}
[parent: c27bf777cf4e]