Hi,

OK, I got past the table addition problem by specifying the relgroup and I have added all the Primary Keys required but I am running into an error that doesn't appear to have much online for:

   bucardo@pg1:~$ DBUSER=bucardo DBPASS=*** bucardo add sync the_sync 
relgroup=copying_herd dbs=source_db:source,dest_db:target onetimecopy=2
   WARNING:  Issuing rollback() due to DESTROY without explicit disconnect() of 
DBD::Pg::db handle dbname=good_rails_production at -e line 56.
   Failed to add sync: DBD::Pg::st execute failed: ERROR:  DBD::Pg::db do failed: ERROR:  
role "bucardo" already exists at line 186. at line 30.
   CONTEXT:  PL/Perl function "validate_sync" at /usr/local/bin/bucardo line 
4633.


In the Log file I see this:

   2017-01-11 21:00:55.653 UTC [00000] [29258]: [1] 
db=[unknown],user=[unknown],host=[local] LOG:  connection received: host=[local]
   2017-01-11 21:00:55.654 UTC [00000] [29258]: [2] 
db=bucardo,user=bucardo,host=[local] LOG:  connection authorized: user=bucardo 
database=bucardo
   2017-01-11 21:00:55.724 UTC [00000] [29258]: [3] 
db=bucardo,user=bucardo,host=[local] LOG:  Starting validate_sync for the_sync
   2017-01-11 21:00:55.724 UTC [00000] [29258]: [4] db=bucardo,user=bucardo,host=[local] 
CONTEXT:  PL/Perl function "validate_sync"
            SQL statement "SELECT validate_sync('the_sync')"
            PL/Perl function "validate_sync"
   2017-01-11 21:00:55.724 UTC [00000] [29258]: [5] 
db=bucardo,user=bucardo,host=[local] STATEMENT:  INSERT INTO bucardo.sync 
(name,dbs,herd,onetimecopy) VALUES ($1,$2,$3,$4)
   2017-01-11 21:00:56.319 UTC [00000] [29259]: [1] 
db=[unknown],user=[unknown],host=[local] LOG:  connection received: host=[local]
   2017-01-11 21:00:56.320 UTC [00000] [29259]: [2] 
db=good_rails_production,user=bucardo,host=[local] LOG:  provided user name 
(bucardo) and authenticated user name (postgres) do not match
   2017-01-11 21:00:56.320 UTC [28000] [29259]: [3] 
db=good_rails_production,user=bucardo,host=[local] FATAL:  Peer authentication failed for 
user "bucardo"
   2017-01-11 21:00:56.320 UTC [28000] [29259]: [4] 
db=good_rails_production,user=bucardo,host=[local] DETAIL:  Connection matched 
pg_hba.conf line 29: "local   all           bucardo                  ident"
   2017-01-11 21:00:56.321 UTC [00000] [29260]: [1] 
db=[unknown],user=[unknown],host=[local] LOG:  connection received: host=[local]
   2017-01-11 21:00:56.322 UTC [00000] [29260]: [2] 
db=good_rails_production,user=postgres,host=[local] LOG:  connection 
authorized: user=postgres database=good_rails_production
   2017-01-11 21:00:56.323 UTC [00000] [29260]: [3] 
db=good_rails_production,user=postgres,host=[local] LOG:  statement: CREATE 
USER bucardo SUPERUSER
   2017-01-11 21:00:56.323 UTC [42710] [29260]: [4] 
db=good_rails_production,user=postgres,host=[local] ERROR:  role "bucardo" 
already exists
   2017-01-11 21:00:56.323 UTC [42710] [29260]: [5] 
db=good_rails_production,user=postgres,host=[local] STATEMENT:  CREATE USER 
bucardo SUPERUSER
   2017-01-11 21:00:56.323 UTC [01000] [29258]: [6] 
