postgresql-common for RedHat
============================

The postgresql-common framework was written for Debian/Ubuntu, but most parts
of it work as well on other operating systems. The RPM port changes little in
the original code, and even uses many files from the debian/ directory for
building the packages.

No separate PostgreSQL client/server packages are provided; the port is backed
by the PGDG RPM packages from yum.postgresql.org.

The filesystem layout is unchanged, /etc/postgresql, /etc/postgresql-common,
and /var/lib/postgresql are used as before.

Differences between the Debian and RedHat operating modes are:

* /var/run/postgresql/ is still used for external pid files, but the default
  unix socket directory is /tmp, to match the RPM packages' default.

* The postgres system user home is /var/lib/pgsql.

* The binroot is changed from /usr/lib/postgresql/ to /usr/pgsql-. (Note the
  missing trailing slash, the idea is that the version number can just be
  appended to the path, e.g. /usr/lib/postgresql/9.4/bin becomes
  /usr/pgsql-9.4/bin.)

* The various symlinks for frontend programs in /usr/bin like psql are not
  direct symlinks to pg_wrapper, but are added as high-priority alternatives to
  the alternatives symlinks set up by the PostgreSQL RPM packages.

* SSL is disabled by default because there is no easily available snakeoil
  certificate. Proper certificates can be configured in createcluster.conf.

* No attempt is made to setup OOM killer protection for the postmaster process.

* On Debian, the /etc/init.d/postgresql init script skips versions that have
  their own /etc/init.d/postgresql-x.y init script, mostly for compatibility
  with legacy packages before the advent of the postgresql-common framework.
  The RPM packages provide /etc/init.d/postgresql-x.y scripts, which are
  ignored by /etc/init.d/postgresql. The postgresql-x.y scripts will not do
  anything as long as the user does not use them to create clusters in
  /var/lib/pgsql. (In which case they continue to work as if postgresql-common
  was not present.)

* Debian's pre/postinst/rm maintainer scripts are not used. Mostly this means
  there is no automatic integration of tsearch with system-provided
  dictionaries.

The postgresql-common testsuite is supported if perl-Test-Simple and
perl-Time-HiRes are installed.

 -- Christoph Berg <christoph.berg@credativ.de> Thu, 26 Jun 2014 16:59:47 +0200
