pgsql: Skip unnecessary stat() calls in walkdir().

From: Thomas Munro <tmunro(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Skip unnecessary stat() calls in walkdir().
Date: 2020-09-07 06:28:59
Message-ID: E1kFAeB-0007FZ-M4@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Skip unnecessary stat() calls in walkdir().

Some kernels can tell us the type of a "dirent", so we can avoid a call
to stat() or lstat() in many cases. Define a new function
get_dirent_type() to contain that logic, for use by the backend and
frontend versions of walkdir(), and perhaps other callers in future.

Reviewed-by: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Reviewed-by: Juan José Santamaría Flecha <juanjo(dot)santamaria(at)gmail(dot)com>
Discussion: https://postgr.es/m/CA%2BhUKG%2BFzxupGGN4GpUdbzZN%2Btn6FQPHo8w0Q%2BAPH5Wz8RG%2Bww%40mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/861c6e7c8e4dfdd842442dde47cc653764baff4f

Modified Files
--------------
src/backend/storage/file/fd.c | 33 ++++++------
src/common/Makefile | 2 +-
src/common/file_utils.c | 109 ++++++++++++++++++++++++++++++++-------
src/include/common/file_utils.h | 20 ++++++-
src/tools/msvc/Mkvcbuild.pm | 4 +-
src/tools/pgindent/typedefs.list | 1 +
6 files changed, 129 insertions(+), 40 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Peter Eisentraut 2020-09-07 07:15:14 pgsql: Update list of acknowledgments in release notes
Previous Message Michael Paquier 2020-09-07 05:36:16 pgsql: doc: Tweak sentence for pg_checksums when enabling checksums