Search Engine: Elastic

Article ID: 117144, created on Sep 5, 2013, last review on May 9, 2014

  • Applies to:
  • Operations Automation


  1. The task 'Update PowerDns' fails with the error message provided below:

    Operation with storage caused error: 'dbname=powerdns user=powerdns host= Connection to database failed: FATAL: database is not accepting commands to avoid wraparound data loss in database "powerdns" HINT: Stop the postmaster and use a standalone backend to vacuum database "powerdns".'


The PostgreSQL database mentioned in the error message ('powerdns' in the case above) was not vacuum-ed for a long time.


Do the 'VACUUM FULL' operation on the affected database mentioned in the failed task (in this case the problem database is 'powerdns').

  1. Log into the PostgreSQL server where the database is located by SSH as root (most probably it is the PowerDNS server itself and PostgreSQL database is running locally, IP address of the server is shown in the failed task).

  2. Stop the PostgreSQL server:

    /etc/init.d/postgresql stop

  3. Change from root to the 'postgres' user using the following command

    su - postgres

  4. Run postmaster in single user mode and execute VACUUM FULL on the problem database:

    $ /usr/pgsql-9.0/bin/postgres --single -D /var/lib/pgsql/9.0/data/ powerdns backend> VACUUM FULL;

    Note: replace 'powerdns' in the command above with the actual name of the problem PostgreSQL database.

  5. Run failed task in POA Task Manager.

In order to avoid such issue in the future, enable the autovacuum in the PostgreSQL server - make sure that the following option is present in the postgresql.conf file and is not commented:

autovacuum = on

caea8340e2d186a540518d08602aa065 5356b422f65bdad1c3e9edca5d74a1ae e12cea1d47a3125d335d68e6d4e15e07

Email subscription for changes to this article
Save as PDF