On Thu, Jan 5, 2017 at 1:58 AM, Simon Riggs <si...@2ndquadrant.com> wrote: > On 4 January 2017 at 08:16, Craig Ringer <cr...@2ndquadrant.com> wrote: >> When committed I will update the decoding on standby series to omit >> these pre-requisite patches. > > Committed, thanks.
I was planning a round of reviews of those patches, but you were faster than me. So now looking at what has been committed. The perldoc documentation is broken for the new routines. The commits have added patterns like that: =pod $node->routine_name But what needs to be done is to use =pod and =item, like that: =pod =item $node->routine_name +Look up xlog positions on the server: This has better be "*WAL* positions". There is another reference with xlog (see recent threads about renaming those functions for example). +* insert position (master only, error on replica) +* write position (master only, error on replica) +* flush position +* receive position (always undef on master) +* replay position Replay position is always undefined on primary, let's document it in the description of the routine. And flush position generates an error for a standby. The documentation of $node->lsn is generated like that, with a very unfriendly list of modes: $node->lsn(mode) Look up xlog positions on the server: * insert position (master only, error on replica) * write position (master only, error on replica) * flush position * receive position (always undef on master) * replay position A trick that I have found here is to add a space before the '*'. It may be a good idea to run perltidy on top of that to be honest... Attached is a patch to fix all those small issues. -- Michael
diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index 2a4ceb3d42..053c5ea787 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -1324,15 +1324,17 @@ sub run_log TestLib::run_log(@_); } -=pod $node->lsn(mode) +=pod + +=item $node->lsn(mode) -Look up xlog positions on the server: +Look up WAL positions on the server: -* insert position (master only, error on replica) -* write position (master only, error on replica) -* flush position -* receive position (always undef on master) -* replay position + * insert position (master only, error on replica) + * write position (master only, error on replica) + * flush position (master only, error on replica) + * receive position (always undef on master) + * replay position (always undef on master) mode must be specified. @@ -1363,11 +1365,13 @@ sub lsn } } -=pod $node->wait_for_catchup(standby_name, mode, target_lsn) +=pod + +=item $node->wait_for_catchup(standby_name, mode, target_lsn) Wait for the node with application_name standby_name (usually from node->name) until its replication position in pg_stat_replication equals or passes the -upstream's xlog insert point at the time this function is called. By default +upstream's WAL insert point at the time this function is called. By default the replay_location is waited for, but 'mode' may be specified to wait for any of sent|write|flush|replay. @@ -1401,7 +1405,9 @@ sub wait_for_catchup print "done\n"; } -=pod $node->wait_for_slot_catchup(slot_name, mode, target_lsn) +=pod + +=item $node->wait_for_slot_catchup(slot_name, mode, target_lsn) Wait for the named replication slot to equal or pass the supplied target_lsn. The position used is the restart_lsn unless mode is given, in which case it may @@ -1435,7 +1441,9 @@ sub wait_for_slot_catchup print "done\n"; } -=pod $node->query_hash($dbname, $query, @columns) +=pod + +=item $node->query_hash($dbname, $query, @columns) Execute $query on $dbname, replacing any appearance of the string __COLUMNS__ within the query with a comma-separated list of @columns. @@ -1473,7 +1481,9 @@ sub query_hash return \%val; } -=pod $node->slot(slot_name) +=pod + +=item $node->slot(slot_name) Return hash-ref of replication slot data for the named slot, or a hash-ref with all values '' if not found. Does not differentiate between null and empty string
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers