bucardo.git
11 years agoNot sure why this code is the way it is, but we need to prevent duplicate entries...
Greg Sabino Mullane [Sun, 29 Jun 2014 12:41:20 +0000 (08:41 -0400)]
Not sure why this code is the way it is, but we need to prevent duplicate entries, so here's a bandaid.

11 years agoMuch cleanup and expansion of conflict handler codes.
Greg Sabino Mullane [Sat, 28 Jun 2014 18:49:19 +0000 (14:49 -0400)]
Much cleanup and expansion of conflict handler codes.
Allow an overall winner to be declared by customcode, both one-time and until restart.
Use new pause_and_exit rather than dying, so kids don't just spin their wheels when something goes wrong.

11 years agoClean up args to conflict handling routines
Greg Sabino Mullane [Sat, 28 Jun 2014 12:07:18 +0000 (08:07 -0400)]
Clean up args to conflict handling routines

11 years agoShow associated syncs with customcodes
Greg Sabino Mullane [Sat, 28 Jun 2014 12:05:57 +0000 (08:05 -0400)]
Show associated syncs with customcodes

11 years agoProperly account for the case when the track table is empty, when doing our conflict...
Greg Sabino Mullane [Sat, 28 Jun 2014 12:00:15 +0000 (08:00 -0400)]
Properly account for the case when the track table is empty, when doing our conflict resolution lookups.
Add better debugging.

11 years agoMake sure we allow space-containing arguments for things like add_sync conflict=...
Greg Sabino Mullane [Sat, 28 Jun 2014 11:57:02 +0000 (07:57 -0400)]
Make sure we allow space-containing arguments for things like add_sync conflict="a b c"

11 years agoMake sure we only populate the final track table when the deltas for it are non-zero.
Greg Sabino Mullane [Fri, 27 Jun 2014 20:48:17 +0000 (16:48 -0400)]
Make sure we only populate the final track table when the deltas for it are non-zero.

11 years agoFix up conflict handling - make sure we have proper db handle, and record the actual...
Greg Sabino Mullane [Fri, 27 Jun 2014 20:40:47 +0000 (16:40 -0400)]
Fix up conflict handling - make sure we have proper db handle, and record the actual count, not just the existence.

11 years agoAllow alternate ways to say conflict_strategy (which is a pain to type!)
Greg Sabino Mullane [Thu, 26 Jun 2014 17:32:43 +0000 (13:32 -0400)]
Allow alternate ways to say conflict_strategy (which is a pain to type!)

11 years agoFixes and debugging for conflict strategy code
Greg Sabino Mullane [Thu, 26 Jun 2014 17:32:08 +0000 (13:32 -0400)]
Fixes and debugging for conflict strategy code

11 years agoAllow the CSV format when doing add database
Greg Sabino Mullane [Thu, 26 Jun 2014 17:31:27 +0000 (13:31 -0400)]
Allow the CSV format when doing add database

11 years agoAllow 'conflict' as an alias for 'conflict_strategy'
Greg Sabino Mullane [Thu, 26 Jun 2014 17:30:25 +0000 (13:30 -0400)]
Allow 'conflict' as an alias for 'conflict_strategy'

11 years agoAllow the dbnames parameter to specify roles when doing an add database
Greg Sabino Mullane [Thu, 26 Jun 2014 17:29:20 +0000 (13:29 -0400)]
Allow the dbnames parameter to specify roles when doing an add database

11 years agoTest timer tweak
Greg Sabino Mullane [Thu, 26 Jun 2014 17:29:11 +0000 (13:29 -0400)]
Test timer tweak

11 years agoGive better output when setting conflict_strategy, and do some basic validation.
Greg Sabino Mullane [Wed, 25 Jun 2014 20:25:22 +0000 (16:25 -0400)]
Give better output when setting conflict_strategy, and do some basic validation.
Allow conflict as an alias

11 years agoSkip noise word 'set' in update sync
Greg Sabino Mullane [Wed, 25 Jun 2014 17:45:52 +0000 (13:45 -0400)]
Skip noise word 'set' in update sync

11 years agoCache our makedelta other sync information. Adjust test to test it better.
Greg Sabino Mullane [Tue, 24 Jun 2014 16:01:19 +0000 (12:01 -0400)]
Cache our makedelta other sync information. Adjust test to test it better.

11 years agoAllow some other values for boolean args in bucardo: yes/no on/off
Greg Sabino Mullane [Tue, 24 Jun 2014 15:35:12 +0000 (11:35 -0400)]
Allow some other values for boolean args in bucardo: yes/no on/off

11 years agoMention wiki
Greg Sabino Mullane [Tue, 24 Jun 2014 14:22:21 +0000 (10:22 -0400)]
Mention wiki

11 years agoBump version to 5.0.1.
Greg Sabino Mullane [Tue, 24 Jun 2014 12:56:04 +0000 (08:56 -0400)]
Bump version to 5.0.1.
Mostly so we don't accidentally release another 5.0.0

11 years agoSignature for version 5.0.0 5.0.0
Greg Sabino Mullane [Mon, 23 Jun 2014 16:55:21 +0000 (12:55 -0400)]
Signature for version 5.0.0

11 years agoRelease date: 5.0.0 June 23, 2014
Greg Sabino Mullane [Mon, 23 Jun 2014 16:53:38 +0000 (12:53 -0400)]
Release date: 5.0.0 June 23, 2014

11 years agoMake sure tests have needed pid directory
Greg Sabino Mullane [Mon, 23 Jun 2014 16:07:08 +0000 (12:07 -0400)]
Make sure tests have needed pid directory

11 years agoFix up test test; better version output too.
Greg Sabino Mullane [Mon, 23 Jun 2014 14:44:39 +0000 (10:44 -0400)]
Fix up test test; better version output too.

11 years agoChange number of test values back to 30: over that runs into date problems, and we...
Greg Sabino Mullane [Mon, 23 Jun 2014 14:22:04 +0000 (10:22 -0400)]
Change number of test values back to 30: over that runs into date problems, and we no longer need higher values anyway.

11 years agoTest for servers going away suddenly and how Bucardo deals with that.
Greg Sabino Mullane [Mon, 23 Jun 2014 14:21:27 +0000 (10:21 -0400)]
Test for servers going away suddenly and how Bucardo deals with that.

11 years agoWe use 33 in some tests, so make our test values go until 40
Greg Sabino Mullane [Mon, 23 Jun 2014 00:18:10 +0000 (20:18 -0400)]
We use 33 in some tests, so make our test values go until 40

11 years agoPlan the tests *after* we adjust the counts
Greg Sabino Mullane [Sun, 22 Jun 2014 12:33:44 +0000 (08:33 -0400)]
Plan the tests *after* we adjust the counts

11 years agoThis test fails badly for older versions of DBD::Pg, so check for that and skip the...
Greg Sabino Mullane [Sun, 22 Jun 2014 12:03:02 +0000 (08:03 -0400)]
This test fails badly for older versions of DBD::Pg, so check for that and skip the tests as needed.

11 years agoAccount for test irregularities where most of the initdb-created data directory is...
Greg Sabino Mullane [Sat, 21 Jun 2014 20:33:37 +0000 (16:33 -0400)]
Account for test irregularities where most of the initdb-created data directory is gone, but some remains so pg_ctl fails.

11 years agoChange more 'database group' to 'dbgroup'
Greg Sabino Mullane [Sat, 21 Jun 2014 20:25:01 +0000 (16:25 -0400)]
Change more 'database group' to 'dbgroup'

11 years agoNeed Pod::Parser for bucardo help magic
Greg Sabino Mullane [Sat, 21 Jun 2014 19:36:54 +0000 (15:36 -0400)]
Need Pod::Parser for bucardo help magic

11 years agoThere are systems that, sadly, do not have CGI.
Greg Sabino Mullane [Sat, 21 Jun 2014 19:31:20 +0000 (15:31 -0400)]
There are systems that, sadly, do not have CGI.

