Обсуждение: pgsql: Skip unnecessary stat() calls in walkdir().
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@sss.pgh.pa.us> Reviewed-by: Juan José Santamaría Flecha <juanjo.santamaria@gmail.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(-)