Re: Consistently use palloc_object() and palloc_array()

From: Chao Li <li(dot)evan(dot)chao(at)gmail(dot)com>
To: David Geier <geidav(dot)pg(at)gmail(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Consistently use palloc_object() and palloc_array()
Date: 2025-11-26 23:03:52
Message-ID: ED821EDD-6A1B-45B8-9005-31BCFFCB5A48@gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> On Nov 27, 2025, at 06:09, David Geier <geidav(dot)pg(at)gmail(dot)com> wrote:
>
> Hi hackers,
>
> I've changed all code to use the "new" palloc_object(), palloc_array(),
> palloc0_object(), palloc0_array, repalloc_array() and repalloc0_array()
> macros. This makes the code more readable and more consistent.
>
> The patch is pretty big but potential merge conflicts should be easy to
> resolve. If preferred, I can also further split up the patch, e.g.
> directory by directory or high impact files first.
>
> The patch is passing "meson test" and I've additionally wrote a script
> that parses the patch file and verifies that every two corresponding +
> and - lines match (e.g. palloc0() replaced by palloc0_array() or
> palloc0_object(), the same for palloc() and repalloc(), additionally
> some checks to make sure the conversion to the _array() variant is
> correct).
>
> --
> David Geier<v1-0001-Consistently-use-palloc_object-and-palloc_array.patch>

This is a large patch, I just take a quick look, and found that:

```
- *phoned_word = palloc(sizeof(char) * strlen(word) + 1);
+ *phoned_word = palloc_array(char, strlen(word) + 1);
```

And

```
- params = (const char **) palloc(sizeof(char *));
+ params = palloc_object(const char *);
```

Applying palloc_array and palloc_object to char type doesn’t seem to improve anything.

Best reagards,
--
Chao Li (Evan)
HighGo Software Co., Ltd.
https://www.highgo.com/

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2025-11-26 23:34:50 Re: Add pg_buffercache_mark_dirty[_all] functions to the pg_buffercache
Previous Message Michael Paquier 2025-11-26 22:59:22 Re: Refactoring: Use soft error reporting for *_opt_overflow functions of date/timestamp