11 years agoRemove debugging
Greg Sabino Mullane [Sat, 21 Jun 2014 19:13:29 +0000 (15:13 -0400)]
Remove debugging

11 years agoProper variable name
Greg Sabino Mullane [Sat, 21 Jun 2014 14:55:28 +0000 (10:55 -0400)]
Proper variable name

11 years agoSo it begins...version 5.0.0.
Greg Sabino Mullane [Fri, 20 Jun 2014 23:05:52 +0000 (19:05 -0400)]
So it begins...version 5.0.0.
(This time for sure)

11 years agoMinor release cleanups
Greg Sabino Mullane [Fri, 20 Jun 2014 17:26:19 +0000 (13:26 -0400)]
Minor release cleanups

11 years agoChange tests to reflect recent wording changes.
Greg Sabino Mullane [Thu, 19 Jun 2014 21:25:51 +0000 (17:25 -0400)]
Change tests to reflect recent wording changes.

11 years agoAdd a new lint test to detect hash names with spaces in them, to catch the mistake...
Greg Sabino Mullane [Thu, 19 Jun 2014 20:04:29 +0000 (16:04 -0400)]
Add a new lint test to detect hash names with spaces in them, to catch the mistake I made earlier.

11 years agoAny day now, but certainly not in 2013!t
Greg Sabino Mullane [Thu, 19 Jun 2014 16:29:27 +0000 (12:29 -0400)]
Any day now, but certainly not in 2013!t

11 years agoTypo!
Greg Sabino Mullane [Thu, 19 Jun 2014 15:16:36 +0000 (11:16 -0400)]
Typo!

11 years agoUse relgroup and dbgroup consistenly everywhere, rather than bouncing back and forth...
Greg Sabino Mullane [Thu, 19 Jun 2014 10:54:15 +0000 (06:54 -0400)]
Use relgroup and dbgroup consistenly everywhere, rather than bouncing back and forth between short and long forms.

11 years agoDon't clutter logs when a sync is paused and being kicked.
Greg Sabino Mullane [Wed, 18 Jun 2014 21:39:34 +0000 (17:39 -0400)]
Don't clutter logs when a sync is paused and being kicked.

11 years agoClean up some of the dependencies, get them in sync
Greg Sabino Mullane [Wed, 18 Jun 2014 13:48:49 +0000 (09:48 -0400)]
Clean up some of the dependencies, get them in sync

11 years agoTweak log_level output
Greg Sabino Mullane [Wed, 18 Jun 2014 13:41:33 +0000 (09:41 -0400)]
Tweak log_level output

11 years agoMake sure resumed syncs start out with a kick if needed
Greg Sabino Mullane [Wed, 18 Jun 2014 13:41:03 +0000 (09:41 -0400)]
Make sure resumed syncs start out with a kick if needed

11 years agoTabs to spaces
Greg Sabino Mullane [Wed, 18 Jun 2014 13:32:18 +0000 (09:32 -0400)]
Tabs to spaces

11 years agoOn install, switch to database postgres if our initial selection fails
Greg Sabino Mullane [Wed, 18 Jun 2014 13:30:57 +0000 (09:30 -0400)]
On install, switch to database postgres if our initial selection fails

11 years agoAllow dashes in usernames for install magic
Greg Sabino Mullane [Wed, 18 Jun 2014 13:28:58 +0000 (09:28 -0400)]
Allow dashes in usernames for install magic

11 years agoClean up wording on add_sync
Greg Sabino Mullane [Tue, 17 Jun 2014 13:15:37 +0000 (09:15 -0400)]
Clean up wording on add_sync

11 years agoTest cleanups
Greg Sabino Mullane [Sun, 15 Jun 2014 19:29:31 +0000 (15:29 -0400)]
Test cleanups

11 years agoAdjust tests for new add_database changes. Make sure that first db added to a new...
Greg Sabino Mullane [Sun, 15 Jun 2014 17:27:47 +0000 (13:27 -0400)]
Adjust tests for new add_database changes. Make sure that first db added to a new group is source, but if to an existing group, always target.

