Steve Singer [Wed, 23 Jun 2010 20:03:08 +0000 (20:03 +0000)]
Updating release notes
Steve Singer [Tue, 1 Jun 2010 15:14:05 +0000 (15:14 +0000)]
Memory leak fixes submittedb by Ulrich Weber
http://lists.slony.info/pipermail/slony1-hackers/2010-April/000321.html
Steve Singer [Fri, 28 May 2010 13:22:52 +0000 (13:22 +0000)]
Updating version number to 2.0.4
No longer generate warning of a unsupported version with Pg 9.0
Steve Singer [Thu, 27 May 2010 20:42:31 +0000 (20:42 +0000)]
checkin in a regenerated configure, the previous commit didn't reflect the cvs version of some m4 files. We really shouldn't have configure scripts in cvs
Steve Singer [Thu, 27 May 2010 20:38:32 +0000 (20:38 +0000)]
Remove direct uses of yyleng and instead use the function yyget_leng()
More recent versions of flex have changed yyleng from an int to a size_t.
By using the function we will let the compiler do the conversion if required
on the function result.
We also add an explicit object for scan.o instead of including it at the
bottom of parser.y because we need to generate and include a header for
the scanner (scan.h) so we have the explicit(and correct) definitions of
the yyyget_leng() function.
A autoconf check to ensure that a version of flex with yyget_leng() is
available has also been added.
Steve Singer [Tue, 25 May 2010 13:25:58 +0000 (13:25 +0000)]
Documentation clarification, submitted by singh.gurjeet@gmail.com
Steve Singer [Mon, 17 May 2010 18:20:05 +0000 (18:20 +0000)]
Clarifying documentation to be clear that 'DROP SCHEMA' must be
used to drop the slony schema.
Steve Singer [Mon, 17 May 2010 17:15:19 +0000 (17:15 +0000)]
The variable name is wrong (syntax error on execution). Switched to correct
variable name
Steve Singer [Thu, 13 May 2010 19:34:31 +0000 (19:34 +0000)]
Bug # 119
cloneNodeFinish() called updateRelOid() that was looking at tab_id in
sl_sequence but the column is named seq_id
Report/patch from Chirag Dave (cdave@ca.afilias.info)
Devrim GUNDUZ [Mon, 3 May 2010 05:58:34 +0000 (05:58 +0000)]
Get rid of *some* references to gborg, and point them to new website.
Devrim GUNDUZ [Mon, 3 May 2010 05:47:39 +0000 (05:47 +0000)]
Update mailing list URL, and also add Lenny to supported platforms list.
Devrim GUNDUZ [Mon, 3 May 2010 05:43:05 +0000 (05:43 +0000)]
Update supported platforms list.
Steve Singer [Fri, 30 Apr 2010 21:45:47 +0000 (21:45 +0000)]
Jan's patch for an issue reported on the mailing list where
tuples with large rows where causing data corruption (reported
as invalid utf8 characters) because the memory was freed while
it was still being used.
This issue was introduced with 1.176.2.8 on Feb 11 2010
Steve Singer [Wed, 21 Apr 2010 20:17:10 +0000 (20:17 +0000)]
Documentation fix: a 'wait for event' following a 'lock set' does not
actually work(no event to wait on). You do not need to wait for the lock set
because once the 'lock set' returns you already have the lock.
Devrim GUNDUZ [Sun, 18 Apr 2010 09:12:42 +0000 (09:12 +0000)]
Fix shebang, per #108.
Devrim GUNDUZ [Sat, 10 Apr 2010 12:40:16 +0000 (12:40 +0000)]
Fix sgml error.
Steve Singer [Fri, 9 Apr 2010 20:29:09 +0000 (20:29 +0000)]
Changing label to match 2_0_3 instead of the generic 'stable'
Christopher Browne [Tue, 6 Apr 2010 20:45:13 +0000 (20:45 +0000)]
Commit configure, after building it
Christopher Browne [Tue, 6 Apr 2010 20:42:48 +0000 (20:42 +0000)]
Lots of updates to release notes preparatory to 2.0.3 RC4
Christopher Browne [Tue, 6 Apr 2010 20:12:14 +0000 (20:12 +0000)]
Improve comment about "missing function" - the problem could be that
libpq wasn't found, not just that you're on some grossly ancient version
of PostgreSQL
Steve Singer [Tue, 6 Apr 2010 20:06:27 +0000 (20:06 +0000)]
DROP cloneNodePrepare if it exists because the return type might have changed.
Bug # 113 patch from Atte Peltomäki
David Fetter [Fri, 2 Apr 2010 16:31:21 +0000 (16:31 +0000)]
Fixed some obsolete prerequisites.
Christopher Browne [Wed, 31 Mar 2010 18:08:29 +0000 (18:08 +0000)]
Add notes about bug#55 to release notes, regression test
Steve Singer [Wed, 31 Mar 2010 14:12:02 +0000 (14:12 +0000)]
Perform a va_copy and use the copy in the loop that uses va_args.
You are not allowed to use va_args multiple times.
Fix for bug # 55
Patch submitted by Paul Cannon
Steve Singer [Tue, 30 Mar 2010 18:05:17 +0000 (18:05 +0000)]
slony1_extract_schema.sh will now compare the major versions of postgres and pg_dump
to make sure they match.
Added slony1_extract_schema_for_upgrade.sh a wrapper script that will handle
the requried steps for getting a schema from an older postgres that can be
used as input to a newer version
Addresses bug # 114, merged from 1.2 branch
Steve Singer [Tue, 30 Mar 2010 17:58:51 +0000 (17:58 +0000)]
file slony1_extract_for_upgrade.sh was added on branch REL_2_0_STABLE on 2010-03-30 18:05:17 +0000
Steve Singer [Tue, 30 Mar 2010 15:55:41 +0000 (15:55 +0000)]
Updating comment to reflect reality.
+ The below log message that should have been applied with the previous checkin
-------
Load the v84 slony1_funcs file when running on an 8.4 system.
This checks the autovacuum status in the proper way for 8.4
Bug 116
Patch submitted by Peter Eisentraut
Steve Singer [Tue, 30 Mar 2010 15:38:41 +0000 (15:38 +0000)]
msg
Christopher Browne [Tue, 30 Mar 2010 15:28:38 +0000 (15:28 +0000)]
Add notes on recommending *not* suppressing WAL via synchronous_commit
GUC per discussion on list with Peter Geoghegan
Christopher Browne [Thu, 11 Mar 2010 21:41:03 +0000 (21:41 +0000)]
Update release notes
Christopher Browne [Thu, 11 Mar 2010 21:40:08 +0000 (21:40 +0000)]
Improve error reporting to indicate DB conn info in case where failure is
due to bad conn info
Christopher Browne [Tue, 16 Feb 2010 16:57:48 +0000 (16:57 +0000)]
SPI_getbinval() was being passed a NULL, which PostgreSQL 8.5 no longer
accepts. Add isnull variable in the relevant code block so there's a place
to stow the bool result.
Reason for this noted by Alvaro Herrera - thanks!
Christopher Browne [Fri, 12 Feb 2010 17:14:52 +0000 (17:14 +0000)]
Found a query that no longer runs in 9.0 because subqueries in updates
evidently can't reference the "parent" table
Christopher Browne [Thu, 11 Feb 2010 23:11:01 +0000 (23:11 +0000)]
More revisions to release notes based on recent fixes
Christopher Browne [Thu, 11 Feb 2010 23:09:18 +0000 (23:09 +0000)]
Bug #106 - change error message for session configuration failure
Christopher Browne [Thu, 11 Feb 2010 20:50:45 +0000 (20:50 +0000)]
Gwyn Connor pointed out a sprintf() abuse...
When log entries are generated, we're passing outbuf both as buffer and as
a source of data. Behaviour is undefined on some systems, notably including
Gentoo Linux.
Change: Make sure there are buffers for the date + process, fill them, and
reference them.
Christopher Browne [Thu, 11 Feb 2010 19:37:48 +0000 (19:37 +0000)]
Add release notes for recent changes
Christopher Browne [Thu, 11 Feb 2010 19:35:10 +0000 (19:35 +0000)]
"if" should be "else if", as noticed by Richard Yen
Christopher Browne [Thu, 11 Feb 2010 19:32:42 +0000 (19:32 +0000)]
Memory leak in remote worker, as found by Ulrich Weber
http://lists.slony.info/pipermail/slony1-hackers/2010-January/000292.html
Note that in 2.0, code has changed so that only some of the changes are
applicable
Christopher Browne [Thu, 11 Feb 2010 17:52:01 +0000 (17:52 +0000)]
Bison/Flex FAQ addition as in HEAD
Christopher Browne [Wed, 10 Feb 2010 22:50:51 +0000 (22:50 +0000)]
Bug #110 - some quoting problems
Christopher Browne [Wed, 10 Feb 2010 22:23:00 +0000 (22:23 +0000)]
Remove Emacs fodder from test scripts - bug #108
Christopher Browne [Wed, 9 Dec 2009 20:58:15 +0000 (20:58 +0000)]
Changed dbutils to use INT64_FORMAT and int64 for handling %L.
- Apply to 2.0
Christopher Browne [Wed, 9 Dec 2009 20:55:43 +0000 (20:55 +0000)]
Apply Jan's buffer overflow fix to 2.0 branch
Christopher Browne [Wed, 9 Dec 2009 20:50:07 +0000 (20:50 +0000)]
Use int64 rather than long long; that's what PG uses for xids...
Christopher Browne [Fri, 27 Nov 2009 20:32:19 +0000 (20:32 +0000)]
Capture autoconf change in release notes
Christopher Browne [Fri, 27 Nov 2009 20:19:50 +0000 (20:19 +0000)]
Add an 8.5-ism...
ScanKeywordLookup now expects 3 arguments.
Added an autoconf test to check to see if there's 1 or 3 arguments
Changed src/backend/slony1_funcs.c to use 1/3 arguments, as appropriate
Christopher Browne [Thu, 26 Nov 2009 18:10:58 +0000 (18:10 +0000)]
Add bug #103 to release notes
Christopher Browne [Thu, 26 Nov 2009 17:36:21 +0000 (17:36 +0000)]
Bug #103: bugs.slony.info/bugzilla/show_bug.cgi?id=103
As observed by Cyril Scetbon, we need to initialize snapshot values to
"1:1:", not "0:0:", as the latter is refused by the snapshot parser.
Christopher Browne [Fri, 20 Nov 2009 20:01:30 +0000 (20:01 +0000)]
Release note updates (for 2.0.3 rc3)
Christopher Browne [Fri, 20 Nov 2009 19:36:43 +0000 (19:36 +0000)]
Bug #95 - slony.info/bugzilla/show_bug.cgi?id=95
There are two calls to the postgres function subscribeSet_int(integer, integer,
integer, boolean, boolean) in slony1-engine/src/slonik/slonik.c
Both calls do not pass in the last boolean input (the new OMIT COPY parameter)
and hence you get errors. We have only seen it when using slonik_store_node
but looking at the code it could also happen in slonik_failed_node.
Christopher Browne [Wed, 18 Nov 2009 16:57:23 +0000 (16:57 +0000)]
Bug #102
http://www.slony.info/bugzilla/show_bug.cgi?id=102
If you have a configuration with 1 master and 2 or more slaves, and you have
all paths defined, slonik can hang during a failover.
In src/slonik/slonik.c, the slonik_failed_node function queries the sl_nodelock
table on each node to find the listener process responsible for that node and
stores it in nodeinfo.
Later in the function it loops through all the nodes, checking to see if the
listener responsible for that node has exited so it knows that slon has
restarted on that node.
Unfortunately, the query it uses just counts the number of processes that are
not that original pid. It obviously is expecting only one entry in the result
set (i.e., the replacement listener). If there are other listeners for other
nodes running on that node (as is the case when a second slave has a path
defined, for example), then that query may never return exactly 1.
The fix is to add the node number to the query, since then it finds the number
of processes that aren't the old listener that are assigned to that node. When
there is exactly 1 of those then the slon has restarted.
Per Michael Lee Squires @ whitepages.com
Christopher Browne [Wed, 18 Nov 2009 16:48:06 +0000 (16:48 +0000)]
Bug #100 - slony.info/bugzilla/show_bug.cgi?id=100
Typo: column referred to tab_reloid when it should refer to seq_reloid
As reported by Shaun Jackson
Christopher Browne [Fri, 23 Oct 2009 21:18:52 +0000 (21:18 +0000)]
Fix 8.4-ism as found by Jeff Trout...
In a nutshell in the event loop we start a transaction, then if we are not an accept set event we lock the config lock table. We then zero out query1. (this is in remote_worker.c).
The ENABLE_SUBSCRIPTION event runs in a while(true) loop.
First it executes query1 (which thanks to the above, is empty), then tries to copy_set. If copy_set fails for whatever reason we ROLLBACK our local conn (query2) and then loop.
The problem with this is when we come back around in the next look we're outside of a transaction and one won't be started because query1 is reset. This causes LOCK TABLE to barf on PG8.4. You are forever stuck until you restart slon. This also explains another problem I've seen a couple times.
We subscribe to a set with say 3 tables.
The initial subscription fails due to an earlier txn wait.
We copy the first table of hte set successfully.
Then the second table fails to copy due to some DDL issue (perhaps for some reason a PK or column is missing). We issue a rollback but since we are not in a txn, nothing happens. The event does not suceed so we try again
What happens next is since our previous work wasn't rolled back slony sees we've already got teh deny trigger & friends on the first table and barfs. Cue infinite loop fixed only by shutting down slon and playing with the sl_ tables.
This patch keeps a count of how many retries we've had on this copy_set. If we are on retry > 0 then we re-issue a start transaction, set islolation, and lock the config table. My testing has showed that this works.
Christopher Browne [Fri, 23 Oct 2009 15:32:55 +0000 (15:32 +0000)]
Missed a fix to insert into sl_setsync; per Cyril Scetbon
Christopher Browne [Wed, 21 Oct 2009 13:32:59 +0000 (13:32 +0000)]
Bug #98 - need WAIT ON parameter in slonik code generated by slonik_move_set
altperl script.
http://www.slony.info/bugzilla/show_bug.cgi?id=98
Christopher Browne [Wed, 21 Oct 2009 13:06:33 +0000 (13:06 +0000)]
insert into sl_setsync upon FAILOVER had values() clause based on the
pre-2.0 schema; fix to use 2.0.
As reported by Cyril Scetbon, bug #97
Christopher Browne [Wed, 21 Oct 2009 12:53:15 +0000 (12:53 +0000)]
UPGRADE FUNCTIONS failing because functions had their return types changed.
Added in "DROP FUNCTION IF EXISTS" (fine in 8.3+) in
src/backend/slony1_funcs.sql to rectify this.
Problem reported by Glyn Astill
Christopher Browne [Wed, 23 Sep 2009 16:22:30 +0000 (16:22 +0000)]
Add missing arg to subscribeset_int() call - per bug report on list
Christopher Browne [Wed, 23 Sep 2009 16:14:32 +0000 (16:14 +0000)]
As observed by Bernd Helmle, cloneNodePrepare returns an event ID, and
hence should return BIGINT
Christopher Browne [Mon, 31 Aug 2009 15:15:17 +0000 (15:15 +0000)]
Add in 8.3 function to check what tables should be left unvacuumed
(because autovac covers this)
Christopher Browne [Tue, 25 Aug 2009 17:17:57 +0000 (17:17 +0000)]
Clarify that the EVENT NODE for STORE NODE must be an existing node, not
the newly-added node.
Devrim GUNDUZ [Mon, 17 Aug 2009 22:21:38 +0000 (22:21 +0000)]
Change default $LOGDIR, so that distros won't need to patch it.
Devrim GUNDUZ [Mon, 17 Aug 2009 21:20:00 +0000 (21:20 +0000)]
Fix init script, so that log directory path will match upstream.
Devrim GUNDUZ [Mon, 17 Aug 2009 17:09:59 +0000 (17:09 +0000)]
Update copyrights
Devrim GUNDUZ [Mon, 17 Aug 2009 16:56:09 +0000 (16:56 +0000)]
Update copyrights
Devrim GUNDUZ [Wed, 12 Aug 2009 20:52:20 +0000 (20:52 +0000)]
Fix LOG_NAME_SUFFIX feature. Thanks to David Fetter and Andrew Dunstan.
Christopher Browne [Mon, 10 Aug 2009 22:25:40 +0000 (22:25 +0000)]
Functions that return event IDs need to be returning "bigint", not "int4"
or "integer"
Christopher Browne [Mon, 10 Aug 2009 15:34:19 +0000 (15:34 +0000)]
Change numerous cases where integer values are appended onto strings to
specifically cast to text. This addresses the issue where, in 8.3+,
casts aren't done as much implicitly
Devrim GUNDUZ [Sun, 9 Aug 2009 20:28:29 +0000 (20:28 +0000)]
Update "date"
Devrim GUNDUZ [Sun, 9 Aug 2009 20:27:12 +0000 (20:27 +0000)]
Update supported platforms list. I believe more can be added by Chris (AIX).
Christopher Browne [Fri, 31 Jul 2009 19:20:26 +0000 (19:20 +0000)]
On 8.4, pg_class.reltriggers no longer exists, so query that updates this
should check for existence first
Christopher Browne [Tue, 28 Jul 2009 22:42:02 +0000 (22:42 +0000)]
Diminish some logging from INFO to DEBUG1
Per suggestion from Jeff Frost
Christopher Browne [Tue, 28 Jul 2009 16:10:14 +0000 (16:10 +0000)]
Update release notes for recent changes
Christopher Browne [Tue, 28 Jul 2009 16:03:49 +0000 (16:03 +0000)]
Aleksander Kmetec submitted this patch which addresses a race condition
potentially effecting long time locking or data loss on TRUNCATE.
Dataloss bug, described here:
http://lists.slony.info/pipermail/slony1-general/2009-July/009663.html
Statement blocking bug, described here:
http://lists.slony.info/pipermail/slony1-general/2009-July/009664.html
Patch is to preface TRUNCATE logic with an attempt (in an exception
block) to acquire an exclusive lock on the apropos sl_log_* table.
The NOWAIT option raises a (caught!) exception if there are any other
processes holding onto the table.
Christopher Browne [Tue, 28 Jul 2009 15:23:33 +0000 (15:23 +0000)]
Per Devrim Gunduz...
Add a "LOG_NAME_SUFFIX" variable to slon-tools to allow centrally
configurating the filename for log files
Christopher Browne [Tue, 21 Jul 2009 21:27:55 +0000 (21:27 +0000)]
Revise release notes for autovac changes
Christopher Browne [Tue, 21 Jul 2009 21:17:44 +0000 (21:17 +0000)]
Oops, a widespread typo in the testbed which was hidden because the
defaults "happened to work" (until I started 8.4-based testing!)
Christopher Browne [Tue, 21 Jul 2009 21:15:51 +0000 (21:15 +0000)]
Addressing autovacuum change in PostgreSQL 8.4
1. Need to have v84.sql files
2. Need for slonik to install v84.sql files, when apropos
3. v84.sql functions file implements alternative implementation
which pulls the attribute from pg_class rather than the former
pg_autovacuum table
Christopher Browne [Mon, 20 Jul 2009 22:30:10 +0000 (22:30 +0000)]
Introduce "%L" which is interpreted as "%lld" - bug #92
Christopher Browne [Mon, 20 Jul 2009 16:47:53 +0000 (16:47 +0000)]
Add release notes for recent changes
Christopher Browne [Mon, 20 Jul 2009 16:42:38 +0000 (16:42 +0000)]
Change actionseq values from "int" to "long long" to accomodate large
sequence values - per bug #92
Christopher Browne [Mon, 20 Jul 2009 16:40:35 +0000 (16:40 +0000)]
Change minimum logging level to -1, as requested
Christopher Browne [Tue, 14 Jul 2009 19:13:33 +0000 (19:13 +0000)]
Per Mark Stosberg, need to have some docs for altperl script "slonik_drop_sequence"
Christopher Browne [Tue, 14 Jul 2009 19:09:00 +0000 (19:09 +0000)]
1. Mark 2.0.3 version, preparatory to release
2. Update release notes to include changes (to date) to 2.0.3
3. slonik.c now recognizes PostgreSQL 8.4 properly
Christopher Browne [Tue, 7 Jul 2009 15:00:02 +0000 (15:00 +0000)]
Need extra "*cp++ = c;" in 4 places in logshipping scanner.
Per Richard Yen, on mailing list
Christopher Browne [Thu, 18 Jun 2009 16:52:22 +0000 (16:52 +0000)]
Cleanup of slonikconfdump.sh
- There were a couple bugs
- Variables were quite badly named making it rather opaque
Christopher Browne [Wed, 17 Jun 2009 21:37:38 +0000 (21:37 +0000)]
Add in OMIT COPY option to SUBSCRIBE SET in support of upgrading from
elder Slony-I versions.
Christopher Browne [Fri, 12 Jun 2009 22:42:13 +0000 (22:42 +0000)]
Revised slonik dump script based on input from our DBA group...
It now uses tsort to determine the subscription ordering, so should
work even with fairly sophisticated cascaded subscriptions
Christopher Browne [Fri, 12 Jun 2009 20:33:59 +0000 (20:33 +0000)]
Add OMIT COPY test to 2.0
Christopher Browne [Wed, 10 Jun 2009 21:13:41 +0000 (21:13 +0000)]
Per Jan's comments, this is a valid change; it also needs to be applied
to the 2.0 branch
Christopher Browne [Wed, 10 Jun 2009 21:11:56 +0000 (21:11 +0000)]
Change ordering of subscription extraction, and document the restrictions
a bit more carefully for the configuration dumper
Christopher Browne [Tue, 9 Jun 2009 21:38:27 +0000 (21:38 +0000)]
Add in a slonik configuration dump tool, that will be helpful when doing
upgrades from 1.2 to 2.0, along with documentation.
Christopher Browne [Fri, 5 Jun 2009 19:10:24 +0000 (19:10 +0000)]
Update sequence test to validate that big ID #'s do not cause
grief
Devrim GUNDUZ [Sat, 9 May 2009 08:57:20 +0000 (08:57 +0000)]
Fix sgml error
Christopher Browne [Fri, 1 May 2009 15:29:25 +0000 (15:29 +0000)]
Fix problem reported by Melvin Davidson relating to cleanup thread.
VACUUM/ANALYZE request return codes were being misinterpreted as errors.
Fixed this, so that:
- Errors are reported as such
- Warnings are reported as such
Also modified partitioning test to suppress autovac on at least one table
so that regression tests may be expected to exercise this code.
Christopher Browne [Fri, 1 May 2009 15:18:22 +0000 (15:18 +0000)]
Fix problem with interpretation of return code for VACUUM/ANALYZE
Per Melvin Davidson
Christopher Browne [Thu, 30 Apr 2009 15:46:15 +0000 (15:46 +0000)]
If PGSHARE is provided as part of the environment, then we should use it
Christopher Browne [Thu, 30 Apr 2009 15:45:19 +0000 (15:45 +0000)]
Add note that if syslog is turned on, then timestamp generation is
suppressed.
Christopher Browne [Thu, 30 Apr 2009 15:24:21 +0000 (15:24 +0000)]
Per bug #91, some config parameters were not documented in the sample
slon.conf file