public inbox for [email protected]  
help / color / mirror / Atom feed
[PATCH] Don't freeze on checkpoints
7+ messages / 6 participants
[nested] [flat]

* [PATCH] Don't freeze on checkpoints
@ 2020-04-27 23:35 Alvaro Herrera <[email protected]>
  0 siblings, 0 replies; 7+ messages in thread

From: Alvaro Herrera @ 2020-04-27 23:35 UTC (permalink / raw)

---
 src/backend/postmaster/checkpointer.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/backend/postmaster/checkpointer.c b/src/backend/postmaster/checkpointer.c
index e354a78725..5cf5e9fe08 100644
--- a/src/backend/postmaster/checkpointer.c
+++ b/src/backend/postmaster/checkpointer.c
@@ -494,6 +494,13 @@ CheckpointerMain(void)
 		 */
 		pgstat_send_bgwriter();
 
+		/*
+		 * Don't sleep if our latch was set for reasons other than a
+		 * checkpoint request.
+		 */
+		if (!do_checkpoint)
+			continue;
+
 		/*
 		 * Sleep until we are signaled or it's time for another checkpoint or
 		 * xlog file switch.
-- 
2.20.1


--EVF5PPMfhYS0aIcm--





^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* [PATCH 13/18] doc review for FDW bulk inserts
@ 2021-01-23 23:17 Justin Pryzby <[email protected]>
  0 siblings, 0 replies; 7+ messages in thread

From: Justin Pryzby @ 2021-01-23 23:17 UTC (permalink / raw)

b663a4136331de6c7364226e3dbf7c88bfee7145
---
 doc/src/sgml/fdwhandler.sgml | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/doc/src/sgml/fdwhandler.sgml b/doc/src/sgml/fdwhandler.sgml
index 854913ae5f..12e00bfc2f 100644
--- a/doc/src/sgml/fdwhandler.sgml
+++ b/doc/src/sgml/fdwhandler.sgml
@@ -672,9 +672,8 @@ GetForeignModifyBatchSize(ResultRelInfo *rinfo);
 
      Report the maximum number of tuples that a single
      <function>ExecForeignBatchInsert</function> call can handle for
-     the specified foreign table.  That is, The executor passes at most
-     the number of tuples that this function returns to
-     <function>ExecForeignBatchInsert</function>.
+     the specified foreign table.  The executor passes at most
+     the given number of tuples to <function>ExecForeignBatchInsert</function>.
      <literal>rinfo</literal> is the <structname>ResultRelInfo</structname> struct describing
      the target foreign table.
      The FDW is expected to provide a foreign server and/or foreign
-- 
2.17.0


--lc9FT7cWel8HagAv
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
 filename="0014-doc-review-logical-decode-in-prepare.patch"



^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* Vacuum timing in pg_stat_all_tables
@ 2025-03-04 14:12 Magnus Hagander <[email protected]>
  2025-03-04 14:54 ` Re: Vacuum timing in pg_stat_all_tables Nathan Bossart <[email protected]>
  0 siblings, 1 reply; 7+ messages in thread

From: Magnus Hagander @ 2025-03-04 14:12 UTC (permalink / raw)
  To: PostgreSQL Developers <[email protected]>; +Cc: Michael Paquier <[email protected]>; Drouvot, Bertrand <[email protected]>; Imseih (AWS), Sami <[email protected]>

In light of bb8dff9995f (add cost delay time to progress views), looking at
the output of 30a6ed0ce4b (track per-relation time spent on vacuum and
analyze), it struck me as a bit unclear of what the time is really showing.

Do we want to do something similar for the table views? Or if not, we
should probably at least document the effect of cost based vacuum delay on
those timings - as in if they are including it or not (which I do believe
they are).

While more stats are always nice :), I think just being clear about it in
the docs would perhaps be enough for now? Maybe just appending something
along the line of "(including cost based delaying)"?

-- 
 Magnus Hagander
 Me: https://www.hagander.net/ <http://www.hagander.net/;
 Work: https://www.redpill-linpro.com/ <http://www.redpill-linpro.com/;


^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* Re: Vacuum timing in pg_stat_all_tables
  2025-03-04 14:12 Vacuum timing in pg_stat_all_tables Magnus Hagander <[email protected]>
@ 2025-03-04 14:54 ` Nathan Bossart <[email protected]>
  2025-03-04 15:24   ` Re: Vacuum timing in pg_stat_all_tables Bertrand Drouvot <[email protected]>
  0 siblings, 1 reply; 7+ messages in thread

From: Nathan Bossart @ 2025-03-04 14:54 UTC (permalink / raw)
  To: Magnus Hagander <[email protected]>; +Cc: PostgreSQL Developers <[email protected]>; Michael Paquier <[email protected]>; Drouvot, Bertrand <[email protected]>; Imseih (AWS), Sami <[email protected]>

On Tue, Mar 04, 2025 at 03:12:18PM +0100, Magnus Hagander wrote:
> In light of bb8dff9995f (add cost delay time to progress views), looking at
> the output of 30a6ed0ce4b (track per-relation time spent on vacuum and
> analyze), it struck me as a bit unclear of what the time is really showing.
> 
> Do we want to do something similar for the table views? Or if not, we
> should probably at least document the effect of cost based vacuum delay on
> those timings - as in if they are including it or not (which I do believe
> they are).

I could see it being useful to have the total cost delay time in those
views.  The information in the progress views goes away when vacuuming is
done, while the table views would retain it indefinitely.  That being said,
I haven't judged the feasibility of adding it.  I'm sure it can be done,
but I don't know whether it requires reworking commit bb8dff9995f.

> While more stats are always nice :), I think just being clear about it in
> the docs would perhaps be enough for now? Maybe just appending something
> along the line of "(including cost based delaying)"?

I think this is also a reasonable thing to do regardless of whether we add
the cost delay time to the table views.

-- 
nathan






^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* Re: Vacuum timing in pg_stat_all_tables
  2025-03-04 14:12 Vacuum timing in pg_stat_all_tables Magnus Hagander <[email protected]>
  2025-03-04 14:54 ` Re: Vacuum timing in pg_stat_all_tables Nathan Bossart <[email protected]>
@ 2025-03-04 15:24   ` Bertrand Drouvot <[email protected]>
  2025-03-12 10:52     ` Re: Vacuum timing in pg_stat_all_tables Bertrand Drouvot <[email protected]>
  0 siblings, 1 reply; 7+ messages in thread

From: Bertrand Drouvot @ 2025-03-04 15:24 UTC (permalink / raw)
  To: Nathan Bossart <[email protected]>; +Cc: Magnus Hagander <[email protected]>; PostgreSQL Developers <[email protected]>; Michael Paquier <[email protected]>; Imseih (AWS), Sami <[email protected]>

Hi,

On Tue, Mar 04, 2025 at 08:54:13AM -0600, Nathan Bossart wrote:
> On Tue, Mar 04, 2025 at 03:12:18PM +0100, Magnus Hagander wrote:
> > In light of bb8dff9995f (add cost delay time to progress views), looking at
> > the output of 30a6ed0ce4b (track per-relation time spent on vacuum and
> > analyze), it struck me as a bit unclear of what the time is really showing.
> > 
> > Do we want to do something similar for the table views? Or if not, we
> > should probably at least document the effect of cost based vacuum delay on
> > those timings - as in if they are including it or not (which I do believe
> > they are).
> 
> I could see it being useful to have the total cost delay time in those
> views.  The information in the progress views goes away when vacuuming is
> done, while the table views would retain it indefinitely.

+1, I think that could be useful to "retain" this information on a per-table
basis.

> > While more stats are always nice :), I think just being clear about it in
> > the docs would perhaps be enough for now? Maybe just appending something
> > along the line of "(including cost based delaying)"?

Like "more stats are always nice" I think that "more explanations in the doc" are
always nice, so I don't see any reason why not to add this extra explanation.

Regards,

-- 
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com






^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* Re: Vacuum timing in pg_stat_all_tables
  2025-03-04 14:12 Vacuum timing in pg_stat_all_tables Magnus Hagander <[email protected]>
  2025-03-04 14:54 ` Re: Vacuum timing in pg_stat_all_tables Nathan Bossart <[email protected]>
  2025-03-04 15:24   ` Re: Vacuum timing in pg_stat_all_tables Bertrand Drouvot <[email protected]>
@ 2025-03-12 10:52     ` Bertrand Drouvot <[email protected]>
  2025-04-30 22:41       ` Re: Vacuum timing in pg_stat_all_tables Michael Paquier <[email protected]>
  0 siblings, 1 reply; 7+ messages in thread

From: Bertrand Drouvot @ 2025-03-12 10:52 UTC (permalink / raw)
  To: Nathan Bossart <[email protected]>; +Cc: Magnus Hagander <[email protected]>; PostgreSQL Developers <[email protected]>; Michael Paquier <[email protected]>; Imseih (AWS), Sami <[email protected]>

Hi,

On Tue, Mar 04, 2025 at 03:24:26PM +0000, Bertrand Drouvot wrote:
> Like "more stats are always nice" I think that "more explanations in the doc" are
> always nice, so I don't see any reason why not to add this extra explanation.

Attached an attempt to do so.

Note that it does not add extra explanation to "cost-based delay". If we feel the
need we could add a link to "<xref linkend="runtime-config-resource-vacuum-cost"/>"
like it has been done for delay_time in bb8dff9995f.

Regards,

-- 
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com


^ permalink  raw  reply  [nested|flat] 7+ messages in thread

* Re: Vacuum timing in pg_stat_all_tables
  2025-03-04 14:12 Vacuum timing in pg_stat_all_tables Magnus Hagander <[email protected]>
  2025-03-04 14:54 ` Re: Vacuum timing in pg_stat_all_tables Nathan Bossart <[email protected]>
  2025-03-04 15:24   ` Re: Vacuum timing in pg_stat_all_tables Bertrand Drouvot <[email protected]>
  2025-03-12 10:52     ` Re: Vacuum timing in pg_stat_all_tables Bertrand Drouvot <[email protected]>
@ 2025-04-30 22:41       ` Michael Paquier <[email protected]>
  0 siblings, 0 replies; 7+ messages in thread

From: Michael Paquier @ 2025-04-30 22:41 UTC (permalink / raw)
  To: Bertrand Drouvot <[email protected]>; +Cc: Nathan Bossart <[email protected]>; Magnus Hagander <[email protected]>; PostgreSQL Developers <[email protected]>; Imseih (AWS), Sami <[email protected]>

On Wed, Mar 12, 2025 at 10:52:57AM +0000, Bertrand Drouvot wrote:
> Note that it does not add extra explanation to "cost-based delay". If we feel the
> need we could add a link to "<xref linkend="runtime-config-resource-vacuum-cost"/>"
> like it has been done for delay_time in bb8dff9995f.

Sorry for the delay, this has been sitting in my inbox for some time,
and I am catching with some of my backlog.

       <para>
-       Total time this table has been manually vacuumed, in milliseconds
+       Total time this table has been manually vacuumed, in milliseconds. (This
+       includes the time spent sleeping due to cost-based delay.)
       </para></entry>

Hmm, okay, adding this information to these four new fields is fine
here, so I'll apply that on HEAD shortly.  I can see that this matches
with the style used for some of the other fields, like n_tup_upd for the
details regarding HOT.
--
Michael


Attachments:

  [application/pgp-signature] signature.asc (833B, ../../[email protected]/2-signature.asc)
  download

^ permalink  raw  reply  [nested|flat] 7+ messages in thread


end of thread, other threads:[~2025-04-30 22:41 UTC | newest]

Thread overview: 7+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2020-04-27 23:35 [PATCH] Don't freeze on checkpoints Alvaro Herrera <[email protected]>
2021-01-23 23:17 [PATCH 13/18] doc review for FDW bulk inserts Justin Pryzby <[email protected]>
2025-03-04 14:12 Vacuum timing in pg_stat_all_tables Magnus Hagander <[email protected]>
2025-03-04 14:54 ` Re: Vacuum timing in pg_stat_all_tables Nathan Bossart <[email protected]>
2025-03-04 15:24   ` Re: Vacuum timing in pg_stat_all_tables Bertrand Drouvot <[email protected]>
2025-03-12 10:52     ` Re: Vacuum timing in pg_stat_all_tables Bertrand Drouvot <[email protected]>
2025-04-30 22:41       ` Re: Vacuum timing in pg_stat_all_tables Michael Paquier <[email protected]>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox