[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