David Fetter | 14 Apr 06:45 2014

== PostgreSQL Weekly News - April 13 2014 ==

== PostgreSQL Weekly News - April 13 2014 ==

There will be a Google hangout April 17, 8am GMT titled Postgres
Performance Diagnostics: Busting that slow running SQL.  RSVP:

Postgres Open 2014 will be in Chicago, IL, USA, September 17-19.  The
CfP is open!

== PostgreSQL Product News ==

Benetl 4.5, a free ETL tool for postgreSQL, released.

oracle_fdw 1.0.0 released.

== PostgreSQL Jobs for April ==


== PostgreSQL Local ==

PGCon 2014, the world-wide developer conference for PostgreSQL, will
be in Ottawa, Ontario, Canada May 20-24, 2014.

The sixth PGDay Cubano be held on 13 and 14 October 2014 in Habana.
(Continue reading)

Gabriele Bartolini | 14 Apr 12:04 2014

Barman 1.3.1 released

14 April 2014: 2ndQuadrant is proud to announce the release of
version 1.3.1 of Barman, Backup and Recovery Manager for PostgreSQL.

This minor release introduces support for concurrent backup using
physical file based copy through rsync, in conjunction with
pgespresso, a new open source extension available for PostgreSQL 9.2
and 9.3. Concurrent backup allows database administrators that rely
on Barman, to finally offload backup operations to a streaming
replicated standby server, opening new important scenarios in
disaster recovery architectures of PostgreSQL 9.2+ database servers.

The "barman diagnose" command has been implemented to print important
information about the system and the configuration of Barman,
allowing users to provide detailed diagnostics data in case of
support requests.

Version 1.3.1 fixes an important bug on recovery that was affecting
only those users having tablespaces created inside the PGDATA
directory. This behaviour was introduced in version 1.3.0.

Minor bugs have also been fixed.

Many thanks for funding towards the development of this release go to
Adyen (www.adyen.com).

For a complete list of changes, see the "Release Notes" section


(Continue reading)

Benoît Carpentier | 12 Apr 14:47 2014

Benetl, a free ETL tool for postgreSQL, out in version 4.5

Dear all,

Benetl, a free ETL tool for postgreSQL, is out in version 4.5.

This version of Benetl is now Java 7 and has been tested on 64 bit systems.

This versions is correcting two bugs:
Trouble with double parsing when data contains ',' as float separator
Divide function now accepts negative operand and shows an error when divide by 0

Part operator brings a new function: fact.

New error messages provided.
More than 100 tests passed.

 You should really update.

Benetl is freely dowloadable at: http://www.benetl.net

You can learn more about ETL tools at: http://en.wikipedia.org/wiki/Extract,_transform,_load

Thanks for your interest.

Regards, -- Benoît Carpentier http://www.benetl.net Founder of Benetl and Java project manager
Kris Pennella | 10 Apr 16:50 2014

Postgres Open 2014 - Opens the Call for Papers

The Postgres Open Program Committee is pleased to announce Postgres Open 2014, which will be held from Wednesday, September 17, 2014 to Friday, September 19, 2014 at the Hotel Sax Chicago.

We are now accepting proposals for talks.

Proposal submissions are due by May 30, 2014, but don't feel obligated to wait until the last minute. Visit our newly redesigned conference website at http://postgresopen.org/2014/callforpapers/ and submit a proposal today.

With our new website you can use your PostgreSQL community credentials as your login to submit and track the progress of your talk - no new account registration needed! 

Each session will last 45 minutes, and may be on any topic related to PostgreSQL. Suggested topic areas include:

* Developing applications for PostgreSQL
* Administering large scale PostgreSQL installations
* Case studies and/or success stories of PostgreSQL deployments
* PostgreSQL tools and utilities
* PostgreSQL hacking
* Community & user groups
* Tuning the server
* Migrating from other systems
* Scaling/replication
* Benchmarking & hardware
* PostgreSQL related products

For any questions about submitting a proposal, or if you need assistance with the website, please email us: program2014[at]postgresopen[dot]org

We look forward to hearing from you, and seeing you in Chicago in September!

Albe Laurenz | 9 Apr 09:21 2014

oracle_fdw 1.0.0 released

I am happy to announce the first stable release of the
Foreign Data Wrapper for Oracle.

One notable bug has been fixed, and a new diagnostic function
oracle_diag() has been added.  Upgrade from previous versions
will require "ALTER EXTENSION oracle_fdw UPDATE".

Project page: http://oracle-fdw.projects.pgfoundry.org

Source repository: https://github.com/laurenz/oracle_fdw


