Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I'm trying to set-up bucardo in a master-slave setup with pushdelta, however I keep running into the following error when trying to create the sync.

bash-4.1$ bucardo_ctl add sync dns source=dns_tables type=pushdelta targetgroup=dns_slaves
WARNING:  Issuing rollback() due to DESTROY without explicit disconnect() of DBD::Pg::db handle dbname=dns;port=5432 at line 191.
CONTEXT:  PL/Perl function "validate_sync"
SQL statement "SELECT validate_sync('dns')"
PL/Perl function "validate_sync"
Failed to add sync: DBD::Pg::st execute failed: ERROR:  DBD::Pg::st execute failed: ERROR:  permission denied for schema bucardo
LINE 1: SELECT 1 FROM bucardo.bucardo_delta_targets WHERE tablename=...
                      ^ at line 191. at line 30.
CONTEXT:  PL/Perl function "validate_sync" at /usr/sbin/bucardo_ctl line 3362.

Is this because I didn't set-up the remote part properly or?, the master's hba/ident is as follows:

Master

pg_hba.conf

# TYPE  DATABASE        USER            CIDR-ADDRESS            METHOD

# "local" is for Unix domain socket connections only
#local   all             postgres                                trust
host    all             postgres        127.0.0.1/32            ident 
local   all             postgres                                ident     

local   all             bucardo                                 ident     map=bucardo
local   dns             dns                                     md5

host    all             all             127.0.0.1/32            md5

pg_ident.conf

# MAPNAME       SYSTEM-USERNAME         PG-USERNAME
bucardo         postgres                bucardo
bucardo         bucardo                 bucardo

Slave

pg_hba.conf

# TYPE  DATABASE        USER            CIDR-ADDRESS            METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     ident
host    all             all             127.0.0.1/32            ident

# 10.0.1.2 is the master
host    bucardo         bucardo         10.0.1.2/32             ident

I don't really have an idea what I'm doing wrong, but it probably has something to do with the remote side not being set-up properly, yet I haven't been able to find much on it.

share|improve this question
add comment

1 Answer

up vote 0 down vote accepted

For some reason I completely overlooked that you have to create a superuser on the slave for bucardo itself, after adding that the sync has been successfully enabled.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.