提交 7d9a4301 编写于 作者: A Alvaro Herrera

perltidy PostgresNode and SimpleTee

Also, mention in README that Perl files should be perltidy'ed.  This
isn't really the best place (since we have Perl files elsewhere in the
tree) and this is already in pgindent's README, but this subdir is
likely to get hacked a whole lot more than the other Perl files, so it
seems okay to spend two lines on this.

Author: Craig Ringer
上级 5bec1ad4
=pod
=head1 NAME
......@@ -106,10 +107,7 @@ of finding port numbers, registering instances for cleanup, etc.
sub new
{
my $class = shift;
my $name = shift;
my $pghost = shift;
my $pgport = shift;
my ($class, $name, $pghost, $pgport) = @_;
my $testname = basename($0);
$testname =~ s/\.[^.]+$//;
my $self = {
......@@ -607,8 +605,7 @@ sub promote
my $logfile = $self->logfile;
my $name = $self->name;
print "### Promoting node \"$name\"\n";
TestLib::system_log('pg_ctl', '-D', $pgdata, '-l', $logfile,
'promote');
TestLib::system_log('pg_ctl', '-D', $pgdata, '-l', $logfile, 'promote');
}
# Internal routine to enable streaming replication on a standby node.
......@@ -619,7 +616,8 @@ sub enable_streaming
my $name = $self->name;
print "### Enabling streaming replication for node \"$name\"\n";
$self->append_conf('recovery.conf', qq(
$self->append_conf(
'recovery.conf', qq(
primary_conninfo='$root_connstr application_name=$name'
standby_mode=on
));
......@@ -641,11 +639,13 @@ sub enable_restoring
# first. Paths also need to be double-quoted to prevent failures where
# the path contains spaces.
$path =~ s{\\}{\\\\}g if ($TestLib::windows_os);
my $copy_command = $TestLib::windows_os ?
qq{copy "$path\\\\%f" "%p"} :
qq{cp $path/%f %p};
my $copy_command =
$TestLib::windows_os
? qq{copy "$path\\\\%f" "%p"}
: qq{cp $path/%f %p};
$self->append_conf('recovery.conf', qq(
$self->append_conf(
'recovery.conf', qq(
restore_command = '$copy_command'
standby_mode = on
));
......@@ -667,12 +667,14 @@ sub enable_archiving
# first. Paths also need to be double-quoted to prevent failures where
# the path contains spaces.
$path =~ s{\\}{\\\\}g if ($TestLib::windows_os);
my $copy_command = $TestLib::windows_os ?
qq{copy "%p" "$path\\\\%f"} :
qq{cp %p $path/%f};
my $copy_command =
$TestLib::windows_os
? qq{copy "%p" "$path\\\\%f"}
: qq{cp %p $path/%f};
# Enable archive_mode and archive_command on node
$self->append_conf('postgresql.conf', qq(
$self->append_conf(
'postgresql.conf', qq(
archive_mode = on
archive_command = '$copy_command'
));
......
......@@ -11,6 +11,9 @@ isolation tester specs in src/test/isolation, if possible. If not, check to
see if your new tests make sense under an existing tree in src/test, like
src/test/ssl, or should be added to one of the suites for an existing utility.
Note that all tests and test tools should have perltidy run on them before
patches are submitted, using perltidy --profile=src/tools/pgindent/perltidyrc
Writing tests
-------------
......
......@@ -10,15 +10,18 @@
package SimpleTee;
use strict;
sub TIEHANDLE {
sub TIEHANDLE
{
my $self = shift;
bless \@_, $self;
}
sub PRINT {
sub PRINT
{
my $self = shift;
my $ok = 1;
for my $fh (@$self) {
for my $fh (@$self)
{
print $fh @_ or $ok = 0;
$fh->flush or $ok = 0;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册