On 6/5/23 12:14, Dilip Kumar wrote:
> IIUC, this flag is for the temp files created for query level
> operation so this will clean up the files like "pgsql_tmp" but in
> this thread, we are talking about the files related to temp tables
> starting with "t_"
I am not sure per comment and code in fd.c :
/*
* Remove temporary and temporary relation files left over from a prior
* postmaster session
*
* This should be called during postmaster startup. It will forcibly
* remove any leftover files created by OpenTemporaryFile and any leftover
* temporary relation files created by mdcreate.
*
* During post-backend-crash restart cycle, this routine is called when
* remove_temp_files_after_crash GUC is enabled. Multiple crashes while
* queries are using temp files could result in useless storage usage
that can
* only be reclaimed by a service restart. The argument against
enabling it is
* that someone might want to examine the temporary files for debugging
* purposes. This does however mean that OpenTemporaryFile had better
allow for
* collision with an existing temp file name.
The function RemovePgTempFiles is called, which call
RemovePgTempRelationFiles, then RemovePgTempRelationFilesInDbspace
and looks_like_temp_rel_name which check:
/* t<digits>_<digits>, or t<digits>_<digits>_<forkname> */
--
Adrien NAYRAT