Laurenz Albe


Sent via pgsql-announce mailing list (pgsql-announce <at> postgresql.org)
To make changes to your subscription:
David Fetter | 7 Apr 01:13 2014

== PostgreSQL Weekly News - April 06 2014 ==

== PostgreSQL Weekly News - April 06 2014 ==

== PostgreSQL Product News ==

PostgreSQL Columnar Store for Analytic Workloads released.

DBD::Pg, the Perl driver for Postgres, has released version 3.1.0:

pgbuildfarm client 4.12 released.

pgCluu 2.0, a Perl program audit PostgreSQL Cluster performance,

pg_extractor 2.0.0, a customizing add-on to pg_dump, released.

Postgres-XC 1.2.1, a write-scalable multi-master symmetric cluster
based on PostgreSQL, released.

Skytools 3.2, a package of tools developed by Skype for replication
and failover including PgQ, a generic queuing framework and Londiste,
a row-based master-slave replication replication system, released:

tds_fdw, a foreign data wrapper for MS-SQL Server and Sybase,
released.  Prospective owners wanted.

== PostgreSQL Jobs for April ==


== PostgreSQL Local ==

The Open Data Summit will be held Friday April 11, 2014 in Denver,
Colorado, USA.

PGCon 2014, the world-wide developer conference for PostgreSQL, will
be in Ottawa, Ontario, Canada May 20-24, 2014.

The sixth PGDay Cubano be held on 13 and 14 October 2014 in Habana.

== PostgreSQL in the News ==

Planet PostgreSQL: http://planet.postgresql.org/

PostgreSQL Weekly News is brought to you this week by David Fetter

Submit news and announcements by Sunday at 3:00pm Pacific time.
Please send English language ones to david <at> fetter.org, German language
to pwn <at> pgug.de, Italian language to pwn <at> itpug.org.  Spanish language
to pwn <at> arpug.com.ar.

== Applied Patches ==

Heikki Linnakangas pushed:

- Rename GinLogicValue to GinTernaryValue.  It's more descriptive.
  Also, get rid of the enum, and use #defines instead, per Greg
  Stark's suggestion.

- Rewrite the way GIN posting lists are packed on a page, to reduce
  WAL volume.  Inserting (in retail) into the new 9.4 format GIN
  posting tree created much larger WAL records than in 9.3. The
  previous strategy to WAL logging was basically to log the whole page
  on each change, with the exception of completely unmodified segments
  up to the first modified one. That was not too bad when appending to
  the end of the page, as only the last segment had to be WAL-logged,
  but per Fujii Masao's testing, even that produced 2x the WAL volume
  that 9.3 did.  The new strategy is to keep track of changes to the
  posting lists in a more fine-grained fashion, and also make the
  repacking" code smarter to avoid decoding and re-encoding segments

- Fix typo in comment.  Amit Langote

- Move SizeOfHeapNewCid next to xl_heap_new_cid struct.  They belong
  together, but the xl_heap_rewrite_mapping struct was wedged in

- Fix bug in the new B-tree incomplete-split code.  Inserting a
  downlink to an internal page clears the incomplete-split flag of the
  child's left sibling, so the left sibling's LSN also needs to be

- Remove dead check for backup block, replace with Assert.  We don't
  use backup blocks with GIN vacuum records anymore, the page is
  always recreated from scratch.

- Fix bug in the new GIN incomplete-split code.  Inserting a downlink
  to an internal page clears the incomplete-split flag of the child's
  left sibling, so the left sibling's LSN also needs to be updated and
  it needs to be marked dirty. The codepath for an insertion got this
  right, but the case where the internal node is split because of
  inserting the new downlink missed that.

- Avoid palloc in critical section in GiST WAL-logging.  Memory
  allocation can fail if you run out of memory, and inside a critical
  section that will lead to a PANIC. Use conservatively-sized arrays
  in stack instead.  There was previously no explicit limit on the
  number of pages a GiST split can produce, it was only limited by the
  number of LWLocks that can be held simultaneously (100 at the
  moment). This patch adds an explicit limit of 75 pages. That should
  be plenty, a typical split shouldn't produce more than 2-3 page
  halves.  The bug has been there forever, but only backpatch down to
  9.1. The code was changed significantly in 9.1, and it doesn't seem
  worth the risk or trouble to adapt this for 9.0 and 8.4.

- Avoid allocations in critical sections.  If a palloc in a critical
  section fails, it becomes a PANIC.

- Add an Assertion that you don't palloc within a critical section.
  This caught a bunch of cases doing that already, which I just fixed
  in previous commit. This is the assertion itself.  Per Tom Lane's

- In checkpoint, move the check for in-progress xacts out of critical
  section.  GetVirtualXIDsDelayingChkpt calls palloc, which isn't safe
  in a critical section. I thought I covered this case with the
  exemption for the checkpointer, but CreateCheckPoint is also called
  from the startup process.

- Move multixid allocation out of critical section.  It can fail if
  you run out of memory.  This call was added in 9.3, so backpatch to
  9.3 only.

- Fix another palloc in critical section.  Also add a regression test
  for a GIN index with enough items with the same key, so that a GIN
  posting tree gets created. Apparently none of the existing GIN tests
  were large enough for that.  This code is new, no backpatching

Robert Haas pushed:

- Fix thinko in logical decoding code.  Andres Freund

- Count buffers dirtied due to hints in
  pgBufferUsage.shared_blks_dirtied.  Previously, such buffers weren't
  counted, with the possible result that EXPLAIN (BUFFERS) and
  pg_stat_statements would understate the true number of blocks
  dirtied by an SQL statement.  Back-patch to 9.2, where this counter
  was introduced.  Amit Kapila

- test_decoding: Update .gitignore.  Commit
  7317d8d961f210c3a6b20972cd605bcd9bffb06e changed the set of things
  that need to be ignored, but neglected to update .gitignore.

- Mark FastPathStrongRelationLocks volatile.  Otherwise, the compiler
  might decide to move modifications to data within this structure
  outside the enclosing SpinLockAcquire / SpinLockRelease pair,
  leading to shared memory corruption.  This may or may not explain a
  recent lmgr-related buildfarm failure on prairiedog, but it needs to
  be fixed either way.

- Fix some compiler warnings that clang emits with -pedantic.  Andres

Tom Lane pushed:

- Doc: improve discussion of reverse+forward host name lookup in
  pg_hba.conf.  Fix some grammatical issues and make it a bit more

- Fix bugs in manipulation of PgBackendStatus.st_clienthostname.
  Initialization of this field was not being done according to the
  st_changecount protocol (it has to be done within the changecount
  increment range, not outside).  And the test to see if the value
  should be reported as null was wrong.  Noted while perusing uses of
  Port.remote_hostname.  This was wrong from the introduction of this
  code (commit 4a25bc145), so back-patch to 9.1.

- De-anonymize the union in JsonbValue.  Needed for strict C89

- Fix assorted issues in client host name lookup.  The code for
  matching clients to pg_hba.conf lines that specify host names
  (instead of IP address ranges) failed to complain if reverse DNS
  lookup failed; instead it silently didn't match, so that you might
  end up getting a surprising "no pg_hba.conf entry for ..." error, as
  seen in bug #9518 from Mike Blackwell.  Since we don't want to make
  this a fatal error in situations where pg_hba.conf contains a
  mixture of host names and IP addresses (clients matching one of the
  numeric entries should not have to have rDNS data), remember the
  lookup failure and mention it as DETAIL if we get to "no pg_hba.conf
  entry".  Apply the same approach to forward-DNS lookup failures,
  too, rather than treating them as immediate hard errors.  Along the
  way, fix a couple of bugs that prevented us from detecting an rDNS
  lookup error reliably, and make sure that we make only one rDNS
  lookup attempt; formerly, if the lookup attempt failed, the code
  would try again for each host name entry in pg_hba.conf.  Since more
  or less the whole point of this design is to ensure there's only one
  lookup attempt not one per entry, the latter point represents a
  performance bug that seems sufficient justification for
  back-patching.  Also, adjust src/port/getaddrinfo.c so that it plays
  as well as it can with this code.  Which is not all that well, since
  it does not have actual support for rDNS lookup, but at least it
  should return the expected (and required by spec) error codes so
  that the main code correctly perceives the lack of functionality as
  a lookup failure.  It's unlikely that PG is still being used in
  production on any machines that require our getaddrinfo.c, so I'm
  not excited about working harder than this.  To keep the code in the
  various branches similar, this includes back-patching commits
  c424d0d1052cb4053c8712ac44123f9b9a9aa3f2 and
  1997f34db4687e671690ed054c8f30bb501b1168 into 9.2 and earlier.
  Back-patch to 9.1 where the facility for hostnames in pg_hba.conf
  was introduced.

- Avoid promising that "ADD COLUMN ... DEFAULT NULL" is free.  The
  system realizes that DEFAULT NULL is dummy in simple cases, but not
  if a cast function (such as a length coercion) needs to be applied.
  It's dubious that suppressing that function call would be
  appropriate, anyway.  For the moment, let's just adjust the docs to
  say that you should omit the DEFAULT clause if you don't want a
  rewrite to happen.  Per gripe from Amit Langote.

- Fix documentation about joining pg_locks to other views.  The advice
  to join to pg_prepared_xacts via the transaction column was not
  updated when the transaction column was replaced by
  virtualtransaction.  Since it's not quite obvious how to do that
  join, give an explicit example.  For consistency also give an
  example for the adjacent case of joining to pg_stat_activity.  And
  link-ify the view references too, just because we can.  Per bug
  #9840 from Alexey Bashtanov.  Michael Paquier and Tom Lane

- Code review for commit d26888bc4d1e539a82f21382b0000fe5bbf889d9.
  Mostly, copy-edit the comments; but also fix it to not reject
  domains over arrays.

- Fix non-equivalence of VARIADIC and non-VARIADIC function call
  formats.  For variadic functions (other than VARIADIC ANY), the
  syntaxes foo(x,y,...) and foo(VARIADIC ARRAY[x,y,...]) should be
  considered equivalent, since the former is converted to the latter
  at parse time.  They have indeed been equivalent, in all releases
  before 9.3.  However, commit 75b39e790 made an ill-considered
  decision to record which syntax had been used in FuncExpr nodes, and
  then to make equal() test that in checking node equality --- which
  caused the syntaxes to not be seen as equivalent by the planner.
  This is the underlying cause of bug #9817 from Dmitry Ryabov.  It
  might seem that a quick fix would be to make equal() disregard
  FuncExpr.funcvariadic, but the same commit made that untenable,
  because the field actually *is* semantically significant for some
  VARIADIC ANY functions.  This patch instead adopts the approach of
  redefining funcvariadic (and aggvariadic, in HEAD) as meaning that
  the last argument is a variadic array, whether it got that way by
  parser intervention or was supplied explicitly by the user.
  Therefore the value will always be true for non-ANY variadic
  functions, restoring the principle of equivalence.  (However, the
  planner will continue to consider use of VARIADIC as a meaningful
  difference for VARIADIC ANY functions, even though some such
  functions might disregard it.) In HEAD, this change lets us simplify
  the decompilation logic in ruleutils.c, since the
  funcvariadic/aggvariadic flag tells directly whether to print
  VARIADIC.  However, in 9.3 we have to continue to cope with existing
  stored rules/views that might contain the previous definition.
  Fortunately, this just means no change in ruleutils.c, since its
  existing behavior effectively ignores funcvariadic for all cases
  other than VARIADIC ANY functions.  In HEAD, bump catversion to
  reflect the fact that FuncExpr.funcvariadic changed meanings; this
  is sort of pro forma, since I don't believe any built-in views are
  affected.  Unfortunately, this patch doesn't magically fix
  everything for affected 9.3 users.  After installing 9.3.5, they
  might need to recreate their rules/views/indexes containing variadic
  function calls in order to get everything consistent with the new
  definition.  As in the cited bug, the symptom of a problem would be
  failure to use a nominally matching index that has a variadic
  function call in its definition.  We'll need to mention this in the
  9.3.5 release notes.

- Fix bogus time printout in walreceiver's debug log messages.  The
  displayed sendtime and receipttime were always exactly equal,
  because somebody forgot that timestamptz_to_str returns a static
  buffer (thereby simplifying life for most callers, at the cost of
  complicating it for those who need two results concurrently).  Apply
  the same pstrdup solution used by the other call sites with this
  issue.  Back-patch to 9.2 where the faulty code was introduced.  Per
  bug #9849 from Haruka Takatsuka, though this is not exactly his
  patch.  Possibly we should change timestamptz_to_str's API, but I
  wouldn't want to do so in the back branches.

- Make sure -D is an absolute path when starting server on Windows.
  This is needed because Windows services may get started with a
  different current directory than where pg_ctl is executed.  We want
  relative -D paths to be interpreted relative to pg_ctl's CWD,
  similarly to what happens on other platforms.  In support of this,
  move the backend's make_absolute_path() function into
  src/port/path.c (where it probably should have been long since) and
  get rid of the rather inferior version in pg_regress.  Kumar Rajeev
  Rastogi, reviewed by MauMau

- Preserve errno across free().  Dept. of second thoughts: free()
  isn't guaranteed not to change errno.  Make sure we report the right
  error if getcwd() fails.

- Allow "-C variable" and "--describe-config" even to root users.
  There's no really compelling reason to refuse to do these read-only,
  non-server-starting options as root, and there's at least one good
  reason to allow -C: pg_ctl uses -C to find out the true data
  directory location when pointed at a config-only directory.  On
  Windows, this is done before dropping administrator privileges,
  which means that pg_ctl fails for administrators if and only if a
  config-only layout is used.  Since the root-privilege check is done
  so early in startup, it's a bit awkward to check for these switches.
  Make the somewhat arbitrary decision that we'll only skip the root
  check if -C is the first switch.  This is not just to make the code
  a bit simpler: it also guarantees that we can't misinterpret a
  --boot mode switch.  (While AuxiliaryProcessMain doesn't currently
  recognize any such switch, it might have one in the future.)  This
  is no particular problem for pg_ctl, and since the whole behavior is
  undocumented anyhow, it's not a documentation issue either.
  (--describe-config only works as the first switch anyway, so this is
  no restriction for that case either.) Back-patch to 9.2 where pg_ctl
  first began to use -C.  MauMau, heavily edited by me

- Fix tablespace creation WAL replay to work on Windows.  The code
  segment that removes the old symlink (if present) wasn't clued into
  the fact that on Windows, symlinks are junction points which have to
  be removed with rmdir().  Backpatch to 9.0, where the failing code
  was introduced.  MauMau, reviewed by Muhammad Asif Naeem and Amit

- ecpg/ecpglib must build the src/port files it uses with -DFRONTEND.
  Remarkably, this hasn't been noticed before, though it surely should
  have been happening since around the fall of the Byzantine empire.
  Commit 438b529604 changed path.c to depend on FRONTEND, and that
  exposed the omission, per buildfarm reports.  I'm suspicious that
  some other subdirectories are missing this too, but this one change
  is enough to make ecpg tests pass for me.

- Fix processing of PGC_BACKEND GUC parameters on Windows.
  EXEC_BACKEND builds (i.e., Windows) failed to absorb values of
  PGC_BACKEND parameters if they'd been changed post-startup via the
  config file.  This for example prevented log_connections from
  working if it were turned on post-startup.  The mechanism for
  handling this case has always been a bit of a kluge, and it wasn't
  revisited when we implemented EXEC_BACKEND.  While in a normal
  forking environment new backends will inherit the postmaster's value
  of such settings, EXEC_BACKEND backends have to read the settings
  from the CONFIG_EXEC_PARAMS file, and they were mistakenly rejecting
  them.  So this case has always been broken in the Windows port; so
  back-patch to all supported branches.  Amit Kapila

- Block signals earlier during postmaster startup.  Formerly, we set
  up the postmaster's signal handling only when we were about to start
  launching subprocesses.  This is a bad idea though, as it means that
  for example a SIGINT arriving before that will kill the postmaster
  instantly, perhaps leaving lockfiles, socket files, shared memory,
  etc laying about.  We'd rather that such a signal caused orderly
  postmaster termination including releasing of those resources.  A
  simple fix is to move the PostmasterMain stanza that initializes
  signal handling to an earlier point, before we've created any such
  resources.  Then, an early-arriving signal will be blocked until
  we're ready to deal with it in the usual way.  (The only part that
  really needs to be moved up is blocking of signals, but it seems
  best to keep the signal handler installation calls together with
  that; for one thing this ensures the kernel won't drop any signals
  we wished to get.  The handlers won't get invoked in any case until
  we unblock signals in ServerLoop.) Per a report from MauMau.  He
  proposed changing the way "pg_ctl stop" works to deal with this, but
  that'd just be masking one symptom not fixing the core issue.  It's
  been like this since forever, so back-patch to all supported

- Improve contrib/pg_trgm's heuristics for regexp index searches.
  When extracting trigrams from a regular expression for search of a
  GIN or GIST trigram index, it's useful to penalize (preferentially
  discard) trigrams that contain whitespace, since those are typically
  far more common in the index than trigrams not containing
  whitespace.  Of course, this should only be a preference not a hard
  rule, since we might otherwise end up with no trigrams to search
  for.  The previous coding tended to produce fairly inefficient
  trigram search sets for anchored regexp patterns, as reported by
  Erik Rijkers.  This patch penalizes whitespace-containing trigrams,
  and also reduces the target number of extracted trigrams, since
  experience suggests that the original coding tended to select too
  many trigrams to search for.  Alexander Korotkov, reviewed by Tom

Simon Riggs pushed:

- Reduce lock levels of some ALTER TABLE cmds: VALIDATE CONSTRAINT
  COLUMN SET (), and ALTER COLUMN RESET ().  All other sub-commands
  use AccessExclusiveLock.  Simon Riggs and Noah Misch.  Reviews by
  Robert Haas and Andres Freund

- Isolation test files for ALTER TABLE patch

- Extra warnings and errors for PL/pgSQL.  Infrastructure to allow
  plpgsql.extra_warnings plpgsql.extra_errors Initial extra checks
  only for shadowed_variables Marko Tiikkaja and Petr Jelinek Reviewed
  by Simon Riggs and Pavel Stěhule

== Rejected Patches (for now) ==

No one was disappointed this week :-)

== Pending Patches ==

Michael Paquier sent in another revision of a patch to add a new
parameter RollbackError to control rollback behavior on error.

Edward Behn sent in a patch to allow returning array of composites
from PL/Python.

Etsuro Fujita sent in two more revisions of a patch to allow foreign
tables to be part of table inheritance hierarchies.

Yugo Nagata and Robert Haas traded patches to add to_regclass and

Peter Geoghegan sent in another revision of a patch to add a B-Tree
support function.

Bruce Momjian sent in a patch to fix an issue with socket handling on

Fabien COELHO sent in another revision of a patch to add a Gaussian
distribution option to pgbench.

Kumar Rajeev Rastogi sent in a patch to document the usage of CREATE
DATABASE with template specified.

Adrian Vondendriesch sent in two more revisions of a patch to provide
a allback_application_name in contrib/pgbench, oid2name, and dblink.

Ashutosh Bapat sent in a patch to fix an infelicity in how ECPG
handles types.

Michael Paquier sent in a patch to include replication slot data in
base backups.

Florian Pflug and Dean Rasheed traded patches to add inverse
transition functions for aggregates.

Abhijit Menon-Sen sent in a patch to add a fastbloat module.

Robert Haas sent in a draft patch to get rid of the dynamic shared
memory state file.

Heikki Linnakangas sent in another revision of a patch to change the
WAL format and API.

Kumar Rajeev Rastogi sent in a patch to fix an issue where CREATE
TABLE failed to fail on invalid syntax.

Emre Hasegeli sent in another revision of a patch to add GiST indexing
support for inet data types.


Sent via pgsql-announce mailing list (pgsql-announce <at> postgresql.org)
To make changes to your subscription:

Keith Fiske | 3 Apr 18:07 2014

PG Exractor 2.0.0 Stable Released

PGExtractor is a script that can be used to provide more finely detailed filtering options for PostgreSQL's pg_dump program. Version 2.x is a complete rewrite in python.


Non-compatibilities with 1.x to be aware of when dropping in 2.x to replace it

  • Requires Python 3
  • Many command line options have been changed for clarity.
  • The "hostname" is no longer a default part of the directory structure created. If this is still desired, set the --hostnamedir option with whatever the existing directory is.
  • Built in version control options are gone. They were rather fragile options and could easily lead to a whole lot of things getting checked into version control that should not have been. I've found it's easier (and safer) to manage version control check-ins separately. If these are really wanted please create an Issue on Github and I'll consider it if there's enough interest.
  • Removed --rolesdir option

New features:

  • Full python Class object with public methods that may possibly be useful on existing dump files
  • --jobs option to allow parallel object extraction
  • --remove_passwords option can remove the password hashes from an extracted roles file
  • --getdefaultprivs extracts the default privileges set for any roles that used ALTER DEFAULT PRIVILEGES
  • --delete cleans up empty folders properly
  • --wait option to allow a pause in object extraction. Helps reduce load when data is included in extraction.
  • --temp option to allow setting custom temporary working space
  • Sequences files can now include the statement to set the current value if data is output
  • Better support for when objects have mixed case names or special characters. Special characters in an object name turn into ,hexcode, to allow a valid system filename.
  • Rules & Triggers on views are now always included in the view file itself properly.

The version 1.x series written in perl will no longer be developed. Only bug fixes to the existing code will be accepted.

Keith Fiske
Database Administrator
OmniTI Computer Consulting, Inc.
martin otto | 3 Apr 11:10 2014

Skytools 3.2

We are pleased to announce new release of SkyTools 3.2

DataMaintainer can use CSV files as source and supports dynamic throttling
now, new adjustable logging of transient errors in scripts, added support
for PostgreSQL 9.3 and 9.4, improved compatibility with OS X and Windows.

Plus new options, minor features, many fixes and cleanups.

Details: http://pgfoundry.org/frs/shownotes.php?release_id=2078

Download: http://pgfoundry.org/frs/?group_id=1000206

Development: https://github.com/markokr/skytools

About Skytools

This is a package of tools developed at Skype for replication and failover.
It includes a generic queuing framework (PgQ), easy-to-use replication
implementation (Londiste), tool for managing WAL based standby servers,
utility library for Python scripts, selection of scripts for specific jobs.

Docs:     http://skytools.projects.postgresql.org/skytools-3.0/
Homepage: http://wiki.postgresql.org/wiki/SkyTools
SCM:      http://git.postgresql.org/gitweb?p=skytools.git;a=summary
List:     http://lists.pgfoundry.org/mailman/listinfo/skytools-users


Sent via pgsql-announce mailing list (pgsql-announce <at> postgresql.org)
To make changes to your subscription:

Koichi Suzuki | 3 Apr 08:29 2014

Postgres-XC 1.2.1 is out

Postgres-XC development group is pleased to announce that Postgres-XC
1.2.1 is out.

This includes many important features from PostgreSQL 9.3 such as
materialized views, LATERAL, event triggers and automatic updatable
views, as well as improved distributed query optimizer.   It also
comes with many fixes and improvement as found in the release note.

Release note is available at
Source tarball is available at
Document is available at http://postgres-xc.sourceforge.net/docs/1_2_1/

Koichi Suzuki


Sent via pgsql-announce mailing list (pgsql-announce <at> postgresql.org)
To make changes to your subscription:

David Fetter | 1 Apr 15:40 2014

== PostgreSQL Weekly News - April 01 2014 ==

== PostgreSQL Weekly News - April 01 2014 ==

PostgreSQL 10.0 Released.
This release includes built-in, tradeoff-free multi-master
replication, full integration with all other data stores, and a broad
choice of SQL query dialects including Cassandra, Hadoop, Oracle,
MS-SQL Server, MySQL, and mSQL.

== PostgreSQL Jobs for April ==


== PostgreSQL Local ==

The Open Data Summit will be held Friday April 11, 2014 in Denver,
Colorado, USA.

PGCon 2014, the world-wide developer conference for PostgreSQL, will
be in Ottawa, Ontario, Canada May 20-24, 2014.

The sixth PGDay Cubano be held on 13 and 14 October 2014 in Habana.

== PostgreSQL in the News ==

Planet PostgreSQL: http://planet.postgresql.org/

PostgreSQL Weekly News is brought to you this week by David Fetter

Submit news and announcements by Sunday at 3:00pm Pacific time.
Please send English language ones to david <at> fetter.org, German language
to pwn <at> pgug.de, Italian language to pwn <at> itpug.org.  Spanish language
to pwn <at> arpug.com.ar.

== Applied Patches ==

== Rejected Patches (for now) ==

Everyone was disappointed this week :-(


Sent via pgsql-announce mailing list (pgsql-announce <at> postgresql.org)
To make changes to your subscription:

Gilles Darold | 1 Apr 15:05 2014

pgCluu 2.0 released

pgCluu 2.0 released

Version 2.0 of pgCluu, a PostgreSQL performances monitoring and auditing
tool, has been officially released and is publicly available for download.

This major release adds more than twenty new reports. pgCluu now reports
everything you want to know about your PostgreSQL server from a cluster,
database, or operating system point of view. It is also able to collect
statistics about pgBouncer, shared buffer utilization using
pg_buffercache, most frequent and time consuming queries with
pg_stat_statements and really much more, see full list bellow.

Here's a demo site to show all reports that pgCluu can provide in this
v2.0 release: http://pgcluu.darold.net/example/index.html

About pgCluu:

pgCluu is a PostgreSQL performances monitoring and auditing tool. It
will show you the entire informations of the PostgreSQL Cluster and the
system utilization. It is divided in two parts, a collector used to grab
statistics on the PostgreSQL cluster using psql and sar, a grapher that
will generate all HTML and charts output. pgCluu is written in Perl and
doesn't need any dependency to be run on any server easily. There is
around 80 different reports, here follows the complete list of pgCluu

Clusters performances:

    - System informations like kernel, OS version, kernel tuning, CPUs
and memory details.
    - Filesystem usage and mount type.
    - Databases sizes.
    - Tablespaces sizes.
    - Number of connection per database.
    - Type of connection (active, idle, idle in transaction).
    - Number of deadlocks detected in databases.
    - Cache hit/miss ratio on all database.
    - Background writer cache cleaning statistics by checkpoints, lru
and backends.
    - Background writer counter stats.
    - Number of temporary files created by queries per database.
    - Size of temporary files created.
    - Number of WAL file in the xlog directory.
    - Statistics of checkpoints issued because of checkpoint_timeout and
checkpoints issued by request.
    - Checkpoint statistics of total amount of time spent in writing
file to disk and time spent in synchronization to disk.
    - Statistics about archiving (new pg_stat_archiver view).
    - Statistics about entries returned from the indexes and live rows
fetched from the tables.
    - Write ratio on databases excluding templates and postgres databases.
    - Affected rows on databases grouped by statement family (insert,
delete, update, select).
    - Shows all uncommented configuration directives from
postgresql.conf file.
    - Show all entries from pg_settings.
    - Shows all uncommented entries from pg_hba.conf file.
    - Shows all uncommented entries from pg_ident.conf file.
    - Shows all uncommented entries from pgbouncer.ini file.
    - Lag of replication between primary and secondary servers.
    - Number of queries canceled due to conflicts with recovery.
    - Conflicts per type occurring due to conflicts with recovery on
standby servers.

If pg_buffercache is installed there's some additional reports:

    - Show statistics about percentage of shared buffers used per database.
    - Show statistics about percentage of each databases loaded in
shared buffers.
    - Show statistics about usagecount (1-5)distribution in shared buffer.
    - Show statistics about usagecount distribution in dirty shared buffer.

Databases performances:

    - General database information (size, installed extension, defined
schemas, last manual vacuum/analyze) and count of all different objects
(stored procedures, triggers, sequences, composite types, indexes,
tables, toast tables and views).
    - Number of sequential scan versus index scan per table.
    - Number of analyze, autoanalyze, vacuum and autovacuum count per table.
    - Number of Insert/update/delete and hot update tuples per table.
    - Number of live and dead tuples per table.
    - Disk space used per tables with number of rows.
    - Top statistics about I/O per table.
    - Number of index entries returned by index scans, and number of
live table rows fetched per index.
    - Disk space used by the index with number of rows.
    - Top statistics about I/O per index.
    - List of indexes never used.
    - List of useless indexes because they are redundant.
    - List of missing indexes on foreign keys.
    - Evolution of the size of the database.
    - Number of clients connected to the database.
    - Cache hit/miss ratio on the database.
    - Number of deadlocks detected in the database.
    - Number of locks per type in a database.
    - Number of locks per lock mode held or desired.
    - Number of locks held (granted) or awaited (waiting).
    - Number of temporary file created for this database.
    - Size of temporary file created for this database.
    - Show entries returned from the index and live rows fetched from
the tables.
    - Write ratio on the database.
    - Affected rows on the database grouped by statement family (insert,
delete, update, select).
    - Number of commits / rollbacks per second and number of backends
per database.
    - Number of queries canceled due to conflicts with recovery in the
    - Conflicts per type on the database.

If pg_buffercache is installed there's some additional reports:

    - Number of shared buffer/pages used by a relation.
    - Number of buffers loaded in cache for a relation and the
percentage of the relation loaded.

and if pg_stat_statements is installed:

    - Top statistics about slowest or most used queries

pgBouncer performances:

    - Number of active/waiting clients, active/idle/used server
connections and maximum wait duration for client connections in each
pgbouncer pool.
    - Average queries duration in each pgbouncer pool.
    - Number of queries per second in each pgbouncer pool.

System performances:

    - Percentage of CPU utilization.
    - Amount of memory used to cache data or as buffers by the kernel
and free memory.
    - Total number of swap pages the system brought in/out per second.
    - System load average for the last minute, the past 5 and 15 minutes.
    - Number of tasks in the task list.
    - Number of tasks waiting for run time.
    - Total amount of data read/write from the devices in blocks per second.
    - Total number of kilobytes the system paged in/out from/to disk,
and number of major faults the system has made per second.
    - Percentage of CPU time used by I/O requests issued to a device.
    - Number of bytes read/write from/to a device.
    - The average service time (in milliseconds) for I/O requests that
were issued to a device.
    - Statistics about network devices utilization.
    - Statistics on failures from the network device.

All charts are zoomable and can be saved as PNG images. All tables are
sortable on all columns. If you think that some reports are missing,
feel free to submit a feature request. pgCluu should works on any
platform supported by psql and sysstat, it is available under the
PostgreSQL licence.

pgCluu is created and maintained by Gilles Darold (also author of ora2pg
and pgbadger).

Useful Links:

    * Website: http://pgcluu.darold.net/
    * Download: http://sourceforge.net/projects/pgcluu/
    * Development: https://github.com/darold/pgcluu
    * Changelog: https://github.com/darold/pgcluu/blob/master/ChangeLog

Gilles Darold
Administrateur de bases de données
http://dalibo.com - http://dalibo.org


Sent via pgsql-announce mailing list (pgsql-announce <at> postgresql.org)
To make changes to your subscription: