Re: pipe_read_line for reading arbitrary strings

From: Daniel Gustafsson <daniel(at)yesql(dot)se>
To: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
Cc: Postgres hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: pipe_read_line for reading arbitrary strings
Date: 2023-07-04 12:50:00
Message-ID: C99AC835-9673-4067-B7EA-45A8B062C5A6@yesql.se
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> On 4 Jul 2023, at 13:59, Heikki Linnakangas <hlinnaka(at)iki(dot)fi> wrote:
> On 08/03/2023 00:05, Daniel Gustafsson wrote:

>> If we are going to continue using this for reading $stuff from pipes, maybe we
>> should think about presenting a nicer API which removes that risk? Returning
>> an allocated buffer which contains all the output along the lines of the recent
>> pg_get_line work seems a lot nicer and safer IMO.
>
> +1

Thanks for review!

>> /*
>> * Execute a command in a pipe and read the first line from it. The returned
>> * string is allocated, the caller is responsible for freeing.
>> */
>> char *
>> pipe_read_line(char *cmd)
>
> I think it's worth being explicit here that it's palloc'd, or malloc'd in frontend programs, rather than just "allocated". Like in pg_get_line.

Good point, I'll make that happen before committing this.

--
Daniel Gustafsson

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2023-07-04 12:51:55 Re: Remove incidental md5() function uses from several tests
Previous Message Daniel Gustafsson 2023-07-04 12:48:48 Re: SQL:2011 application time