public inbox for [email protected]
help / color / mirror / Atom feedFrom: Dmitriy Kuzmin <[email protected]>
To: David G. Johnston <[email protected]>
Cc: Tom Lane <[email protected]>
Cc: [email protected] <[email protected]>
Subject: Re: BUG #19437: temp_tablespaces doesn't work inside a cursor?
Date: Thu, 26 Mar 2026 00:30:38 +1000
Message-ID: <CA+TefFDrwAppW33A6Y4Cz1f6Zf11bS3+DOqerx8JCnGspg9xKA@mail.gmail.com> (raw)
In-Reply-To: <CAKFQuwbtK=HfDsUo7p7zqFUb-h=ZqUS93K4+9nbOPW+bKnQuaA@mail.gmail.com>
References: <[email protected]>
<[email protected]>
<CAKFQuwbtK=HfDsUo7p7zqFUb-h=ZqUS93K4+9nbOPW+bKnQuaA@mail.gmail.com>
>
> What does "\o /dev/null" have to do with this? That's a psql-side
> operation.
This is a set of commands for psql, and I use \o /dev/null to prevent
SELECT results from being printed to the screen. This is unrelated to the
problem.
The use of sleep does indicate awareness of the async nature of this.
Correct. Pg_sleep is used to achieve a consistently reproducible result
when executing a script.
The same result (creating temporary files in different tablespaces) can be
achieved by executing the specified commands manually without use of
pg_sleep.
There is something odd here. Look at the log entry at 12:04:08.016; it
> uses base/ while the surrounding ones use pg_tblspace/ and the setting
> itself hasn’t changed during the sequence.
Absolutely correct. Furthermore, each execution of SELECT pg_reload_conf()
will cause the next query to create temporary files in base/ once,
regardless of the temp_tablespaces value. Try running the above commands
manually and reviewing the logs; you'll see what I mean
ср, 25 мар. 2026 г. в 23:52, David G. Johnston <[email protected]>:
> On Wednesday, March 25, 2026, Tom Lane <[email protected]> wrote:
>
>> PG Bug reporting form <[email protected]> writes:
>> > I'm seeing strange behavior in Postgres when changing the
>> temp_tablespaces
>> > parameter and suspect a bug. At least, I haven't found a description of
>> this
>> > behavior in the documentation.
>>
>> I think you are imagining that pg_reload_conf() is a synchronous
>> operation.
>
>
> The use of sleep does indicate awareness of the async nature of this.
>
>>
>> > Ensure that temporary files are created in it:
>>
> > \o /dev/null
>>
>> What does "\o /dev/null" have to do with this? That's a
>> psql-side operation.
>>
>
> The comment applies to all three lines in the following block, not just
> the first line.
>
> There is something odd here. Look at the log entry at 12:04:08.016; it
> uses base/ while the surrounding ones use pg_tblspace/ and the setting
> itself hasn’t changed during the sequence.
>
> I haven’t tried to validate the cursor claim yet but; this definitely
> isn’t the easiest format to consume and I can’t do much on my own presently.
>
> David J.
>
>
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected], [email protected]
Subject: Re: BUG #19437: temp_tablespaces doesn't work inside a cursor?
In-Reply-To: <CA+TefFDrwAppW33A6Y4Cz1f6Zf11bS3+DOqerx8JCnGspg9xKA@mail.gmail.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox