Re: A micro-optimisation for walkdir()

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: A micro-optimisation for walkdir()
Дата
Msg-id 596203.1599147100@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: A micro-optimisation for walkdir()  (Thomas Munro <thomas.munro@gmail.com>)
Ответы Re: A micro-optimisation for walkdir()
Список pgsql-hackers
Thomas Munro <thomas.munro@gmail.com> writes:
> On Thu, Sep 3, 2020 at 5:36 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> Both of these concerns would abate if we had get_dirent_type()
>> just throw an error itself when stat() fails, thereby removing the
>> PGFILETYPE_ERROR result code.  I'm not 100% sold either way on
>> that, but it's something to think about.  Is there ever going
>> to be a reason for the caller to ignore an error?

> Hmm.  Well I had it like that in an earlier version, but then I
> couldn't figure out the right way to write code that would work in
> both frontend and backend code, without writing two copies in two
> translation units, or putting the whole thing in a header.  What
> approach do you prefer?

Well, there are plenty of places in src/port/ where we do things like

#ifndef FRONTEND
        ereport(ERROR,
                (errcode_for_file_access(),
                 errmsg("could not get junction for \"%s\": %s",
                        path, msg)));
#else
        fprintf(stderr, _("could not get junction for \"%s\": %s\n"),
                path, msg);
#endif

I don't see a compelling reason why this function couldn't report
stat() failures similarly, especially if we're just going to have
the callers do exactly the same thing as that anyway.

            regards, tom lane



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Dave Page
Дата:
Сообщение: Re: Kerberos support broken on MSVC builds for Windows x64?
Следующее
От: ilmari@ilmari.org (Dagfinn Ilmari Mannsåker)
Дата:
Сообщение: Re: [PATCH] Missing links between system catalog documentation pages