11 years agoNew makedelta plan: do not rely on ALWAYS triggers (too many side effects), but looku...
Greg Sabino Mullane [Sun, 15 Jun 2014 15:58:11 +0000 (11:58 -0400)]
New makedelta plan: do not rely on ALWAYS triggers (too many side effects), but lookup the other syncs and send messages to them manually.

11 years agoAdd some magic to transform raw "active" and "inactive" to status=$1
Greg Sabino Mullane [Sun, 15 Jun 2014 11:53:08 +0000 (07:53 -0400)]
Add some magic to transform raw "active" and "inactive" to status=$1

11 years agoFix up reload - the whole MCP if not args, else look for named syncs.
Greg Sabino Mullane [Sun, 15 Jun 2014 10:33:05 +0000 (06:33 -0400)]
Fix up reload - the whole MCP if not args, else look for named syncs.

11 years agoSkip the 'extra args' when doing an update_database
Greg Sabino Mullane [Sun, 15 Jun 2014 10:28:23 +0000 (06:28 -0400)]
Skip the 'extra args' when doing an update_database

11 years agoWhen grabbing the last modification time for all tables in conflict resolution, make...
Greg Sabino Mullane [Sat, 14 Jun 2014 23:33:30 +0000 (19:33 -0400)]
When grabbing the last modification time for all tables in conflict resolution, make sure we shove NULLs to the bottom!

11 years agoAllow syncs to be paused and resumed via command line.
Greg Sabino Mullane [Sat, 14 Jun 2014 17:54:53 +0000 (13:54 -0400)]
Allow syncs to be paused and resumed via command line.

11 years agoDo not allow syncs to be named "sync"
Greg Sabino Mullane [Sat, 14 Jun 2014 16:41:16 +0000 (12:41 -0400)]
Do not allow syncs to be named "sync"

11 years agoFix incorrect table gathering
Greg Sabino Mullane [Sat, 14 Jun 2014 12:45:36 +0000 (08:45 -0400)]
Fix incorrect table gathering

11 years agoAllow 'bucardo stop' to work if piddir is set (and if database is not reachable)
Greg Sabino Mullane [Fri, 13 Jun 2014 17:36:59 +0000 (13:36 -0400)]
Allow 'bucardo stop' to work if piddir is set (and if database is not reachable)

11 years agoAllow :s and :t as valid shortcuts when specifying roles for a database
Greg Sabino Mullane [Fri, 13 Jun 2014 11:03:48 +0000 (07:03 -0400)]
Allow :s and :t as valid shortcuts when specifying roles for a database

11 years agoDo not show connction failure message on install if we are trying a different user.
Greg Sabino Mullane [Fri, 13 Jun 2014 11:02:53 +0000 (07:02 -0400)]
Do not show connction failure message on install if we are trying a different user.
If the postgres user fails on install, try ENV{USER} - even in batch mode.

