Thread: Prepared Transactions

Prepared Transactions

From
Riaan Stander
Date:

Hi All

Can anybody tell me if there is any performance concern around the use of Prepared Transactions in Postgres. I need to decide whether to enable an external transaction manager in our application, but I'm concerned about the performance impact this could have.

Regards
Riaan Stander

Re: Prepared Transactions

From
Sergei Kornilov
Date:
Hello!

You need prepared transactions only if you need two-phase commit to provide distributed atomic transaction on multiple
differentdatabases.
 
If you not need distributed transactions - you not needed prepared transactions at all.
But if you need distributed transactions - here is no more choice regardless performance questions.

As say in documentation https://www.postgresql.org/docs/current/static/sql-prepare-transaction.html
> Unless you're writing a transaction manager, you probably shouldn't be using PREPARE TRANSACTION.

Regards, Sergei


Re: Prepared Transactions

From
jwhiting@redhat.com
Date:
Hi Riaan,
 You benefit from greater fault tolerance performance. Recovering from
a crash/network outage is quicker/easier.
 On the downside you might see a reduction in transactions per second.

 It's worth benchmarking. To see if the impact to tps is acceptable to
live with.

Jeremy

On Mon, 2017-12-11 at 11:14 +0300, Sergei Kornilov wrote:
> Hello!
> 
> You need prepared transactions only if you need two-phase commit to
> provide distributed atomic transaction on multiple different
> databases.
> If you not need distributed transactions - you not needed prepared
> transactions at all.
> But if you need distributed transactions - here is no more choice
> regardless performance questions.
> 
> As say in documentation https://www.postgresql.org/docs/current/stati
> c/sql-prepare-transaction.html
> > Unless you're writing a transaction manager, you probably shouldn't
> > be using PREPARE TRANSACTION.
> 
> Regards, Sergei
>