public inbox for [email protected]
help / color / mirror / Atom feedFrom: Bharath Rupireddy <[email protected]>
To: Andres Freund <[email protected]>
Cc: David G. Johnston <[email protected]>
Cc: Tom Lane <[email protected]>
Cc: Peter Geoghegan <[email protected]>
Cc: [email protected]
Cc: Robert Haas <[email protected]>
Cc: Melanie Plageman <[email protected]>
Cc: David Rowley <[email protected]>
Subject: Re: Option to not use ringbuffer in VACUUM, using it in failsafe mode
Date: Tue, 28 Feb 2023 13:46:32 +0530
Message-ID: <CALj2ACVisMie0=g4Uzigxv4eNdAuPuW+eVTAM7XZ=Y2i69mbNA@mail.gmail.com> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>
<CAH2-Wzmv-k4QWjUhasa2UM8s82ZxOzuJGj_PKq1uOu4a7bsTTw@mail.gmail.com>
<[email protected]>
<CAH2-Wzkwr2E0KvLtaFWUxMp8qow5nqUQMSQsVUa3KLabXJQPyA@mail.gmail.com>
<[email protected]>
<CAH2-Wz=Ur6J+A2mXB1wZm-QmZWTMWiVk0sn4f-0mbQTyFXQhHg@mail.gmail.com>
<[email protected]>
<[email protected]>
<CAKFQuwau7X3J5qB-J8WdTwDCa_jkWyVOETLjGnu468_iOXnxFA@mail.gmail.com>
<[email protected]>
On Thu, Jan 12, 2023 at 6:06 AM Andres Freund <[email protected]> wrote:
>
> On 2023-01-11 17:26:19 -0700, David G. Johnston wrote:
> > Should we just add "ring_buffers" to the existing "shared_buffers" and
> > "temp_buffers" settings?
>
> The different types of ring buffers have different sizes, for good reasons. So
> I don't see that working well. I also think it'd be more often useful to
> control this on a statement basis - if you have a parallel import tool that
> starts NCPU COPYs you'd want a smaller buffer than a single threaded COPY. Of
> course each session can change the ring buffer settings, but still.
How about having GUCs for each ring buffer (bulk_read_ring_buffers,
bulk_write_ring_buffers, vacuum_ring_buffers - ah, 3 more new GUCs)?
These options can help especially when statement level controls aren't
easy to add (COPY, CREATE TABLE AS/CTAS, REFRESH MAT VIEW/RMV)? If
needed users can also set them at the system level. For instance, one
can set bulk_write_ring_buffers to other than 16MB or -1 to disable
the ring buffer to use shared_buffers and run a bunch of bulk write
queries.
Although I'm not quite opposing the idea of statement level controls
(like the VACUUM one proposed here), it is better to make these ring
buffer sizes configurable across the system to help with the other
similar cases e.g., a CTAS or RMV can help subsequent reads from
shared buffers if ring buffer is skipped.
Thoughts?
--
Bharath Rupireddy
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com
view thread (4+ messages)
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], [email protected], [email protected], [email protected], [email protected]
Subject: Re: Option to not use ringbuffer in VACUUM, using it in failsafe mode
In-Reply-To: <CALj2ACVisMie0=g4Uzigxv4eNdAuPuW+eVTAM7XZ=Y2i69mbNA@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