Обсуждение: pg_upgrade errno

Поиск
Список
Период
Сортировка

pg_upgrade errno

От
Justin Pryzby
Дата:
Since 3a769d823 (pg_upgrade: Allow use of file cloning)
file.c has had:

-       if (ioctl(dest_fd, FICLONE, src_fd) < 0)
-       {
-               unlink(dst);
-               pg_fatal("error while cloning relation \"%s.%s\" (\"%s\" to \"%s\"): %s",
-                                schemaName, relName, src, dst, strerror(errno));
-       }

But errno should be saved before strerror/%m.

-- 
Justin



Re: pg_upgrade errno

От
Michael Paquier
Дата:
On Sun, Jul 31, 2022 at 08:41:35AM -0500, Justin Pryzby wrote:
> Since 3a769d823 (pg_upgrade: Allow use of file cloning)
> file.c has had:
>
> -       if (ioctl(dest_fd, FICLONE, src_fd) < 0)
> -       {
> -               unlink(dst);
> -               pg_fatal("error while cloning relation \"%s.%s\" (\"%s\" to \"%s\"): %s",
> -                                schemaName, relName, src, dst, strerror(errno));
> -       }
>
> But errno should be saved before strerror/%m.

Good catch, Justin.  Will fix on HEAD.
--
Michael

Вложения

Re: pg_upgrade errno

От
Tom Lane
Дата:
Michael Paquier <michael@paquier.xyz> writes:
> On Sun, Jul 31, 2022 at 08:41:35AM -0500, Justin Pryzby wrote:
>> But errno should be saved before strerror/%m.

> Good catch, Justin.  Will fix on HEAD.

It's been wrong a lot longer than that, no?

            regards, tom lane



Re: pg_upgrade errno

От
Michael Paquier
Дата:
On Sun, Jul 31, 2022 at 07:43:25PM -0400, Tom Lane wrote:
> It's been wrong a lot longer than that, no?

Since the beginning of times.  But we've never really cared about
fixing such errno behaviors based on their unlikeliness, have we?  I
don't mind doing a backpatch here, though, that's isolated enough.
--
Michael

Вложения