db=bucardo,user=bucardo,host=[local] WARNING:  Issuing rollback() due to 
DESTROY without explicit disconnect() of DBD::Pg::db handle 
dbname=good_rails_production at -e line 56.
   2017-01-11 21:00:56.323 UTC [01000] [29258]: [7] db=bucardo,user=bucardo,host=[local] 
CONTEXT:  PL/Perl function "validate_sync"
            SQL statement "SELECT validate_sync('the_sync')"
            PL/Perl function "validate_sync"
   2017-01-11 21:00:56.323 UTC [00000] [29260]: [6] 
db=good_rails_production,user=postgres,host=[local] LOG:  disconnection: 
session time: 0:00:00.002 user=postgres database=good_rails_production 
host=[local]
   2017-01-11 21:00:56.325 UTC [38000] [29258]: [8] db=bucardo,user=bucardo,host=[local] 
ERROR:  DBD::Pg::db do failed: ERROR:  role "bucardo" already exists at line 
186. at line 30.
   2017-01-11 21:00:56.325 UTC [38000] [29258]: [9] db=bucardo,user=bucardo,host=[local] 
CONTEXT:  PL/Perl function "validate_sync"
   2017-01-11 21:00:56.325 UTC [38000] [29258]: [10] 
db=bucardo,user=bucardo,host=[local] STATEMENT:  INSERT INTO bucardo.sync 
(name,dbs,herd,onetimecopy) VALUES ($1,$2,$3,$4)
   2017-01-11 21:00:56.326 UTC [00000] [29258]: [11] 
db=bucardo,user=bucardo,host=[local] LOG:  disconnection: session time: 
0:00:00.673 user=bucardo database=bucardo host=[local]

Specifically this is weird: "

LOG:  provided user name (bucardo) and authenticated user name (postgres) do 
not match

"

But it clearly matches line 29 authentication below it?

Why does the system try to recreate user bucardo?

Any ideas?

Don.

On 01/10/2017 11:35 AM, Donald StDenis wrote:
Hi,

I finally got back to this project... Used github to get latest from master, ran the perl make, make, and make test (almost all succeeded, couple of them failed) then installed it. Then ran through the above installation again. Fails same way.

Its been a while since I debugged PERL but the PERL does not seem to be the issue here...

I have never debugged Postgres stored procedures/functions BEFORE - but I see quite a few in the schema file. Which one would be the most interesting to add logging lines to to debug?

I checked the master database carefully there are no entries put into the Postgres log file when the sync is added.

Nothing appears to STDOUT or STDERR.

Is there a suggested debugging process I can follow to move forward here?

On Mon, Dec 19, 2016 at 2:00 PM, Donald StDenis <[email protected] <mailto:[email protected]>> wrote:

    Here’s the output from the command lines, I don’t see any errors
    or warnings in the database log file.  Earlier I tried the —debug
    options on the start and saw no differences.  Also previously
    (about 6 months ago while testing with 9.2->9.2 replication) I
    always got errors for trying to add tables without any UNIQUE or
    PRIMARY KEYS but there is none now.

    Current output:

    bucardo@ale-pg1:~$ echo "DROP DATABASE good_rails_production" |
    psql bucardo
    bucardo@ale-pg1:~$ pg_dump --host=10.223.160.229
    --dbname=good_rails_production --user=bucardo --schema-only
    --create --format=plain  > schema-all.sql
    bucardo@ale-pg1:~$ echo "
      CREATE USER conn*** WITH LOGIN SUPERUSER ENCRYPTED PASSWORD '***';
      CREATE USER repo*** WITH LOGIN ENCRYPTED PASSWORD '***';
    " | psql bucardo
    ERROR:  role "conn***" already exists
    ERROR:  role "repo***" already exists
    bucardo@ale-pg1:~$ psql --dbname=postgres --user=bucardo -f
    schema-all.sql
    <completes without error... very long>

    bucardo@ale-pg1:~$ bucardo add db source_db dbhost=10.223.160.229
    dbport=5432 dbname=good_rails_production dbuser=bucardo dbpass=****
    Added database "source_db"
    bucardo@ale-pg1:~$ bucardo add db dest_db
    dbname=good_rails_production dbuser=bucardo
    Added database "dest_db"
    bucardo@ale-pg1:~$ bucardo add all tables
    New tables added: 275
    bucardo@ale-pg1:~$ bucardo add all sequences
    New sequences added: 99
    bucardo@ale-pg1:~$ bucardo add herd copying_herd
    Created relgroup "copying_herd"
    bucardo@ale-pg1:~$ bucardo add sync the_sync relgroup=copying_herd
    dbs=source_db:source,dest_db:target onetimecopy=2
    WARNING:  Relgroup has no members: copying_herd
    Added sync "the_sync"
    Created a new dbgroup named "the_sync"

    bucardo@ale-pg1:~$ bucardo start
    Checking for existing processes
    Removing file "/var/run/bucardo/fullstopbucardo"
    Starting Bucardo
    bucardo@ale-pg1:~$ bucardo status
    PID of Bucardo MCP: 28741
     Name       State    Last good    Time    Last I/D    Last bad    Time
    ==========+========+============+=======+===========+===========+=======
     the_sync | Bad    | none     |       |           | 16:48:44  | 3s
    bucardo@ale-pg1:~$ bucardo status the_sync
    ======================================================================
    Use of uninitialized value $sourcedb in concatenation (.) or
    string at /usr/bin/bucardo line 6013.
    Last bad                 : Dec 19, 2016 16:48:44 (time until fail: 1s)
    Sync name                : the_sync
    Current state            : Bad
    Source relgroup/database : copying_herd /
    Tables in sync           : 0
    Status                   : Active
    Check time               : None
    Overdue time             : 00:00:00
    Expired time             : 00:00:00
    Stayalive/Kidsalive      : Yes / Yes
    Rebuild index            : No
    Autokick                 : Yes
    Onetimecopy              : No
    Post-copy analyze        : Yes
    Last error:              : Failed : DBD::Pg::st execute failed:
    ERROR:  schema "bucardo" does not exist LINE 1: ...ident(tname),
    MAX(EXTRACT(epoch FROM cdate)) FROM bucardo.bu...        ^ at /usr/sh\
    are/perl5/Bucardo.pm line 3299. Line: 5041 Main DB state: ? Error:
    none DB dest_db state: ? Error: none DB source_db state: 3F000
    Error: 7  (KID 28752)
    ======================================================================
    bucardo@ale-pg1:~$ bucardo stop
    Creating /var/run/bucardo/fullstopbucardo ... Done



    On Dec 19, 2016, at 1:49 PM, David Christensen
    <[email protected] <mailto:[email protected]>> wrote:


    On Dec 19, 2016, at 11:06 AM, Donald StDenis
    <[email protected]
    <mailto:[email protected]>> wrote:

    Hi,

    I’ve been trying to set up Bucardo replication from Pg9.2 to
    Pg9.6 and I can’t seem to make the replication start.

    I did this from 9.2->9.2 about 6 months ago with almost no
    problems as I recall.

    The bucardo status error on the slave is:

    bacardi:~$ bucardo status

    [snip]

    Hi Donald,

    If it’s not finding the “bucardo” schema, that would indicate
    that the “validate_sync()” step did not complete successfully
    when you did an `bucardo add sync …`.  Do you have logs of the
    steps for setting this up and any errors encountered in that process?

    Best,

    David
    --
    David Christensen
    End Point Corporation
    [email protected] <mailto:[email protected]>
    785-727-1171 <tel:%28785%29%20727-1171>







--
--
*Donald St. Denis*
DevOps Engineer
/[email protected] <mailto:[email protected]>/
/707-331-9624/

_______________________________________________
Bucardo-general mailing list
[email protected]
https://mail.endcrypt.com/mailman/listinfo/bucardo-general

Reply via email to