[Bucardo-general] Bucardo no longer automatically syncing after upgrading source DB.

Adam Wendt thelsdj at gmail.com
Thu Oct 13 20:13:41 UTC 2011


While I was debugging more I found:


    ## If the name is 'all', recursively call on all objects of this
type    if ($name =~ /all/i) {        for my $item (sort keys %$thing)
{            &$caller($item, @actions);        }        return 0;    }
Which if I use a sync name with something like 'small' this fires and
gives error:

Can't use string ("bucardo::update_sync") as a subroutine ref while
"strict refs" in use at /usr/bin/bucardo line 8566.
So the regex needs to be a bit more specific, changed it to ^all$, let
me know if that isn't right.


On Thu, Oct 13, 2011 at 4:54 AM, Greg Sabino Mullane <greg at endpoint.com> wrote:
> On Thu, Oct 13, 2011 at 03:54:45AM -0700, Adam Wendt wrote:
> ...
>> Why might it not be automatically syncing and what can I do to fix
>> this? For now I'm just running a bash script to kick all the syncs
>> every 30 seconds, but do want to get this fixed.
>
> Sounds like the "triggerkick" triggers are no longer there. Check one
> of the tables with a \d tablename and see if there is a trigger with
> a name containing triggerkick. If not there, make sure the sync
> has "ping" set to true. (bucardo list sync foobar -vv). If it's off,
> flip it on with 'bucardo update sync foobar ping=true', then run
> 'bucardo validate foobar' and see if the trigger gets created.
>
> If the triggerkick trigger was already there, then obviously something
> else is funny: send me that output of \d tablename and \df+ thattrigger
> if you can.
>
>> For now I'm just running a bash script to kick all the syncs
>> every 30 seconds
>
> FWIW, you can have Bucardo itself do this by having each sync fire
> after a certain time period with:
>
> bucardo update sync foobar checktime=30
>
> --
> Greg Sabino Mullane greg at endpoint.com
> End Point Corporation
> PGP Key: 0x14964AC8
>


More information about the Bucardo-general mailing list