Обсуждение: BUG #15372: pg_stat_statements extension ignore stats_temp_directorysetting and always write into pg_stat_tmp

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

BUG #15372: pg_stat_statements extension ignore stats_temp_directorysetting and always write into pg_stat_tmp

От
PG Bug reporting form
Дата:
The following bug has been logged on the website:

Bug reference:      15372
Logged by:          Maxim Boguk
Email address:      maxim.boguk@gmail.com
PostgreSQL version: 9.6.10
Operating system:   Linux
Description:

Hi,


pg_stat_statements extension always write pgss_query_texts.stat file into
data_directory/pg_stat_tmp 
and ignore stats_temp_directory settings which supposed to overwrite stat
directory location.
It isn't good because this file could be quite a large (and almost always
larger than standard pg_stat_tmp content).

It seems that the issue exists in any supported version of the database.


=?utf-8?q?PG_Bug_reporting_form?= <noreply@postgresql.org> writes:
> pg_stat_statements extension always write pgss_query_texts.stat file into
> data_directory/pg_stat_tmp 
> and ignore stats_temp_directory settings which supposed to overwrite stat
> directory location.

This is operating as designed, see comment in pg_stat_statements.c:

/*
 * Location of external query text file.  We don't keep it in the core
 * system's stats_temp_directory.  The core system can safely use that GUC
 * setting, because the statistics collector temp file paths are set only once
 * as part of changing the GUC, but pg_stat_statements has no way of avoiding
 * race conditions.  Besides, we only expect modest, infrequent I/O for query
 * strings, so placing the file on a faster filesystem is not compelling.
 */
#define PGSS_TEXT_FILE    PG_STAT_TMP_DIR "/pgss_query_texts.stat"

            regards, tom lane