RE: Commit Delay

From: "Thawley, Peter" <pthawley(at)amazon(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>, Naveen Sankineni <nsankineni(at)gmail(dot)com>
Cc: "pgsql-admin(at)lists(dot)postgresql(dot)org" <pgsql-admin(at)lists(dot)postgresql(dot)org>
Subject: RE: Commit Delay
Date: 2020-05-01 16:26:59
Message-ID: 7cee0732a2ac4a479b5da94a6cb2693f@EX13D14UWC004.ant.amazon.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Hi Naveen

I was a little confused by this question so perhaps my interpretation is not accurate but given we are talking about data loss, I felt compelled to respond. Turning off "synchronous commit" means that the application session will get a success back from the API call before the physical i/o is acknowledged. This does risk data loss and should only be done in application use cases where it really makes sense.

If you want to improve performance of write throughput in wal operations but not risk potential data loss, you should probably increase "commit_delay" to encourage more concurrent write sessions to group their commits into fewer writes. The writer sessions will still wait for the synchronous write operation so latency will increase slightly but you may see decreased writes.

Peter Thawley
Amazon Aurora & RDS Database Service team, AWS
      
-----Original Message-----
From: Bruce Momjian <bruce(at)momjian(dot)us>
Sent: Thursday, April 30, 2020 4:34 PM
To: Naveen Sankineni <nsankineni(at)gmail(dot)com>
Cc: pgsql-admin(at)lists(dot)postgresql(dot)org
Subject: RE: [EXTERNAL] Commit Delay

CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you can confirm the sender and know the content is safe.

On Thu, Apr 30, 2020 at 07:31:01PM -0400, Naveen Sankineni wrote:
> Hello ,
>
> I would need your advice on which parameter is least impacted in terms
> of Data Loss if we wanted to set .
> One of our Database is waiting on I/O when there is a batch operation
> that runs to Insert/Delete table data is impacting the small updates
> that runs on a continuous basis where it shows that wait is on walwritelock.
>
> commit_delay
> synchronous_commit

The full list is here:

https://www.postgresql.org/docs/12/non-durability.html

I would say synchronous_commit.

--
Bruce Momjian <bruce(at)momjian(dot)us> https://momjian.us
EnterpriseDB https://enterprisedb.com

+ As you are, so once was I. As I am, so you will be. +
+ Ancient Roman grave inscription +

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message David G. Johnston 2020-05-01 16:46:19 Re: Commit Delay
Previous Message David Steele 2020-05-01 13:20:10 Re: Postgres pgbackrest issue.