ambari-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Yokota (JIRA)" <>
Subject [jira] [Updated] (AMBARI-21000) Ambari does not work with PGBouncer/PostgreSQL
Date Thu, 11 May 2017 22:13:04 GMT


Robert Yokota updated AMBARI-21000:
    Attachment: AMBARI-21000.01.patch

This patch exposes the Quartz setting as the Ambari setting "server.execution.scheduler.maxStatementsPerConnection",
which can then be set to 0 when using PGBouncer

> Ambari does not work with PGBouncer/PostgreSQL
> ----------------------------------------------
>                 Key: AMBARI-21000
>                 URL:
>             Project: Ambari
>          Issue Type: Bug
>    Affects Versions: 2.5.2
>            Reporter: Robert Yokota
>         Attachments: AMBARI-21000.01.patch
> When using JDBC with PGBouncer (a connection pooler for PostgreSQL), prepared statements
must be disabled on the client side.  According to the PgBouncer FAQ, this is done by passing
"prepareThreshold=0" in the JDBC URL.  Even when using "prepareThreshold=0", Ambari returns
errors of the form "prepared statement "S_1" does not exist".  This is because Ambari uses
Quartz, which uses C3P0.  Quartz by default configures C3P0 to cache prepared statements by
setting maxStatementsPerConnection=120.  Fortunately, Quartz also allows you to override this
C3P0 setting by passing a property named "maxCachedStatementsPerConnection".  When setting
this property to 0 (which is the default in C3P0), then Ambari works properly with PGBouncer.

This message was sent by Atlassian JIRA

View raw message