11 years agoWhen adding all tables, make sure we truly find the best db (previous check was not...
Greg Sabino Mullane [Fri, 13 Jun 2014 11:01:31 +0000 (07:01 -0400)]
When adding all tables, make sure we truly find the best db (previous check was not enough, as dbcols->{db} was often undef but existed)

11 years agoAllow the role to be specified when adding dbgroups from command line during 'bucardo...
Greg Sabino Mullane [Fri, 13 Jun 2014 11:00:33 +0000 (07:00 -0400)]
Allow the role to be specified when adding dbgroups from command line during 'bucardo add database'

11 years agoRemove duplicated arg
Greg Sabino Mullane [Fri, 13 Jun 2014 10:54:07 +0000 (06:54 -0400)]
Remove duplicated arg

11 years agoDo not default to user 'bucardo' on install
Greg Sabino Mullane [Fri, 13 Jun 2014 10:43:25 +0000 (06:43 -0400)]
Do not default to user 'bucardo' on install

11 years agoAllow the piddir to be overidden at the bucardorc level
Greg Sabino Mullane [Thu, 12 Jun 2014 16:04:42 +0000 (12:04 -0400)]
Allow the piddir to be overidden at the bucardorc level

11 years agoFix up customcode for conflict handlers
Greg Sabino Mullane [Wed, 11 Jun 2014 13:58:50 +0000 (09:58 -0400)]
Fix up customcode for conflict handlers

11 years agoAllow syncs to be updates with just 'active' or 'inactive' as shortcuts for status=xxx
Greg Sabino Mullane [Wed, 11 Jun 2014 13:58:11 +0000 (09:58 -0400)]
Allow syncs to be updates with just 'active' or 'inactive' as shortcuts for status=xxx

11 years agoAllow update customcode to change the source code
Greg Sabino Mullane [Wed, 11 Jun 2014 13:56:30 +0000 (09:56 -0400)]
Allow update customcode to change the source code

11 years agoMinor fixes to bucardo script
Greg Sabino Mullane [Wed, 11 Jun 2014 13:55:48 +0000 (09:55 -0400)]
Minor fixes to bucardo script

11 years agoOn startup, go ahead and charge forward if the PID in the mcp pid file seems invalid...
Greg Sabino Mullane [Wed, 11 Jun 2014 13:53:04 +0000 (09:53 -0400)]
On startup, go ahead and charge forward if the PID in the mcp pid file seems invalid - and remove that file as well.
Per github issue #80

11 years agoAdjust the makedelta tests
Greg Sabino Mullane [Tue, 10 Jun 2014 16:30:10 +0000 (12:30 -0400)]
Adjust the makedelta tests

11 years agoClean up makedelta system a bit
Greg Sabino Mullane [Tue, 10 Jun 2014 11:50:31 +0000 (07:50 -0400)]
Clean up makedelta system a bit

11 years agoChange the per-sync isolation level default to match the global one: repeatable read...
Greg Sabino Mullane [Mon, 9 Jun 2014 15:55:20 +0000 (11:55 -0400)]
Change the per-sync isolation level default to match the global one: repeatable read. Serializable was simply causing too many problems in the tests, and is most likely overkill considering the usual workload of DELETE/COPY.

11 years agoPrevent autovivification of an important hash.
Greg Sabino Mullane [Mon, 9 Jun 2014 11:51:34 +0000 (07:51 -0400)]
Prevent autovivification of an important hash.
This was causing too many updates to the trigger tracking table.
Should clear up recurring serialization errors seen.

11 years agoMinor formatting cleanups
Greg Sabino Mullane [Sun, 8 Jun 2014 17:15:05 +0000 (13:15 -0400)]
Minor formatting cleanups

11 years agoTweak test for new output format
Greg Sabino Mullane [Sun, 8 Jun 2014 12:44:27 +0000 (08:44 -0400)]
Tweak test for new output format

11 years agoOnly assume database being added to a group is source if we have more than one db...
Greg Sabino Mullane [Sun, 8 Jun 2014 12:43:21 +0000 (08:43 -0400)]
Only assume database being added to a group is source if we have more than one db being added at once

11 years agoMake sure we turn off confirm_commit when testing
Greg Sabino Mullane [Sun, 8 Jun 2014 00:06:24 +0000 (20:06 -0400)]
Make sure we turn off confirm_commit when testing

11 years agoTabs again.
Greg Sabino Mullane [Sat, 7 Jun 2014 21:09:00 +0000 (17:09 -0400)]
Tabs again.

11 years agoadd_sync: fix checking for existing dbgroup; add back in confirm_commit
Greg Sabino Mullane [Sat, 7 Jun 2014 19:36:55 +0000 (15:36 -0400)]
add_sync: fix checking for existing dbgroup; add back in confirm_commit

11 years agoMake tables=all (e.g. for add_sync) add only tables with pkeys or unique indexes...
Greg Sabino Mullane [Sat, 7 Jun 2014 19:32:14 +0000 (15:32 -0400)]
Make tables=all (e.g. for add_sync) add only tables with pkeys or unique indexes; also excludes the bucardo schema.

11 years agoUse savepoints when removing databases, in case we need to use the evals
Greg Sabino Mullane [Sat, 7 Jun 2014 18:58:55 +0000 (14:58 -0400)]
Use savepoints when removing databases, in case we need to use the evals

11 years agoAdd new ENV BUCARDO_CONFIRM which sets bcargs->{confirm} inside of the bucardo program.
Greg Sabino Mullane [Sat, 7 Jun 2014 18:43:20 +0000 (14:43 -0400)]
Add new ENV  BUCARDO_CONFIRM which sets bcargs->{confirm} inside of the bucardo program.

11 years agoMild doc updates
Greg Sabino Mullane [Sat, 7 Jun 2014 18:37:10 +0000 (14:37 -0400)]
Mild doc updates

11 years agoUse smallint, integer, and bigint rather than int[248] for the column types in the...
Greg Sabino Mullane [Sat, 7 Jun 2014 18:29:27 +0000 (14:29 -0400)]
Use smallint, integer, and bigint rather than int[248] for the column types in the goat table.

11 years agoAllow add_database to take more than one arg so we can add multiple databases at...
Greg Sabino Mullane [Sat, 7 Jun 2014 15:10:44 +0000 (11:10 -0400)]
Allow add_database to take more than one arg so we can add multiple databases at once via command line

11 years agoAllow the 'dbs' argument to specify a dbgroup when doing "add_sync", for backwards...
Greg Sabino Mullane [Fri, 6 Jun 2014 22:32:12 +0000 (18:32 -0400)]
Allow the 'dbs' argument to specify a dbgroup when doing "add_sync", for backwards compatibility.

11 years agoRemove few instances of trailing whitespace
Greg Sabino Mullane [Fri, 6 Jun 2014 19:51:11 +0000 (15:51 -0400)]
Remove few instances of trailing whitespace

11 years agoTrailing whitespace check for Bucardo.pm too
Greg Sabino Mullane [Fri, 6 Jun 2014 19:50:56 +0000 (15:50 -0400)]
Trailing whitespace check for Bucardo.pm too

11 years agoQuick trailing whitespace testing
Greg Sabino Mullane [Fri, 6 Jun 2014 19:47:59 +0000 (15:47 -0400)]
Quick trailing whitespace testing

11 years agoMake add_sync much smarter and clearer. Should now be able to add dbgroups, dbs,...
Greg Sabino Mullane [Fri, 6 Jun 2014 19:47:21 +0000 (15:47 -0400)]
Make add_sync much smarter and clearer. Should now be able to add dbgroups, dbs, tables, and relgroups more intuitively.

11 years agoUse -l to check for a symlink.
David E. Wheeler [Tue, 3 Jun 2014 21:22:36 +0000 (14:22 -0700)]
Use -l to check for a symlink.

Not -s. From [-X.pod](http://perldoc.perl.org/functions/-X.html):

    -s  File has nonzero size (returns size in bytes).
    -l  File is a symbolic link.

Bug introduced in 9a1c0dbf.

11 years agoAllow args to use : or = as delimiters.
Greg Sabino Mullane [Sun, 1 Jun 2014 22:07:48 +0000 (18:07 -0400)]
Allow args to use : or = as delimiters.
Allow more aliases for tables in add sync calls.

11 years agoSet the log prefix immediately after forking, based on the passed-in type
Greg Sabino Mullane [Sun, 1 Jun 2014 20:34:09 +0000 (16:34 -0400)]
Set the log prefix immediately after forking, based on the passed-in type

11 years agoSpellcheck and linty cleanups
Greg Sabino Mullane [Sat, 31 May 2014 18:38:43 +0000 (14:38 -0400)]
Spellcheck and linty cleanups

11 years agoMake sure we import our methods!
Greg Sabino Mullane [Sat, 31 May 2014 12:34:54 +0000 (08:34 -0400)]
Make sure we import our methods!

11 years agoTabs to spaces
Greg Sabino Mullane [Sat, 31 May 2014 12:30:07 +0000 (08:30 -0400)]
Tabs to spaces