From 4ae1d6163d919a58a437e22c7cd9a5da350b4237 Mon Sep 17 00:00:00 2001 From: David Rowley Date: Wed, 16 Nov 2022 12:48:47 +1300 Subject: [PATCH v2 2/2] Test code to exercise palloc_aligned and repalloc --- src/backend/optimizer/plan/planner.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c index 493a3af0fa..09e40567c7 100644 --- a/src/backend/optimizer/plan/planner.c +++ b/src/backend/optimizer/plan/planner.c @@ -606,6 +606,21 @@ subquery_planner(PlannerGlobal *glob, Query *parse, RelOptInfo *final_rel; ListCell *l; + for (int align = 8; align <= 8192; align *= 2) + { + void *a = palloc0(512); + void *p = palloc_aligned(512, align, 0); + memset(p, 0, 512); + + Assert(memcmp(p, a, 512) == 0); + p = repalloc(p, 1024); + Assert(memcmp(p, a, 512) == 0); + p = repalloc(p, 256); + Assert(memcmp(p, a, 256) == 0); + pfree(a); + pfree(p); + } + /* Create a PlannerInfo data structure for this subquery */ root = makeNode(PlannerInfo); root->parse = parse; -- 2.35.1.windows.2