public inbox for [email protected]help / color / mirror / Atom feed
[PATCH 02/12] Run 011_crash_recovery.pl with wal_level=minimal 143+ messages / 5 participants [nested] [flat]
* [PATCH 02/12] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --45Z9DzgjV8m4Oswq Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/12] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --45Z9DzgjV8m4Oswq Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 5/6] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 14154d1ce0..4b11e40544 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -12,7 +12,7 @@ use Test::More; use Config; my $node = PostgreSQL::Test::Cluster->new('primary'); -$node->init(allows_streaming => 1); +$node->init(allows_streaming => 0); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.1 --pAwQNkOnpTn9IO2O Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0006-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v9 2/9] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index a26e99500b..2e7e3db639 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -14,7 +14,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --neYutvxvOLaeuPCA Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="v9-0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v7 2/9] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index a26e99500b..2e7e3db639 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -14,7 +14,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --JYK4vJDZwFMowpUq Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="v7-0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v8 2/9] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index a26e99500b..2e7e3db639 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -14,7 +14,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --P+33d92oIH25kiaB Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="v8-0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --jozmn01XJZjDjM3N Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.27.0 ----Next_Part(Mon_Mar__8_17_32_42_2021_572)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v1-0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --f0KYrhQ4vYSV2aJu Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0002-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --0qVF/w3MHQqLSynd Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal @ 2021-03-08 06:32 Kyotaro Horiguchi <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Kyotaro Horiguchi @ 2021-03-08 06:32 UTC (permalink / raw) The test doesn't need that feature and pg_current_xact_id() is better exercised by turning off the feature. Copied from: https://www.postgresql.org/message-id/20210308.173242.463790587797836129.horikyota.ntt%40gmail.com --- src/test/recovery/t/011_crash_recovery.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/recovery/t/011_crash_recovery.pl b/src/test/recovery/t/011_crash_recovery.pl index 10cd98f70a..690655dda2 100644 --- a/src/test/recovery/t/011_crash_recovery.pl +++ b/src/test/recovery/t/011_crash_recovery.pl @@ -11,7 +11,7 @@ use Config; plan tests => 3; my $node = get_new_node('primary'); -$node->init(allows_streaming => 1); +$node->init(); $node->start; my ($stdin, $stdout, $stderr) = ('', '', ''); -- 2.17.0 --XsQoSWH+UP9D9v3l Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0003-Make-sure-published-XIDs-are-persistent.patch" ^ permalink raw reply [nested|flat] 143+ messages in thread
* make add_paths_to_append_rel aware of startup cost @ 2023-09-06 12:39 Andy Fan <[email protected]> 0 siblings, 2 replies; 143+ messages in thread From: Andy Fan @ 2023-09-06 12:39 UTC (permalink / raw) To: pgsql-hackers; Zhang Mingli <[email protected]> Hi: This thread is a refactor of thread [1] for easier communication. Currently add_paths_to_append_rel overlooked the startup cost for creating append path, so it may have lost some optimization chances. After a glance, the following 4 identifiers can be impacted. Identifier 1: SELECT .. FROM v1 UNION ALL SELECT .. FROM v2 LIMIT 3; Identifier 2: SELECT * FROM p .. LIMIT 3; p is a partitioned table. Identifier 3: SELECT * FROM p JOIN q using (partkey) LIMIT 3; If we did the partition-wise-join, then we lost the chances for a better plan. Identifier 4: -- EXISTS implies LIMIT 1; SELECT * FROM foo WHERE EXISTS (SELECT 1 FROM append_rel_v_not_pullup_able WHERE xxx); However, after I completed my patch and wanted to build some real queries to prove my idea, I just find it is hard to build the case for Identifier 2/3/4. But the Improvement for Identifier 1 is easy and my real user case in work is Identifier 1 as well. So a patch is attached for this case, it will use fractional costs rather than total costs if needed. The following items needs more attention during development. - We shouldn't do the optimization if there are still more tables to join, the reason is similar to has_multiple_baserels(root) in set_subquery_pathlist. But the trouble here is we may inherit multiple levels to build an appendrel, so I have to keep the 'top_relids' all the time and compare it with PlannerInfo.all_baserels. If they are the same, then it is the case we want to optimize. - add_partial_path doesn't consider the startup costs by design, I didn't rethink too much about this, but the idea of "choose a path which let each worker produces the top-N tuples as fast as possible" looks reasonable, and even though add_partial_path doesn't consider startup cost, it is still possible that childrel keeps more than 1 partial paths due to any reasons except startup_cost, for example PathKey. then we still have chances to choose the cheapest fractional path among them. The same strategy also applies to mixed partial and non-partial append paths. - Due to the complexity of add_paths_to_append_rel, 3 arguments have to be added to get_cheapest_fractional_path... Path * get_cheapest_fractional_path(RelOptInfo *rel, double tuple_fraction, bool allow_parameterized, bool look_partial, bool must_parallel_safe) Cases can be improved. Here is the simplest test case, but it will not be hard to provide more cases for Identifier 1. (select * from tenk1 order by hundred) UNION ALL (select * from tenk1 order by hundred) limit 3; master: 8.096ms. patched: 0.204ms. The below user case should be more reasonable for real business. with a as (select * from t1 join t2..), b as (select * from t1 join t3 ..) select * from a union all select * from b limit 3; The patch would also have impacts on identifier 2/3/4, even though I can't make a demo sql which can get benefits from this patch, I also added some test cases for code coverage purposes. Any feedback is welcome! [1] https://www.postgresql.org/message-id/flat/CAKU4AWqEnzhUTxopVhENC3vs6NnYV32+e6GSBtp1rAv0ZNX=mQ@mail.... -- Best Regards Andy Fan Attachments: [application/octet-stream] v1-0001-make-add_paths_to_append_rel-aware-of-startup-cos.patch (28.6K, ../../CAKU4AWrXSkUV=Pt-gRxQT7EbfUeNssprGyNsB=5mJibFZ6S3ww@mail.gmail.com/3-v1-0001-make-add_paths_to_append_rel-aware-of-startup-cos.patch) download | inline diff: From e43e97f354e5749bfe61b3425d410f3b834ee00d Mon Sep 17 00:00:00 2001 From: Andy Fan <[email protected]> Date: Wed, 6 Sep 2023 19:48:34 +0800 Subject: [PATCH v1] make add_paths_to_append_rel aware of startup cost. --- src/backend/optimizer/geqo/geqo_eval.c | 2 +- src/backend/optimizer/path/allpaths.c | 82 +++++++++++++++---- src/backend/optimizer/plan/planner.c | 50 +++++++---- src/backend/optimizer/plan/subselect.c | 2 +- src/backend/optimizer/prep/prepunion.c | 3 +- src/backend/optimizer/util/pathnode.c | 18 ++++ src/include/optimizer/pathnode.h | 1 + src/include/optimizer/paths.h | 6 +- src/include/optimizer/planner.h | 6 +- .../regress/expected/partition_aggregate.out | 22 +++++ src/test/regress/expected/partition_join.out | 27 ++++++ src/test/regress/expected/partition_prune.out | 52 ++++++++++++ src/test/regress/expected/union.out | 13 +++ src/test/regress/sql/partition_aggregate.sql | 3 + src/test/regress/sql/partition_join.sql | 3 + src/test/regress/sql/partition_prune.sql | 2 + src/test/regress/sql/union.sql | 6 ++ 17 files changed, 256 insertions(+), 42 deletions(-) diff --git a/src/backend/optimizer/geqo/geqo_eval.c b/src/backend/optimizer/geqo/geqo_eval.c index a694ac4a130..bd6449af69d 100644 --- a/src/backend/optimizer/geqo/geqo_eval.c +++ b/src/backend/optimizer/geqo/geqo_eval.c @@ -265,7 +265,7 @@ merge_clump(PlannerInfo *root, List *clumps, Clump *new_clump, int num_gene, if (joinrel) { /* Create paths for partitionwise joins. */ - generate_partitionwise_join_paths(root, joinrel); + generate_partitionwise_join_paths(root, joinrel, joinrel->relids); /* * Except for the topmost scan/join rel, consider gathering diff --git a/src/backend/optimizer/path/allpaths.c b/src/backend/optimizer/path/allpaths.c index 9bdc70c702e..4037f02c6f2 100644 --- a/src/backend/optimizer/path/allpaths.c +++ b/src/backend/optimizer/path/allpaths.c @@ -97,7 +97,7 @@ static void set_base_rel_pathlists(PlannerInfo *root); static void set_rel_size(PlannerInfo *root, RelOptInfo *rel, Index rti, RangeTblEntry *rte); static void set_rel_pathlist(PlannerInfo *root, RelOptInfo *rel, - Index rti, RangeTblEntry *rte); + Index rti, RangeTblEntry *rte, Relids top_relids); static void set_plain_rel_size(PlannerInfo *root, RelOptInfo *rel, RangeTblEntry *rte); static void create_plain_partial_paths(PlannerInfo *root, RelOptInfo *rel); @@ -116,7 +116,7 @@ static void set_foreign_pathlist(PlannerInfo *root, RelOptInfo *rel, static void set_append_rel_size(PlannerInfo *root, RelOptInfo *rel, Index rti, RangeTblEntry *rte); static void set_append_rel_pathlist(PlannerInfo *root, RelOptInfo *rel, - Index rti, RangeTblEntry *rte); + Index rti, RangeTblEntry *rte, Relids top_relids); static void generate_orderedappend_paths(PlannerInfo *root, RelOptInfo *rel, List *live_childrels, List *all_child_pathkeys); @@ -351,7 +351,7 @@ set_base_rel_pathlists(PlannerInfo *root) if (rel->reloptkind != RELOPT_BASEREL) continue; - set_rel_pathlist(root, rel, rti, root->simple_rte_array[rti]); + set_rel_pathlist(root, rel, rti, root->simple_rte_array[rti], rel->relids); } } @@ -470,7 +470,7 @@ set_rel_size(PlannerInfo *root, RelOptInfo *rel, */ static void set_rel_pathlist(PlannerInfo *root, RelOptInfo *rel, - Index rti, RangeTblEntry *rte) + Index rti, RangeTblEntry *rte, Relids top_relids) { if (IS_DUMMY_REL(rel)) { @@ -479,7 +479,7 @@ set_rel_pathlist(PlannerInfo *root, RelOptInfo *rel, else if (rte->inh) { /* It's an "append relation", process accordingly */ - set_append_rel_pathlist(root, rel, rti, rte); + set_append_rel_pathlist(root, rel, rti, rte, top_relids); } else { @@ -1233,7 +1233,7 @@ set_append_rel_size(PlannerInfo *root, RelOptInfo *rel, */ static void set_append_rel_pathlist(PlannerInfo *root, RelOptInfo *rel, - Index rti, RangeTblEntry *rte) + Index rti, RangeTblEntry *rte, Relids top_relids) { int parentRTindex = rti; List *live_childrels = NIL; @@ -1271,7 +1271,7 @@ set_append_rel_pathlist(PlannerInfo *root, RelOptInfo *rel, /* * Compute the child's access paths. */ - set_rel_pathlist(root, childrel, childRTindex, childRTE); + set_rel_pathlist(root, childrel, childRTindex, childRTE, top_relids); /* * If child is dummy, ignore it. @@ -1286,7 +1286,7 @@ set_append_rel_pathlist(PlannerInfo *root, RelOptInfo *rel, } /* Add paths to the append relation. */ - add_paths_to_append_rel(root, rel, live_childrels); + add_paths_to_append_rel(root, rel, live_childrels, top_relids); } @@ -1303,7 +1303,7 @@ set_append_rel_pathlist(PlannerInfo *root, RelOptInfo *rel, */ void add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, - List *live_childrels) + List *live_childrels, Relids top_relids) { List *subpaths = NIL; bool subpaths_valid = true; @@ -1316,6 +1316,9 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, List *all_child_outers = NIL; ListCell *l; double partial_rows = -1; + bool consider_startup = rel->consider_startup && bms_equal(top_relids, root->all_baserels) && root->tuple_fraction > 0; + + consider_startup = consider_startup && enable_geqo; /* just for debug. */ /* If appropriate, consider parallel append */ pa_subpaths_valid = enable_parallel_append && rel->consider_parallel; @@ -1329,7 +1332,9 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, { RelOptInfo *childrel = lfirst(l); ListCell *lcp; + Path *cheapest_startup_path = NULL; Path *cheapest_partial_path = NULL; + Cost cheapest_partial_cost = 0; /* * If child has an unparameterized cheapest-total path, add that to @@ -1339,19 +1344,36 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, * With partitionwise aggregates, the child rel's pathlist may be * empty, so don't assume that a path exists here. */ - if (childrel->pathlist != NIL && + if (consider_startup && + (cheapest_startup_path = get_cheapest_fractional_path(childrel, + root->tuple_fraction, + false, false, false)) != NULL) + accumulate_append_subpath(cheapest_startup_path, + &subpaths, NULL); + else if (childrel->pathlist != NIL && childrel->cheapest_total_path->param_info == NULL) accumulate_append_subpath(childrel->cheapest_total_path, &subpaths, NULL); else subpaths_valid = false; + if (consider_startup && + (cheapest_partial_path = get_cheapest_fractional_path(childrel, + root->tuple_fraction, + false, true, false)) !=NULL) + { + accumulate_append_subpath(cheapest_partial_path, + &partial_subpaths, NULL); + cheapest_partial_cost = get_fractional_path_cost(cheapest_partial_path, root->tuple_fraction); + } + /* Same idea, but for a partial plan. */ - if (childrel->partial_pathlist != NIL) + else if (childrel->partial_pathlist != NIL) { cheapest_partial_path = linitial(childrel->partial_pathlist); accumulate_append_subpath(cheapest_partial_path, &partial_subpaths, NULL); + cheapest_partial_cost = cheapest_partial_path->total_cost; } else partial_subpaths_valid = false; @@ -1363,9 +1385,33 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, if (pa_subpaths_valid) { Path *nppath = NULL; + Cost nppath_cost = 0; + + /* + * Check if the cheapest non-partial and parallel safe path (nppath) + * is cheaper than cheapest_partial_path, if so use the nppath instead of + * cheapest_partial_path. Note the cheapest_partial_path has been startup + * aware already. + */ + if (consider_startup && cheapest_startup_path) + { + if (cheapest_startup_path->parallel_safe) + nppath = cheapest_startup_path; + else + nppath = get_cheapest_fractional_path(childrel, root->tuple_fraction, + false, false, true); - nppath = - get_cheapest_parallel_safe_total_inner(childrel->pathlist); + if (nppath) + nppath_cost = get_fractional_path_cost(nppath, + root->tuple_fraction); + } + else + { + nppath = + get_cheapest_parallel_safe_total_inner(childrel->pathlist); + if (nppath) + nppath_cost = nppath->total_cost; + } if (cheapest_partial_path == NULL && nppath == NULL) { @@ -1374,7 +1420,7 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, } else if (nppath == NULL || (cheapest_partial_path != NULL && - cheapest_partial_path->total_cost < nppath->total_cost)) + cheapest_partial_cost < nppath_cost)) { /* Partial path is cheaper or the only option. */ Assert(cheapest_partial_path != NULL); @@ -3468,7 +3514,7 @@ standard_join_search(PlannerInfo *root, int levels_needed, List *initial_rels) rel = (RelOptInfo *) lfirst(lc); /* Create paths for partitionwise joins. */ - generate_partitionwise_join_paths(root, rel); + generate_partitionwise_join_paths(root, rel, rel->relids); /* * Except for the topmost scan/join rel, consider gathering @@ -4295,7 +4341,7 @@ compute_parallel_worker(RelOptInfo *rel, double heap_pages, double index_pages, * generated here has a reference. */ void -generate_partitionwise_join_paths(PlannerInfo *root, RelOptInfo *rel) +generate_partitionwise_join_paths(PlannerInfo *root, RelOptInfo *rel, Relids top_relids) { List *live_children = NIL; int cnt_parts; @@ -4329,7 +4375,7 @@ generate_partitionwise_join_paths(PlannerInfo *root, RelOptInfo *rel) continue; /* Make partitionwise join paths for this partitioned child-join. */ - generate_partitionwise_join_paths(root, child_rel); + generate_partitionwise_join_paths(root, child_rel, top_relids); /* If we failed to make any path for this child, we must give up. */ if (child_rel->pathlist == NIL) @@ -4364,7 +4410,7 @@ generate_partitionwise_join_paths(PlannerInfo *root, RelOptInfo *rel) } /* Build additional paths for this rel from child-join paths. */ - add_paths_to_append_rel(root, rel, live_children); + add_paths_to_append_rel(root, rel, live_children, top_relids); list_free(live_children); } diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c index 44efb1f4ebc..f616b7f2d85 100644 --- a/src/backend/optimizer/plan/planner.c +++ b/src/backend/optimizer/plan/planner.c @@ -241,7 +241,8 @@ static void apply_scanjoin_target_to_paths(PlannerInfo *root, List *scanjoin_targets, List *scanjoin_targets_contain_srfs, bool scanjoin_target_parallel_safe, - bool tlist_same_exprs); + bool tlist_same_exprs, + Relids top_relids); static void create_partitionwise_grouping_paths(PlannerInfo *root, RelOptInfo *input_rel, RelOptInfo *grouped_rel, @@ -415,7 +416,7 @@ standard_planner(Query *parse, const char *query_string, int cursorOptions, /* Select best Path and turn it into a Plan */ final_rel = fetch_upper_rel(root, UPPERREL_FINAL, NULL); - best_path = get_cheapest_fractional_path(final_rel, tuple_fraction); + best_path = get_cheapest_fractional_path(final_rel, tuple_fraction, true, false, false); top_plan = create_plan(root, best_path); @@ -1633,7 +1634,8 @@ grouping_planner(PlannerInfo *root, double tuple_fraction) apply_scanjoin_target_to_paths(root, current_rel, scanjoin_targets, scanjoin_targets_contain_srfs, scanjoin_target_parallel_safe, - scanjoin_target_same_exprs); + scanjoin_target_same_exprs, + current_rel->relids); /* * Save the various upper-rel PathTargets we just computed into @@ -6326,28 +6328,41 @@ make_sort_input_target(PlannerInfo *root, * We assume set_cheapest() has been run on the given rel. */ Path * -get_cheapest_fractional_path(RelOptInfo *rel, double tuple_fraction) +get_cheapest_fractional_path(RelOptInfo *rel, double tuple_fraction, + bool allow_parameterized, bool look_partial, + bool must_parallel_safe) +/* + * NB: (just for review purpose) + * allow_parameterized = true and look_partial = false and must_parallel_safe=ture + * is the same behavior as before. + */ { - Path *best_path = rel->cheapest_total_path; + List *pathlist = look_partial ? rel->partial_pathlist : rel->pathlist; + Path *best_path = allow_parameterized ? linitial(pathlist) : NULL; ListCell *l; + double total_rows = ((Path *)linitial(rel->pathlist))->rows; /* If all tuples will be retrieved, just return the cheapest-total path */ if (tuple_fraction <= 0.0) return best_path; /* Convert absolute # of tuples to a fraction; no need to clamp to 0..1 */ - if (tuple_fraction >= 1.0 && best_path->rows > 0) - tuple_fraction /= best_path->rows; + if (tuple_fraction >= 1.0 && total_rows > 0) + tuple_fraction /= total_rows; - foreach(l, rel->pathlist) + foreach(l, pathlist) { Path *path = (Path *) lfirst(l); - if (path == rel->cheapest_total_path || - compare_fractional_path_costs(best_path, path, tuple_fraction) <= 0) + if (!allow_parameterized && !bms_is_empty(PATH_REQ_OUTER(path))) + continue; + + if (must_parallel_safe && !path->parallel_safe) continue; - best_path = path; + if (best_path == NULL || + compare_fractional_path_costs(best_path, path, tuple_fraction) > 0) + best_path = path; } return best_path; @@ -7540,7 +7555,8 @@ apply_scanjoin_target_to_paths(PlannerInfo *root, List *scanjoin_targets, List *scanjoin_targets_contain_srfs, bool scanjoin_target_parallel_safe, - bool tlist_same_exprs) + bool tlist_same_exprs, + Relids top_relids) { bool rel_is_partitioned = IS_PARTITIONED_REL(rel); PathTarget *scanjoin_target; @@ -7723,7 +7739,7 @@ apply_scanjoin_target_to_paths(PlannerInfo *root, child_scanjoin_targets, scanjoin_targets_contain_srfs, scanjoin_target_parallel_safe, - tlist_same_exprs); + tlist_same_exprs, top_relids); /* Save non-dummy children for Append paths. */ if (!IS_DUMMY_REL(child_rel)) @@ -7731,7 +7747,7 @@ apply_scanjoin_target_to_paths(PlannerInfo *root, } /* Build new paths for this relation by appending child paths. */ - add_paths_to_append_rel(root, rel, live_children); + add_paths_to_append_rel(root, rel, live_children, top_relids); } /* @@ -7888,7 +7904,8 @@ create_partitionwise_grouping_paths(PlannerInfo *root, Assert(partially_grouped_live_children != NIL); add_paths_to_append_rel(root, partially_grouped_rel, - partially_grouped_live_children); + partially_grouped_live_children, + input_rel->relids); /* * We need call set_cheapest, since the finalization step will use the @@ -7903,7 +7920,8 @@ create_partitionwise_grouping_paths(PlannerInfo *root, { Assert(grouped_live_children != NIL); - add_paths_to_append_rel(root, grouped_rel, grouped_live_children); + /* group_rel->relids is not set. */ + add_paths_to_append_rel(root, grouped_rel, grouped_live_children, input_rel->relids); } } diff --git a/src/backend/optimizer/plan/subselect.c b/src/backend/optimizer/plan/subselect.c index 7a9fe88fec3..c704719a07d 100644 --- a/src/backend/optimizer/plan/subselect.c +++ b/src/backend/optimizer/plan/subselect.c @@ -231,7 +231,7 @@ make_subplan(PlannerInfo *root, Query *orig_subquery, * seems no reason to postpone doing that. */ final_rel = fetch_upper_rel(subroot, UPPERREL_FINAL, NULL); - best_path = get_cheapest_fractional_path(final_rel, tuple_fraction); + best_path = get_cheapest_fractional_path(final_rel, tuple_fraction, true, false, false); plan = create_plan(subroot, best_path); diff --git a/src/backend/optimizer/prep/prepunion.c b/src/backend/optimizer/prep/prepunion.c index 0c68ec011be..f435d4b4181 100644 --- a/src/backend/optimizer/prep/prepunion.c +++ b/src/backend/optimizer/prep/prepunion.c @@ -283,7 +283,8 @@ recurse_set_operations(Node *setOp, PlannerInfo *root, * set_subquery_pathlist). */ subpath = get_cheapest_fractional_path(final_rel, - root->tuple_fraction); + root->tuple_fraction, + true, false, false); /* * Stick a SubqueryScanPath atop that. diff --git a/src/backend/optimizer/util/pathnode.c b/src/backend/optimizer/util/pathnode.c index 211ba65389d..506c0c98583 100644 --- a/src/backend/optimizer/util/pathnode.c +++ b/src/backend/optimizer/util/pathnode.c @@ -120,6 +120,9 @@ compare_fractional_path_costs(Path *path1, Path *path2, Cost cost1, cost2; + if (path1 == path2) + return 0; + if (fraction <= 0.0 || fraction >= 1.0) return compare_path_costs(path1, path2, TOTAL_COST); cost1 = path1->startup_cost + @@ -133,6 +136,21 @@ compare_fractional_path_costs(Path *path1, Path *path2, return 0; } +Cost +get_fractional_path_cost(Path *path1, double fraction) +{ + double total_rows = path1->rows; + + if (total_rows <= 0) + return path1->total_cost; + + if (fraction >= 1.0) + fraction = fraction / path1->rows; + + return path1->startup_cost + fraction * (path1->total_cost - path1->startup_cost); +} + + /* * compare_path_costs_fuzzily * Compare the costs of two paths to see if either can be said to diff --git a/src/include/optimizer/pathnode.h b/src/include/optimizer/pathnode.h index 6e557bebc44..b1544a13cff 100644 --- a/src/include/optimizer/pathnode.h +++ b/src/include/optimizer/pathnode.h @@ -25,6 +25,7 @@ extern int compare_path_costs(Path *path1, Path *path2, CostSelector criterion); extern int compare_fractional_path_costs(Path *path1, Path *path2, double fraction); +extern Cost get_fractional_path_cost(Path *path1, double fraction); extern void set_cheapest(RelOptInfo *parent_rel); extern void add_path(RelOptInfo *parent_rel, Path *new_path); extern bool add_path_precheck(RelOptInfo *parent_rel, diff --git a/src/include/optimizer/paths.h b/src/include/optimizer/paths.h index 50bc3b503a6..15416a650c4 100644 --- a/src/include/optimizer/paths.h +++ b/src/include/optimizer/paths.h @@ -61,8 +61,8 @@ extern int compute_parallel_worker(RelOptInfo *rel, double heap_pages, extern void create_partial_bitmap_paths(PlannerInfo *root, RelOptInfo *rel, Path *bitmapqual); extern void generate_partitionwise_join_paths(PlannerInfo *root, - RelOptInfo *rel); - + RelOptInfo *rel, + Relids top_relids); #ifdef OPTIMIZER_DEBUG extern void debug_print_rel(PlannerInfo *root, RelOptInfo *rel); #endif @@ -261,6 +261,6 @@ extern PathKey *make_canonical_pathkey(PlannerInfo *root, EquivalenceClass *eclass, Oid opfamily, int strategy, bool nulls_first); extern void add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, - List *live_childrels); + List *live_childrels, Relids top_relids); #endif /* PATHS_H */ diff --git a/src/include/optimizer/planner.h b/src/include/optimizer/planner.h index fc2e15496dd..b539fa585f4 100644 --- a/src/include/optimizer/planner.h +++ b/src/include/optimizer/planner.h @@ -54,8 +54,10 @@ extern bool limit_needed(Query *parse); extern void mark_partial_aggref(Aggref *agg, AggSplit aggsplit); extern Path *get_cheapest_fractional_path(RelOptInfo *rel, - double tuple_fraction); - + double tuple_fraction, + bool allow_parameterized, + bool look_partial, + bool must_parallel_safe); extern Expr *preprocess_phv_expression(PlannerInfo *root, Expr *expr); #endif /* PLANNER_H */ diff --git a/src/test/regress/expected/partition_aggregate.out b/src/test/regress/expected/partition_aggregate.out index 1b900fddf8e..ccd5108a439 100644 --- a/src/test/regress/expected/partition_aggregate.out +++ b/src/test/regress/expected/partition_aggregate.out @@ -55,6 +55,28 @@ SELECT c, sum(a), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY c HAVI 0008 | 2000 | 14.0000000000000000 | 250 | 0 | 26 (6 rows) +EXPLAIN (COSTS OFF) +SELECT c, sum(a), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY c HAVING avg(d) < 15 ORDER BY 1, 2, 3 LIMIT 1; + QUERY PLAN +-------------------------------------------------------------------- + Limit + -> Sort + Sort Key: pagg_tab.c, (sum(pagg_tab.a)), (avg(pagg_tab.b)) + -> Append + -> HashAggregate + Group Key: pagg_tab.c + Filter: (avg(pagg_tab.d) < '15'::numeric) + -> Seq Scan on pagg_tab_p1 pagg_tab + -> HashAggregate + Group Key: pagg_tab_1.c + Filter: (avg(pagg_tab_1.d) < '15'::numeric) + -> Seq Scan on pagg_tab_p2 pagg_tab_1 + -> HashAggregate + Group Key: pagg_tab_2.c + Filter: (avg(pagg_tab_2.d) < '15'::numeric) + -> Seq Scan on pagg_tab_p3 pagg_tab_2 +(16 rows) + -- When GROUP BY clause does not match; partial aggregation is performed for each partition. EXPLAIN (COSTS OFF) SELECT a, sum(b), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY a HAVING avg(d) < 15 ORDER BY 1, 2, 3; diff --git a/src/test/regress/expected/partition_join.out b/src/test/regress/expected/partition_join.out index 6560fe2416f..c41c26dc482 100644 --- a/src/test/regress/expected/partition_join.out +++ b/src/test/regress/expected/partition_join.out @@ -62,6 +62,33 @@ SELECT t1.a, t1.c, t2.b, t2.c FROM prt1 t1, prt2 t2 WHERE t1.a = t2.b AND t1.b = 450 | 0450 | 450 | 0450 (4 rows) +EXPLAIN (COSTS OFF) +SELECT t1.a, t1.c, t2.b, t2.c FROM prt1 t1, prt2 t2 WHERE t1.a = t2.b AND t1.b = 0 ORDER BY t1.a, t2.b LIMIT 1; + QUERY PLAN +--------------------------------------------------------------- + Limit + -> Merge Append + Sort Key: t1.a + -> Nested Loop + Join Filter: (t1_1.a = t2_1.b) + -> Index Scan using iprt2_p1_b on prt2_p1 t2_1 + -> Materialize + -> Seq Scan on prt1_p1 t1_1 + Filter: (b = 0) + -> Nested Loop + Join Filter: (t1_2.a = t2_2.b) + -> Index Scan using iprt2_p2_b on prt2_p2 t2_2 + -> Materialize + -> Seq Scan on prt1_p2 t1_2 + Filter: (b = 0) + -> Nested Loop + Join Filter: (t1_3.a = t2_3.b) + -> Index Scan using iprt2_p3_b on prt2_p3 t2_3 + -> Materialize + -> Seq Scan on prt1_p3 t1_3 + Filter: (b = 0) +(21 rows) + -- left outer join, 3-way EXPLAIN (COSTS OFF) SELECT COUNT(*) FROM prt1 t1 diff --git a/src/test/regress/expected/partition_prune.out b/src/test/regress/expected/partition_prune.out index 1eb347503aa..231384d6ed1 100644 --- a/src/test/regress/expected/partition_prune.out +++ b/src/test/regress/expected/partition_prune.out @@ -143,6 +143,58 @@ explain (costs off) select * from lp where a not in ('a', 'd'); Filter: (a <> ALL ('{a,d}'::bpchar[])) (9 rows) +explain (costs off) select * from lp limit 3; + QUERY PLAN +----------------------------------------- + Limit + -> Append + -> Seq Scan on lp_ad lp_1 + -> Seq Scan on lp_bc lp_2 + -> Seq Scan on lp_ef lp_3 + -> Seq Scan on lp_g lp_4 + -> Seq Scan on lp_null lp_5 + -> Seq Scan on lp_default lp_6 +(8 rows) + +explain (costs off) select * from lp where exists (select 1 from lp where random() > 0.1) limit 3; + QUERY PLAN +-------------------------------------------------------------- + Limit + InitPlan 1 (returns $0) + -> Append + -> Seq Scan on lp_ad lp_8 + Filter: (random() > '0.1'::double precision) + -> Seq Scan on lp_bc lp_9 + Filter: (random() > '0.1'::double precision) + -> Seq Scan on lp_ef lp_10 + Filter: (random() > '0.1'::double precision) + -> Seq Scan on lp_g lp_11 + Filter: (random() > '0.1'::double precision) + -> Seq Scan on lp_null lp_12 + Filter: (random() > '0.1'::double precision) + -> Seq Scan on lp_default lp_13 + Filter: (random() > '0.1'::double precision) + -> Append + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_ad lp_1 + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_bc lp_2 + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_ef lp_3 + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_g lp_4 + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_null lp_5 + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_default lp_6 +(34 rows) + -- collation matches the partitioning collation, pruning works create table coll_pruning (a text collate "C") partition by list (a); create table coll_pruning_a partition of coll_pruning for values in ('a'); diff --git a/src/test/regress/expected/union.out b/src/test/regress/expected/union.out index e2613d6777e..6c52da4bf35 100644 --- a/src/test/regress/expected/union.out +++ b/src/test/regress/expected/union.out @@ -1432,3 +1432,16 @@ where (x = 0) or (q1 >= q2 and q1 <= q2); 4567890123456789 | 4567890123456789 | 1 (6 rows) +explain (costs off) +(select * from tenk1 order by hundred) +UNION ALL +(select * from tenk1 order by hundred) +limit 3; + QUERY PLAN +------------------------------------------------------------- + Limit + -> Append + -> Index Scan using tenk1_hundred on tenk1 + -> Index Scan using tenk1_hundred on tenk1 tenk1_1 +(4 rows) + diff --git a/src/test/regress/sql/partition_aggregate.sql b/src/test/regress/sql/partition_aggregate.sql index ab070fee244..a2943a62961 100644 --- a/src/test/regress/sql/partition_aggregate.sql +++ b/src/test/regress/sql/partition_aggregate.sql @@ -30,6 +30,9 @@ EXPLAIN (COSTS OFF) SELECT c, sum(a), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY c HAVING avg(d) < 15 ORDER BY 1, 2, 3; SELECT c, sum(a), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY c HAVING avg(d) < 15 ORDER BY 1, 2, 3; +EXPLAIN (COSTS OFF) +SELECT c, sum(a), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY c HAVING avg(d) < 15 ORDER BY 1, 2, 3 LIMIT 1; + -- When GROUP BY clause does not match; partial aggregation is performed for each partition. EXPLAIN (COSTS OFF) SELECT a, sum(b), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY a HAVING avg(d) < 15 ORDER BY 1, 2, 3; diff --git a/src/test/regress/sql/partition_join.sql b/src/test/regress/sql/partition_join.sql index 48daf3aee39..88b6e5168ae 100644 --- a/src/test/regress/sql/partition_join.sql +++ b/src/test/regress/sql/partition_join.sql @@ -34,6 +34,9 @@ EXPLAIN (COSTS OFF) SELECT t1.a, t1.c, t2.b, t2.c FROM prt1 t1, prt2 t2 WHERE t1.a = t2.b AND t1.b = 0 ORDER BY t1.a, t2.b; SELECT t1.a, t1.c, t2.b, t2.c FROM prt1 t1, prt2 t2 WHERE t1.a = t2.b AND t1.b = 0 ORDER BY t1.a, t2.b; +EXPLAIN (COSTS OFF) +SELECT t1.a, t1.c, t2.b, t2.c FROM prt1 t1, prt2 t2 WHERE t1.a = t2.b AND t1.b = 0 ORDER BY t1.a, t2.b LIMIT 1; + -- left outer join, 3-way EXPLAIN (COSTS OFF) SELECT COUNT(*) FROM prt1 t1 diff --git a/src/test/regress/sql/partition_prune.sql b/src/test/regress/sql/partition_prune.sql index d1c60b8fe9d..d68b7c999ba 100644 --- a/src/test/regress/sql/partition_prune.sql +++ b/src/test/regress/sql/partition_prune.sql @@ -24,6 +24,8 @@ explain (costs off) select * from lp where a is not null and (a = 'a' or a = 'c' explain (costs off) select * from lp where a <> 'g'; explain (costs off) select * from lp where a <> 'a' and a <> 'd'; explain (costs off) select * from lp where a not in ('a', 'd'); +explain (costs off) select * from lp limit 3; +explain (costs off) select * from lp where exists (select 1 from lp where random() > 0.1) limit 3; -- collation matches the partitioning collation, pruning works create table coll_pruning (a text collate "C") partition by list (a); diff --git a/src/test/regress/sql/union.sql b/src/test/regress/sql/union.sql index ca8c9b4d128..654667d1f59 100644 --- a/src/test/regress/sql/union.sql +++ b/src/test/regress/sql/union.sql @@ -540,3 +540,9 @@ select * from union all select *, 1 as x from int8_tbl b) ss where (x = 0) or (q1 >= q2 and q1 <= q2); + +explain (costs off) +(select * from tenk1 order by hundred) +UNION ALL +(select * from tenk1 order by hundred) +limit 3; -- 2.21.0 ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2023-09-13 12:20 Andy Fan <[email protected]> parent: Andy Fan <[email protected]> 1 sibling, 0 replies; 143+ messages in thread From: Andy Fan @ 2023-09-13 12:20 UTC (permalink / raw) To: pgsql-hackers; Zhang Mingli <[email protected]> > - We shouldn't do the optimization if there are still more tables to join, > the reason is similar to has_multiple_baserels(root) in > set_subquery_pathlist. > After some internal discussion, we have 2 different choices here. Let's call the current choice as method-a, and the new choice as method-b. Method-b will just ignore the "no more tables to join "limitation and build the append path with both cheapest startup cost and cheapest total cost, this is pretty like the method we joins a plain relation with another relation. The uneasy part is it is the cheapest start up cost rather than the cheapest fractional cost. method-a is pretty same as what set_subquery_pathlist is doing, which has a limitation on "no more tables to join" and has no the "cheapest startup cost" part. Ideally we can apply both strategies if we don't consider the effort. If there are no more tables to join, we use method-a. otherwise use method-b. With this thinking, we can even apply the same strategy to plain relations as well. However, I am not sure if the "cheapest startup cost" is a real problem. If it is not, we can apply method-b directly and modify set_subquery_pathlist to do the same for consistency. -- Best Regards Andy Fan ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2023-09-15 07:15 David Rowley <[email protected]> parent: Andy Fan <[email protected]> 1 sibling, 1 reply; 143+ messages in thread From: David Rowley @ 2023-09-15 07:15 UTC (permalink / raw) To: Andy Fan <[email protected]>; +Cc: pgsql-hackers; Zhang Mingli <[email protected]> On Thu, 7 Sept 2023 at 04:37, Andy Fan <[email protected]> wrote: > Currently add_paths_to_append_rel overlooked the startup cost for creating > append path, so it may have lost some optimization chances. After a glance, > the following 4 identifiers can be impacted. > - We shouldn't do the optimization if there are still more tables to join, > the reason is similar to has_multiple_baserels(root) in > set_subquery_pathlist. But the trouble here is we may inherit multiple > levels to build an appendrel, so I have to keep the 'top_relids' all the > time and compare it with PlannerInfo.all_baserels. If they are the same, > then it is the case we want to optimize. I think you've likely gone to the trouble of trying to determine if there are any joins pending because you're considering using a cheap startup path *instead* of the cheapest total path and you don't want to do that when some join will cause all the rows to be read thus making the plan more expensive if a cheap startup path was picked. Instead of doing that, why don't you just create a completely new AppendPath containing all the cheapest_startup_paths and add that to the append rel. You can optimise this and only do it when rel->consider_startup is true. Does the attached do anything less than what your patch does? David Attachments: [application/octet-stream] consider_cheapest_startup_appendpath.patch (1.7K, ../../CAApHDvry0nSV62kAOH3iccvfPhGPLN0Q97+=b1RsDPXDz3=CiQ@mail.gmail.com/2-consider_cheapest_startup_appendpath.patch) download | inline diff: diff --git a/src/backend/optimizer/path/allpaths.c b/src/backend/optimizer/path/allpaths.c index 9bdc70c702..b50f1d58a7 100644 --- a/src/backend/optimizer/path/allpaths.c +++ b/src/backend/optimizer/path/allpaths.c @@ -1307,6 +1307,8 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, { List *subpaths = NIL; bool subpaths_valid = true; + List *startup_subpaths = NIL; + bool startup_subpaths_valid = true; List *partial_subpaths = NIL; List *pa_partial_subpaths = NIL; List *pa_nonpartial_subpaths = NIL; @@ -1346,6 +1348,20 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, else subpaths_valid = false; + /* + * When the planner is considering cheap startup plans, we'll also + * collect all the cheapest_startup_paths and build an AppendPath + * containing those as subpaths. + */ + if (rel->consider_startup && childrel->pathlist != NIL && + childrel->cheapest_startup_path->param_info == NULL) + accumulate_append_subpath(childrel->cheapest_startup_path, + &startup_subpaths, + NULL); + else + startup_subpaths_valid = false; + + /* Same idea, but for a partial plan. */ if (childrel->partial_pathlist != NIL) { @@ -1478,6 +1494,11 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, NIL, NULL, 0, false, -1)); + /* build an AppendPath for the cheap startup paths, if valid */ + if (startup_subpaths_valid) + add_path(rel, (Path *) create_append_path(root, rel, startup_subpaths, + NIL, NIL, NULL, 0, false, -1)); + /* * Consider an append of unordered, unparameterized partial paths. Make * it parallel-aware if possible. ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2023-09-17 13:42 Andy Fan <[email protected]> parent: David Rowley <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: Andy Fan @ 2023-09-17 13:42 UTC (permalink / raw) To: David Rowley <[email protected]>; +Cc: pgsql-hackers; Zhang Mingli <[email protected]> Hi David, Thanks for taking a look at this! On Fri, Sep 15, 2023 at 3:15 PM David Rowley <[email protected]> wrote: > On Thu, 7 Sept 2023 at 04:37, Andy Fan <[email protected]> wrote: > > Currently add_paths_to_append_rel overlooked the startup cost for > creating > > append path, so it may have lost some optimization chances. After a > glance, > > the following 4 identifiers can be impacted. > > > - We shouldn't do the optimization if there are still more tables to > join, > > the reason is similar to has_multiple_baserels(root) in > > set_subquery_pathlist. But the trouble here is we may inherit multiple > > levels to build an appendrel, so I have to keep the 'top_relids' all > the > > time and compare it with PlannerInfo.all_baserels. If they are the > same, > > then it is the case we want to optimize. > > I think you've likely gone to the trouble of trying to determine if > there are any joins pending because you're considering using a cheap > startup path *instead* of the cheapest total path and you don't want > to do that when some join will cause all the rows to be read thus > making the plan more expensive if a cheap startup path was picked. > Yes, that's true. However it is not something we can't resolve, one of the solutions is just like what I did in the patch. but currently the main stuff which confuses me is if it is the right thing to give up the optimization if it has more tables to join (just like set_subquery_pathlist did). > Instead of doing that, why don't you just create a completely new > AppendPath containing all the cheapest_startup_paths and add that to > the append rel. You can optimise this and only do it when > rel->consider_startup is true. > > Does the attached do anything less than what your patch does? > We can work like this, but there is one difference from what my current patch does. It is cheapest_startup_path vs cheapest fraction path. For example if we have the following 3 paths with all of the estimated rows is 100 and the tuple_fraction is 10. Path 1: startup_cost = 60, total_cost = 80 -- cheapest total cost. Path 2: startup_cost = 10, total_cost = 1000 -- cheapest startup cost Path 3: startup_cost = 20, total_cost = 90 -- cheapest fractional cost So with the patch you propose, Path 1 & Path 3 are chosen to build append path. but with my current patch, Only path 3 is kept. IIUC, path 3 should be the best one in this case. We might also argue why Path 3 is kept in the first place (the children level), I think pathkey might be one option. and even path 3 is discarded somehow, I think only if it is the best one, we should keep it ideally. Another tiny factor of this is your propose isn't consistent with what set_subquery_pathlist which uses cheapest fractional cost and my proposal isn't consistent plain rel which uses cheapest startup cost. We can't say which one is better, though. If my above analysis is correct, I think the best way to handle this is if there is no more tables to join, we use cheapest fraction cost for all the kinds of relations, including plain relation, append rel, subquery and so on. If we have more tables to join, we use cheapest startup cost. On the implementation side, I want to use RelOptInfo.tuple_fraction instead of RelOptInfo.consider_startup. tuple_fraction = -1 means startup cost should not be considered. tuple_fraction = 0 means cheapest startup cost should be used. tuple_franction > 0 means cheapest fraction cost should be used. I still don't pay enough attention to consider_param_startup in RelOptInfo, I'm feeling the above strategy will not generate too much overhead to the planner for now while it can provides a better plan sometimes. -- Best Regards Andy Fan ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2023-09-18 03:58 David Rowley <[email protected]> parent: Andy Fan <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: David Rowley @ 2023-09-18 03:58 UTC (permalink / raw) To: Andy Fan <[email protected]>; +Cc: pgsql-hackers; Zhang Mingli <[email protected]> On Mon, 18 Sept 2023 at 01:42, Andy Fan <[email protected]> wrote: > On Fri, Sep 15, 2023 at 3:15 PM David Rowley <[email protected]> wrote: >> Instead of doing that, why don't you just create a completely new >> AppendPath containing all the cheapest_startup_paths and add that to >> the append rel. You can optimise this and only do it when >> rel->consider_startup is true. >> >> Does the attached do anything less than what your patch does? > > > We can work like this, but there is one difference from what > my current patch does. It is cheapest_startup_path vs cheapest > fraction path. For example if we have the following 3 paths with > all of the estimated rows is 100 and the tuple_fraction is 10. Yeah, it's true that the version I wrote didn't consider the fractional part, but I didn't really see it as worse than what you did. It looks like you're assuming that every append child will have the same number of tuples read from it, but it seems to me that it would only be valid to use the fractional part for the first child. The path chosen for subsequent child paths would, if done correctly, need to account for the estimated rows from the previous child paths. It's not valid here to copy the code in generate_orderedappend_paths() as MergeAppend won't necessarily exhaust the first child subpath first like Append will. > Path 1: startup_cost = 60, total_cost = 80 -- cheapest total cost. > Path 2: startup_cost = 10, total_cost = 1000 -- cheapest startup cost > Path 3: startup_cost = 20, total_cost = 90 -- cheapest fractional cost > > So with the patch you propose, Path 1 & Path 3 are chosen to build > append path. but with my current patch, Only path 3 is kept. IIUC, > path 3 should be the best one in this case. I assume you mean mine would build AppendPaths for 1+2, not 1+3. You mentioned: > I just find it is hard to build the case for Identifier 2/3/4. I wonder if this is because generate_orderedappend_paths() handles startup paths and most cases will that need a cheap startup plan will require some sort of pathkeys. The example you mentioned of: (select * from tenk1 order by hundred) UNION ALL (select * from tenk1 order by hundred) limit 3; I don't find this to be a compellingly real-world case. The planner is under no obligation to output rows from the 1st branch of the UNION ALL before the 2nd one. If the user cared about that then they'd have instead added a top-level ORDER BY, in which case the planner seems happy to use the index scan: regression=# explain (costs off) (select * from tenk1) UNION ALL (select * from tenk1) order by hundred limit 3; QUERY PLAN ------------------------------------------------------------- Limit -> Merge Append Sort Key: tenk1.hundred -> Index Scan using tenk1_hundred on tenk1 -> Index Scan using tenk1_hundred on tenk1 tenk1_1 It would be good if you could provide a bit more detail on the cases you want to improve here. For example, if your #4 case, you have "WHERE xxx". I don't know if "xxx" is just a base qual or if there's a correlation to the outer query in there. Another concern I have with your patch is that it seems to be under the impression that there being further joins to evaluate at this query level is the only reason that we would have to pull more than the tuple fraction number of rows from the query. What gives you the confidence that's the only reason we may want to pull more than the tuple fraction of tuples from the append child? David ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2023-09-18 06:38 Andy Fan <[email protected]> parent: David Rowley <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: Andy Fan @ 2023-09-18 06:38 UTC (permalink / raw) To: David Rowley <[email protected]>; +Cc: pgsql-hackers; Zhang Mingli <[email protected]> On Mon, Sep 18, 2023 at 11:58 AM David Rowley <[email protected]> wrote: > On Mon, 18 Sept 2023 at 01:42, Andy Fan <[email protected]> wrote: > > On Fri, Sep 15, 2023 at 3:15 PM David Rowley <[email protected]> > wrote: > >> Instead of doing that, why don't you just create a completely new > >> AppendPath containing all the cheapest_startup_paths and add that to > >> the append rel. You can optimise this and only do it when > >> rel->consider_startup is true. > >> > >> Does the attached do anything less than what your patch does? > > > > > > We can work like this, but there is one difference from what > > my current patch does. It is cheapest_startup_path vs cheapest > > fraction path. For example if we have the following 3 paths with > > all of the estimated rows is 100 and the tuple_fraction is 10. > > Yeah, it's true that the version I wrote didn't consider the > fractional part, but I didn't really see it as worse than what you > did. It looks like you're assuming that every append child will have the same number of tuples read from it, but it seems to me that it > would only be valid to use the fractional part for the first child. The path chosen for subsequent child paths would, if done correctly, > need to account for the estimated rows from the previous child paths. > Actually this is consistent with what generate_union_paths does now. /* * If plain UNION, tell children to fetch all tuples. * * Note: in UNION ALL, we pass the top-level tuple_fraction unmodified to * each arm of the UNION ALL. One could make a case for reducing the * tuple fraction for later arms (discounting by the expected size of the * earlier arms' results) but it seems not worth the trouble. The normal * case where tuple_fraction isn't already zero is a LIMIT at top level, * and passing it down as-is is usually enough to get the desired result * of preferring fast-start plans. */ if (!op->all) root->tuple_fraction = 0.0; UNION ALL is pretty like append rel. It's not valid here to copy the code in generate_orderedappend_paths() > as MergeAppend won't necessarily exhaust the first child subpath first > like Append will. > Not sure which code you are referring to, but the code I refer to much is generate_union_paths and set_subquery_pathlist. > > Path 1: startup_cost = 60, total_cost = 80 -- cheapest total cost. > > Path 2: startup_cost = 10, total_cost = 1000 -- cheapest startup cost > > Path 3: startup_cost = 20, total_cost = 90 -- cheapest fractional cost > > > > So with the patch you propose, Path 1 & Path 3 are chosen to build > > append path. but with my current patch, Only path 3 is kept. IIUC, > > path 3 should be the best one in this case. > > I assume you mean mine would build AppendPaths for 1+2, not 1+3. Yes, it should be 1+2. > > You mentioned: > > > I just find it is hard to build the case for Identifier 2/3/4. > > I wonder if this is because generate_orderedappend_paths() handles > startup paths and most cases will that need a cheap startup plan will > require some sort of pathkeys. > Probably yes. > The example you mentioned of: > > (select * from tenk1 order by hundred) > UNION ALL > (select * from tenk1 order by hundred) > limit 3; > > I don't find this to be a compellingly real-world case. The planner > is under no obligation to output rows from the 1st branch of the UNION > ALL before the 2nd one. If the user cared about that then they'd have > instead added a top-level ORDER BY, in which case the planner seems > happy to use the index scan: > Sorry about the test case, here is the one with more compelling real-world. with s1 as (select * from tenk1 join tenk2 using (hundred)), s2 as (select * from tenk1 join tenk2 using (hundred)) select * from s1 union all select * from s2 limit 3; It would be good if you could provide a bit more detail on the cases > you want to improve here. For example, if your #4 case, you have > "WHERE xxx". I don't know if "xxx" is just a base qual or if there's a > correlation to the outer query in there. > for the #4, the quickest test case is select * from tenk1 where exists ( with s1 as (select * from tenk1 join tenk2 using (hundred)), s2 as (select * from tenk1 join tenk2 using (hundred)) select * from s1 union all select * from s2 where random() > 0.4); random() is used to make it can't be pull-up. and exists implies LIMIT 1; Another concern I have with your patch is that it seems to be under > the impression that there being further joins to evaluate at this > query level is the only reason that we would have to pull more than > the tuple fraction number of rows from the query. What gives you the > confidence that's the only reason we may want to pull more than the > tuple fraction of tuples from the append child? > I think you are talking about something like ORDER BY, GROUP BY clause, I do overlook it. but if we admit cheapest fractional cost is a right factor to consider, this issue is not unresolvable since parse is at hand. At last, you ignore the part of set_subquery_pathlist. I always use it to prove the value of the cheapest fractional cost. Am I missing something? /* * We can safely pass the outer tuple_fraction down to the subquery if the * outer level has no joining, aggregation, or sorting to do. Otherwise * we'd better tell the subquery to plan for full retrieval. (XXX This * could probably be made more intelligent ...) */ if (parse->hasAggs || parse->groupClause || parse->groupingSets || root->hasHavingQual || parse->distinctClause || parse->sortClause || has_multiple_baserels(root)) tuple_fraction = 0.0; /* default case */ else tuple_fraction = root->tuple_fraction; What do you think about this in my last reply? "If my above analysis is correct, I think the best way to handle this is if there is no more tables to join, we use cheapest fraction cost for all the kinds of relations, including plain relation, append rel, subquery and so on, If we have more tables to join, we use cheapest startup cost.". This is what is in my mind now. -- Best Regards Andy Fan ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2023-09-18 10:55 Andy Fan <[email protected]> parent: Andy Fan <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: Andy Fan @ 2023-09-18 10:55 UTC (permalink / raw) To: David Rowley <[email protected]>; +Cc: pgsql-hackers; Zhang Mingli <[email protected]> Hi, > What do you think about this in my last reply? "If my above > analysis is correct, I think the best way to handle this is if there > is no more tables to join, we use cheapest fraction cost for all > the kinds of relations, including plain relation, append rel, > subquery and so on, If we have more tables to join, we use > cheapest startup cost.". This is what is in my mind now. > > Here is an updated version to show what's in my mind. -- Best Regards Andy Fan Attachments: [application/octet-stream] v3-0001-make-add_paths_to_append_rel-aware-of-startup_cos.patch (23.0K, ../../CAKU4AWqaTNPrYcb_cMEDDYWZVGfFxuUjr75F5LBZwnUQ0JvVPw@mail.gmail.com/3-v3-0001-make-add_paths_to_append_rel-aware-of-startup_cos.patch) download | inline diff: From a4e79f53c090801da7328c61568eb35403d8ae72 Mon Sep 17 00:00:00 2001 From: Andy Fan <[email protected]> Date: Mon, 18 Sep 2023 18:46:45 +0800 Subject: [PATCH v3] make add_paths_to_append_rel aware of startup_cost. --- src/backend/optimizer/path/allpaths.c | 86 ++++++++++++++++--- src/backend/optimizer/plan/planner.c | 36 ++++++-- src/backend/optimizer/prep/prepjointree.c | 8 ++ src/backend/optimizer/util/pathnode.c | 18 ++++ src/include/nodes/pathnodes.h | 5 ++ src/include/optimizer/pathnode.h | 1 + src/include/optimizer/planner.h | 6 ++ .../regress/expected/partition_aggregate.out | 22 +++++ src/test/regress/expected/partition_join.out | 27 ++++++ src/test/regress/expected/partition_prune.out | 52 +++++++++++ src/test/regress/expected/union.out | 29 +++++++ src/test/regress/sql/partition_aggregate.sql | 3 + src/test/regress/sql/partition_join.sql | 3 + src/test/regress/sql/partition_prune.sql | 2 + src/test/regress/sql/union.sql | 10 +++ 15 files changed, 288 insertions(+), 20 deletions(-) diff --git a/src/backend/optimizer/path/allpaths.c b/src/backend/optimizer/path/allpaths.c index 9bdc70c702e..ebc591ac5cc 100644 --- a/src/backend/optimizer/path/allpaths.c +++ b/src/backend/optimizer/path/allpaths.c @@ -1239,6 +1239,11 @@ set_append_rel_pathlist(PlannerInfo *root, RelOptInfo *rel, List *live_childrels = NIL; ListCell *l; + if (rel->consider_startup && + bms_equal(rel->relids, root->all_baserels) && + !root->has_stoper_op) + rel->tuple_fraction = root->tuple_fraction; + /* * Generate access paths for each member relation, and remember the * non-dummy children. @@ -1268,6 +1273,8 @@ set_append_rel_pathlist(PlannerInfo *root, RelOptInfo *rel, if (!rel->consider_parallel) childrel->consider_parallel = false; + childrel->tuple_fraction = rel->tuple_fraction; + /* * Compute the child's access paths. */ @@ -1307,6 +1314,8 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, { List *subpaths = NIL; bool subpaths_valid = true; + List *startup_subpaths = NIL; + bool startup_subpaths_valid = true; List *partial_subpaths = NIL; List *pa_partial_subpaths = NIL; List *pa_nonpartial_subpaths = NIL; @@ -1329,7 +1338,9 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, { RelOptInfo *childrel = lfirst(l); ListCell *lcp; + Path *cheapest_startup_path = NULL; Path *cheapest_partial_path = NULL; + Cost cheapest_partial_cost = 0; /* * If child has an unparameterized cheapest-total path, add that to @@ -1339,19 +1350,46 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, * With partitionwise aggregates, the child rel's pathlist may be * empty, so don't assume that a path exists here. */ - if (childrel->pathlist != NIL && + if (childrel->tuple_fraction && + (cheapest_startup_path = get_cheapest_fractional_path_ext(childrel, + childrel->tuple_fraction, + false, false, false)) != NULL) + accumulate_append_subpath(cheapest_startup_path, + &subpaths, NULL); + else if (childrel->pathlist != NIL && childrel->cheapest_total_path->param_info == NULL) accumulate_append_subpath(childrel->cheapest_total_path, &subpaths, NULL); else subpaths_valid = false; + if (rel->consider_startup && !childrel->tuple_fraction && + childrel->pathlist != NIL && + childrel->cheapest_startup_path->param_info == NULL) + { + accumulate_append_subpath(childrel->cheapest_startup_path, &startup_subpaths, NULL); + } + else + startup_subpaths_valid = false; + + if (childrel->tuple_fraction && + (cheapest_partial_path = get_cheapest_fractional_path_ext(childrel, + childrel->tuple_fraction, + false, true, false)) !=NULL) + { + accumulate_append_subpath(cheapest_partial_path, + &partial_subpaths, NULL); + cheapest_partial_cost = get_fractional_path_cost(cheapest_partial_path, + root->tuple_fraction); + } + /* Same idea, but for a partial plan. */ - if (childrel->partial_pathlist != NIL) + else if (childrel->partial_pathlist != NIL) { cheapest_partial_path = linitial(childrel->partial_pathlist); accumulate_append_subpath(cheapest_partial_path, &partial_subpaths, NULL); + cheapest_partial_cost = cheapest_partial_path->total_cost; } else partial_subpaths_valid = false; @@ -1363,9 +1401,33 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, if (pa_subpaths_valid) { Path *nppath = NULL; + Cost nppath_cost = 0; - nppath = - get_cheapest_parallel_safe_total_inner(childrel->pathlist); + /* + * Check if the cheapest non-partial and parallel safe path (nppath) + * is cheaper than cheapest_partial_path, if so use the nppath instead of + * cheapest_partial_path. Note the cheapest_partial_path has been startup + * aware already. + */ + if (childrel->tuple_fraction && cheapest_startup_path) + { + if (cheapest_startup_path->parallel_safe) + nppath = cheapest_startup_path; + else + nppath = get_cheapest_fractional_path_ext(childrel, childrel->tuple_fraction, + false, false, true); + + if (nppath) + nppath_cost = get_fractional_path_cost(nppath, + root->tuple_fraction); + } + else + { + nppath = + get_cheapest_parallel_safe_total_inner(childrel->pathlist); + if (nppath) + nppath_cost = nppath->total_cost; + } if (cheapest_partial_path == NULL && nppath == NULL) { @@ -1374,7 +1436,7 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, } else if (nppath == NULL || (cheapest_partial_path != NULL && - cheapest_partial_path->total_cost < nppath->total_cost)) + cheapest_partial_cost < nppath_cost)) { /* Partial path is cheaper or the only option. */ Assert(cheapest_partial_path != NULL); @@ -1478,6 +1540,11 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, NIL, NULL, 0, false, -1)); + if (startup_subpaths_valid && startup_subpaths != NIL) + add_path(rel, (Path *) create_append_path(root, rel, startup_subpaths, + NIL, NIL, NULL, 0, false, + -1)); + /* * Consider an append of unordered, unparameterized partial paths. Make * it parallel-aware if possible. @@ -2495,7 +2562,6 @@ static void set_subquery_pathlist(PlannerInfo *root, RelOptInfo *rel, Index rti, RangeTblEntry *rte) { - Query *parse = root->parse; Query *subquery = rte->subquery; bool trivial_pathtarget; Relids required_outer; @@ -2631,13 +2697,7 @@ set_subquery_pathlist(PlannerInfo *root, RelOptInfo *rel, * we'd better tell the subquery to plan for full retrieval. (XXX This * could probably be made more intelligent ...) */ - if (parse->hasAggs || - parse->groupClause || - parse->groupingSets || - root->hasHavingQual || - parse->distinctClause || - parse->sortClause || - has_multiple_baserels(root)) + if (root->has_stoper_op || has_multiple_baserels(root)) tuple_fraction = 0.0; /* default case */ else tuple_fraction = root->tuple_fraction; diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c index 44efb1f4ebc..db920ccd9e5 100644 --- a/src/backend/optimizer/plan/planner.c +++ b/src/backend/optimizer/plan/planner.c @@ -674,6 +674,14 @@ subquery_planner(PlannerGlobal *glob, Query *parse, root->non_recursive_path = NULL; root->partColsUpdated = false; + if (parse->hasAggs || + parse->groupClause || + parse->groupingSets || + parse->havingQual != NULL || + parse->distinctClause || + parse->sortClause) + root->has_stoper_op = true; + /* * Create the top-level join domain. This won't have valid contents until * deconstruct_jointree fills it in, but the node needs to exist before @@ -6328,26 +6336,40 @@ make_sort_input_target(PlannerInfo *root, Path * get_cheapest_fractional_path(RelOptInfo *rel, double tuple_fraction) { - Path *best_path = rel->cheapest_total_path; + return get_cheapest_fractional_path_ext(rel, tuple_fraction, true, false, false); +} + +Path * +get_cheapest_fractional_path_ext(RelOptInfo *rel, double tuple_fraction, + bool allow_parameterized, bool look_partial, + bool must_parallel_safe) +{ + List *pathlist = look_partial ? rel->partial_pathlist : rel->pathlist; + Path *best_path = allow_parameterized ? linitial(pathlist) : NULL; ListCell *l; + double total_rows = ((Path *)linitial(rel->pathlist))->rows; /* If all tuples will be retrieved, just return the cheapest-total path */ if (tuple_fraction <= 0.0) return best_path; /* Convert absolute # of tuples to a fraction; no need to clamp to 0..1 */ - if (tuple_fraction >= 1.0 && best_path->rows > 0) - tuple_fraction /= best_path->rows; + if (tuple_fraction >= 1.0 && total_rows > 0) + tuple_fraction /= total_rows; - foreach(l, rel->pathlist) + foreach(l, pathlist) { Path *path = (Path *) lfirst(l); - if (path == rel->cheapest_total_path || - compare_fractional_path_costs(best_path, path, tuple_fraction) <= 0) + if (!allow_parameterized && !bms_is_empty(PATH_REQ_OUTER(path))) + continue; + + if (must_parallel_safe && !path->parallel_safe) continue; - best_path = path; + if (best_path == NULL || + compare_fractional_path_costs(best_path, path, tuple_fraction) > 0) + best_path = path; } return best_path; diff --git a/src/backend/optimizer/prep/prepjointree.c b/src/backend/optimizer/prep/prepjointree.c index 73ff40721c9..513c404ab06 100644 --- a/src/backend/optimizer/prep/prepjointree.c +++ b/src/backend/optimizer/prep/prepjointree.c @@ -1015,6 +1015,14 @@ pull_up_simple_subquery(PlannerInfo *root, Node *jtnode, RangeTblEntry *rte, subroot->non_recursive_path = NULL; /* We don't currently need a top JoinDomain for the subroot */ + if (subquery->hasAggs || + subquery->groupClause || + subquery->groupingSets || + subquery->havingQual != NULL || + subquery->distinctClause || + subquery->sortClause) + subroot->has_stoper_op = true; + /* No CTEs to worry about */ Assert(subquery->cteList == NIL); diff --git a/src/backend/optimizer/util/pathnode.c b/src/backend/optimizer/util/pathnode.c index 211ba65389d..dcf694dd9cb 100644 --- a/src/backend/optimizer/util/pathnode.c +++ b/src/backend/optimizer/util/pathnode.c @@ -120,6 +120,9 @@ compare_fractional_path_costs(Path *path1, Path *path2, Cost cost1, cost2; + if (path1 == path2) + return 0; + if (fraction <= 0.0 || fraction >= 1.0) return compare_path_costs(path1, path2, TOTAL_COST); cost1 = path1->startup_cost + @@ -133,6 +136,21 @@ compare_fractional_path_costs(Path *path1, Path *path2, return 0; } +Cost +get_fractional_path_cost(Path *path1, double fraction) +{ + double total_rows = path1->rows; + + if (total_rows <= 0) + return path1->total_cost; + + if (fraction >= 1.0) + fraction = Min(1.0, fraction / path1->rows); + + return path1->startup_cost + fraction * (path1->total_cost - path1->startup_cost); +} + + /* * compare_path_costs_fuzzily * Compare the costs of two paths to see if either can be said to diff --git a/src/include/nodes/pathnodes.h b/src/include/nodes/pathnodes.h index 5702fbba60c..0ab11d7429e 100644 --- a/src/include/nodes/pathnodes.h +++ b/src/include/nodes/pathnodes.h @@ -479,6 +479,9 @@ struct PlannerInfo /* limit_tuples passed to query_planner */ Cardinality limit_tuples; + /* Like order by, group by, distinct and so. */ + bool has_stoper_op; + /* * Minimum security_level for quals. Note: qual_security_level is zero if * there are no securityQuals. @@ -870,6 +873,8 @@ typedef struct RelOptInfo bool consider_param_startup; /* consider parallel paths? */ bool consider_parallel; + /* the tuple fraction of rows. */ + Selectivity tuple_fraction; /* * default result targetlist for Paths scanning this relation; list of diff --git a/src/include/optimizer/pathnode.h b/src/include/optimizer/pathnode.h index 6e557bebc44..b1544a13cff 100644 --- a/src/include/optimizer/pathnode.h +++ b/src/include/optimizer/pathnode.h @@ -25,6 +25,7 @@ extern int compare_path_costs(Path *path1, Path *path2, CostSelector criterion); extern int compare_fractional_path_costs(Path *path1, Path *path2, double fraction); +extern Cost get_fractional_path_cost(Path *path1, double fraction); extern void set_cheapest(RelOptInfo *parent_rel); extern void add_path(RelOptInfo *parent_rel, Path *new_path); extern bool add_path_precheck(RelOptInfo *parent_rel, diff --git a/src/include/optimizer/planner.h b/src/include/optimizer/planner.h index fc2e15496dd..469faeabfb3 100644 --- a/src/include/optimizer/planner.h +++ b/src/include/optimizer/planner.h @@ -56,6 +56,12 @@ extern void mark_partial_aggref(Aggref *agg, AggSplit aggsplit); extern Path *get_cheapest_fractional_path(RelOptInfo *rel, double tuple_fraction); +extern Path *get_cheapest_fractional_path_ext(RelOptInfo *rel, + double tuple_fraction, + bool allow_parameterized, + bool look_partial, + bool must_parallel_safe); + extern Expr *preprocess_phv_expression(PlannerInfo *root, Expr *expr); #endif /* PLANNER_H */ diff --git a/src/test/regress/expected/partition_aggregate.out b/src/test/regress/expected/partition_aggregate.out index 1b900fddf8e..ccd5108a439 100644 --- a/src/test/regress/expected/partition_aggregate.out +++ b/src/test/regress/expected/partition_aggregate.out @@ -55,6 +55,28 @@ SELECT c, sum(a), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY c HAVI 0008 | 2000 | 14.0000000000000000 | 250 | 0 | 26 (6 rows) +EXPLAIN (COSTS OFF) +SELECT c, sum(a), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY c HAVING avg(d) < 15 ORDER BY 1, 2, 3 LIMIT 1; + QUERY PLAN +-------------------------------------------------------------------- + Limit + -> Sort + Sort Key: pagg_tab.c, (sum(pagg_tab.a)), (avg(pagg_tab.b)) + -> Append + -> HashAggregate + Group Key: pagg_tab.c + Filter: (avg(pagg_tab.d) < '15'::numeric) + -> Seq Scan on pagg_tab_p1 pagg_tab + -> HashAggregate + Group Key: pagg_tab_1.c + Filter: (avg(pagg_tab_1.d) < '15'::numeric) + -> Seq Scan on pagg_tab_p2 pagg_tab_1 + -> HashAggregate + Group Key: pagg_tab_2.c + Filter: (avg(pagg_tab_2.d) < '15'::numeric) + -> Seq Scan on pagg_tab_p3 pagg_tab_2 +(16 rows) + -- When GROUP BY clause does not match; partial aggregation is performed for each partition. EXPLAIN (COSTS OFF) SELECT a, sum(b), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY a HAVING avg(d) < 15 ORDER BY 1, 2, 3; diff --git a/src/test/regress/expected/partition_join.out b/src/test/regress/expected/partition_join.out index 6560fe2416f..c41c26dc482 100644 --- a/src/test/regress/expected/partition_join.out +++ b/src/test/regress/expected/partition_join.out @@ -62,6 +62,33 @@ SELECT t1.a, t1.c, t2.b, t2.c FROM prt1 t1, prt2 t2 WHERE t1.a = t2.b AND t1.b = 450 | 0450 | 450 | 0450 (4 rows) +EXPLAIN (COSTS OFF) +SELECT t1.a, t1.c, t2.b, t2.c FROM prt1 t1, prt2 t2 WHERE t1.a = t2.b AND t1.b = 0 ORDER BY t1.a, t2.b LIMIT 1; + QUERY PLAN +--------------------------------------------------------------- + Limit + -> Merge Append + Sort Key: t1.a + -> Nested Loop + Join Filter: (t1_1.a = t2_1.b) + -> Index Scan using iprt2_p1_b on prt2_p1 t2_1 + -> Materialize + -> Seq Scan on prt1_p1 t1_1 + Filter: (b = 0) + -> Nested Loop + Join Filter: (t1_2.a = t2_2.b) + -> Index Scan using iprt2_p2_b on prt2_p2 t2_2 + -> Materialize + -> Seq Scan on prt1_p2 t1_2 + Filter: (b = 0) + -> Nested Loop + Join Filter: (t1_3.a = t2_3.b) + -> Index Scan using iprt2_p3_b on prt2_p3 t2_3 + -> Materialize + -> Seq Scan on prt1_p3 t1_3 + Filter: (b = 0) +(21 rows) + -- left outer join, 3-way EXPLAIN (COSTS OFF) SELECT COUNT(*) FROM prt1 t1 diff --git a/src/test/regress/expected/partition_prune.out b/src/test/regress/expected/partition_prune.out index bb1223e2b13..4a8d9357b89 100644 --- a/src/test/regress/expected/partition_prune.out +++ b/src/test/regress/expected/partition_prune.out @@ -143,6 +143,58 @@ explain (costs off) select * from lp where a not in ('a', 'd'); Filter: (a <> ALL ('{a,d}'::bpchar[])) (9 rows) +explain (costs off) select * from lp limit 3; + QUERY PLAN +----------------------------------------- + Limit + -> Append + -> Seq Scan on lp_ad lp_1 + -> Seq Scan on lp_bc lp_2 + -> Seq Scan on lp_ef lp_3 + -> Seq Scan on lp_g lp_4 + -> Seq Scan on lp_null lp_5 + -> Seq Scan on lp_default lp_6 +(8 rows) + +explain (costs off) select * from lp where exists (select 1 from lp where random() > 0.1) limit 3; + QUERY PLAN +-------------------------------------------------------------- + Limit + InitPlan 1 (returns $0) + -> Append + -> Seq Scan on lp_ad lp_8 + Filter: (random() > '0.1'::double precision) + -> Seq Scan on lp_bc lp_9 + Filter: (random() > '0.1'::double precision) + -> Seq Scan on lp_ef lp_10 + Filter: (random() > '0.1'::double precision) + -> Seq Scan on lp_g lp_11 + Filter: (random() > '0.1'::double precision) + -> Seq Scan on lp_null lp_12 + Filter: (random() > '0.1'::double precision) + -> Seq Scan on lp_default lp_13 + Filter: (random() > '0.1'::double precision) + -> Append + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_ad lp_1 + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_bc lp_2 + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_ef lp_3 + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_g lp_4 + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_null lp_5 + -> Result + One-Time Filter: $0 + -> Seq Scan on lp_default lp_6 +(34 rows) + -- collation matches the partitioning collation, pruning works create table coll_pruning (a text collate "C") partition by list (a); create table coll_pruning_a partition of coll_pruning for values in ('a'); diff --git a/src/test/regress/expected/union.out b/src/test/regress/expected/union.out index e2613d6777e..166dd90cb85 100644 --- a/src/test/regress/expected/union.out +++ b/src/test/regress/expected/union.out @@ -1432,3 +1432,32 @@ where (x = 0) or (q1 >= q2 and q1 <= q2); 4567890123456789 | 4567890123456789 | 1 (6 rows) +explain (costs off) +with s1 as +(select * from tenk1 join tenk2 using (hundred)), +s2 as +(select * from tenk1 join tenk2 using (hundred)) +select * from s1 +union all +select * from s2 +limit 3; + QUERY PLAN +------------------------------------------------------------------------- + Limit + -> Append + -> Nested Loop + -> Seq Scan on tenk1 + -> Memoize + Cache Key: tenk1.hundred + Cache Mode: logical + -> Index Scan using tenk2_hundred on tenk2 + Index Cond: (hundred = tenk1.hundred) + -> Nested Loop + -> Seq Scan on tenk1 tenk1_1 + -> Memoize + Cache Key: tenk1_1.hundred + Cache Mode: logical + -> Index Scan using tenk2_hundred on tenk2 tenk2_1 + Index Cond: (hundred = tenk1_1.hundred) +(16 rows) + diff --git a/src/test/regress/sql/partition_aggregate.sql b/src/test/regress/sql/partition_aggregate.sql index ab070fee244..a2943a62961 100644 --- a/src/test/regress/sql/partition_aggregate.sql +++ b/src/test/regress/sql/partition_aggregate.sql @@ -30,6 +30,9 @@ EXPLAIN (COSTS OFF) SELECT c, sum(a), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY c HAVING avg(d) < 15 ORDER BY 1, 2, 3; SELECT c, sum(a), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY c HAVING avg(d) < 15 ORDER BY 1, 2, 3; +EXPLAIN (COSTS OFF) +SELECT c, sum(a), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY c HAVING avg(d) < 15 ORDER BY 1, 2, 3 LIMIT 1; + -- When GROUP BY clause does not match; partial aggregation is performed for each partition. EXPLAIN (COSTS OFF) SELECT a, sum(b), avg(b), count(*), min(a), max(b) FROM pagg_tab GROUP BY a HAVING avg(d) < 15 ORDER BY 1, 2, 3; diff --git a/src/test/regress/sql/partition_join.sql b/src/test/regress/sql/partition_join.sql index 48daf3aee39..88b6e5168ae 100644 --- a/src/test/regress/sql/partition_join.sql +++ b/src/test/regress/sql/partition_join.sql @@ -34,6 +34,9 @@ EXPLAIN (COSTS OFF) SELECT t1.a, t1.c, t2.b, t2.c FROM prt1 t1, prt2 t2 WHERE t1.a = t2.b AND t1.b = 0 ORDER BY t1.a, t2.b; SELECT t1.a, t1.c, t2.b, t2.c FROM prt1 t1, prt2 t2 WHERE t1.a = t2.b AND t1.b = 0 ORDER BY t1.a, t2.b; +EXPLAIN (COSTS OFF) +SELECT t1.a, t1.c, t2.b, t2.c FROM prt1 t1, prt2 t2 WHERE t1.a = t2.b AND t1.b = 0 ORDER BY t1.a, t2.b LIMIT 1; + -- left outer join, 3-way EXPLAIN (COSTS OFF) SELECT COUNT(*) FROM prt1 t1 diff --git a/src/test/regress/sql/partition_prune.sql b/src/test/regress/sql/partition_prune.sql index 83fed54b8c6..0087d8da32a 100644 --- a/src/test/regress/sql/partition_prune.sql +++ b/src/test/regress/sql/partition_prune.sql @@ -24,6 +24,8 @@ explain (costs off) select * from lp where a is not null and (a = 'a' or a = 'c' explain (costs off) select * from lp where a <> 'g'; explain (costs off) select * from lp where a <> 'a' and a <> 'd'; explain (costs off) select * from lp where a not in ('a', 'd'); +explain (costs off) select * from lp limit 3; +explain (costs off) select * from lp where exists (select 1 from lp where random() > 0.1) limit 3; -- collation matches the partitioning collation, pruning works create table coll_pruning (a text collate "C") partition by list (a); diff --git a/src/test/regress/sql/union.sql b/src/test/regress/sql/union.sql index ca8c9b4d128..21c80fc1d96 100644 --- a/src/test/regress/sql/union.sql +++ b/src/test/regress/sql/union.sql @@ -540,3 +540,13 @@ select * from union all select *, 1 as x from int8_tbl b) ss where (x = 0) or (q1 >= q2 and q1 <= q2); + +explain (costs off) +with s1 as +(select * from tenk1 join tenk2 using (hundred)), +s2 as +(select * from tenk1 join tenk2 using (hundred)) +select * from s1 +union all +select * from s2 +limit 3; -- 2.21.0 ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2023-09-27 08:03 David Rowley <[email protected]> parent: Andy Fan <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: David Rowley @ 2023-09-27 08:03 UTC (permalink / raw) To: Andy Fan <[email protected]>; +Cc: pgsql-hackers; Zhang Mingli <[email protected]> On Mon, 18 Sept 2023 at 22:55, Andy Fan <[email protected]> wrote: > Here is an updated version to show what's in my mind. My current thoughts on this are that the fractional cost part adds quite a bit more complexity than the minimalistic approach of just also considering the cheapest startup path. There's also quite a bit I don't like about the extra code you've added: 1. RelOptInfo.tuple_fraction is not given a default value in locations where we do makeNode(RelOptInfo); 2. This is very poorly documented and badly named. Also seems to have a typo "stopper" + /* Like order by, group by, distinct and so. */ + bool has_stoper_op; With that, nobody has a hope of knowing if some new operation should set that value to true or false. I think it needs to define the meaning, which I think (very roughly) is "does the query require any additional upper-planner operations which could require having to read more tuples from the final join relation than the number of tuples which are read from the final upper rel." 3. get_fractional_path_cost() goes to the trouble of setting total_rows then does not use it. 4. I don't see why it's ok to take the total_rows from the first Path in the list in get_cheapest_fractional_path_ext(). What if another Path has some other value? But overall, I'm more inclined to just go with the more simple "add a cheap unordered startup append path if considering cheap startup plans" version. I see your latest patch does both. So, I'd suggest two patches as I do see the merit in keeping this simple and cheap. If we can get the first part in and you still find cases where you're not getting the most appropriate startup plan based on the tuple fraction, then we can reconsider what extra complexity we should endure in the code based on the example query where we've demonstrated the planner is not choosing the best startup path appropriate to the given tuple fraction. David ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2023-10-01 08:26 Andy Fan <[email protected]> parent: David Rowley <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: Andy Fan @ 2023-10-01 08:26 UTC (permalink / raw) To: David Rowley <[email protected]>; +Cc: pgsql-hackers; Zhang Mingli <[email protected]> Hi David, But overall, I'm more inclined to just go with the more simple "add a > cheap unordered startup append path if considering cheap startup > plans" version. I see your latest patch does both. So, I'd suggest two > patches as I do see the merit in keeping this simple and cheap. If we > can get the first part in and you still find cases where you're not > getting the most appropriate startup plan based on the tuple fraction, > then we can reconsider what extra complexity we should endure in the > code based on the example query where we've demonstrated the planner > is not choosing the best startup path appropriate to the given tuple > fraction. > I think this is a fair point, I agree that your first part is good enough to be committed first. Actually I tried a lot to make a test case which can prove the value of cheapest fractional cost but no gain so far:( -- Best Regards Andy Fan ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2023-10-04 00:41 David Rowley <[email protected]> parent: Andy Fan <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: David Rowley @ 2023-10-04 00:41 UTC (permalink / raw) To: Andy Fan <[email protected]>; +Cc: pgsql-hackers; Zhang Mingli <[email protected]> On Sun, 1 Oct 2023 at 21:26, Andy Fan <[email protected]> wrote: >> But overall, I'm more inclined to just go with the more simple "add a >> cheap unordered startup append path if considering cheap startup >> plans" version. I see your latest patch does both. So, I'd suggest two >> patches as I do see the merit in keeping this simple and cheap. If we >> can get the first part in and you still find cases where you're not >> getting the most appropriate startup plan based on the tuple fraction, >> then we can reconsider what extra complexity we should endure in the >> code based on the example query where we've demonstrated the planner >> is not choosing the best startup path appropriate to the given tuple >> fraction. > > I think this is a fair point, I agree that your first part is good enough to be > committed first. Actually I tried a lot to make a test case which can prove > the value of cheapest fractional cost but no gain so far:( I've attached a patch with the same code as the previous patch but this time including a regression test. I see no reason to not commit this so if anyone feels differently please let me know. David Attachments: [application/octet-stream] consider_cheapest_startup_appendpath_v2.patch (3.3K, ../../CAApHDvrgSM5mdix-2YLYMJVaz+-vEq5mBPQ4jbDJYpy3=rc7dQ@mail.gmail.com/2-consider_cheapest_startup_appendpath_v2.patch) download | inline diff: diff --git a/src/backend/optimizer/path/allpaths.c b/src/backend/optimizer/path/allpaths.c index b11b939989..4012901626 100644 --- a/src/backend/optimizer/path/allpaths.c +++ b/src/backend/optimizer/path/allpaths.c @@ -1307,6 +1307,8 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, { List *subpaths = NIL; bool subpaths_valid = true; + List *startup_subpaths = NIL; + bool startup_subpaths_valid = true; List *partial_subpaths = NIL; List *pa_partial_subpaths = NIL; List *pa_nonpartial_subpaths = NIL; @@ -1346,6 +1348,20 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, else subpaths_valid = false; + /* + * When the planner is considering cheap startup plans, we'll also + * collect all the cheapest_startup_paths and build an AppendPath + * containing those as subpaths. + */ + if (rel->consider_startup && childrel->pathlist != NIL && + childrel->cheapest_startup_path->param_info == NULL) + accumulate_append_subpath(childrel->cheapest_startup_path, + &startup_subpaths, + NULL); + else + startup_subpaths_valid = false; + + /* Same idea, but for a partial plan. */ if (childrel->partial_pathlist != NIL) { @@ -1478,6 +1494,11 @@ add_paths_to_append_rel(PlannerInfo *root, RelOptInfo *rel, NIL, NULL, 0, false, -1)); + /* build an AppendPath for the cheap startup paths, if valid */ + if (startup_subpaths_valid) + add_path(rel, (Path *) create_append_path(root, rel, startup_subpaths, + NIL, NIL, NULL, 0, false, -1)); + /* * Consider an append of unordered, unparameterized partial paths. Make * it parallel-aware if possible. diff --git a/src/test/regress/expected/union.out b/src/test/regress/expected/union.out index e2613d6777..f046e522de 100644 --- a/src/test/regress/expected/union.out +++ b/src/test/regress/expected/union.out @@ -1432,3 +1432,24 @@ where (x = 0) or (q1 >= q2 and q1 <= q2); 4567890123456789 | 4567890123456789 | 1 (6 rows) +-- +-- Test the planner's ability to produce cheap startup plans with Append nodes +-- +-- Ensure we get a Nested Loop join between tenk1 and tenk2 +explain (costs off) +select t1.unique1 from tenk1 t1 +inner join tenk2 t2 on t1.tenthous = t2.tenthous + union all +(values(1)) limit 1; + QUERY PLAN +-------------------------------------------------------- + Limit + -> Append + -> Nested Loop + Join Filter: (t1.tenthous = t2.tenthous) + -> Seq Scan on tenk1 t1 + -> Materialize + -> Seq Scan on tenk2 t2 + -> Result +(8 rows) + diff --git a/src/test/regress/sql/union.sql b/src/test/regress/sql/union.sql index ca8c9b4d12..d65ca9f86d 100644 --- a/src/test/regress/sql/union.sql +++ b/src/test/regress/sql/union.sql @@ -540,3 +540,14 @@ select * from union all select *, 1 as x from int8_tbl b) ss where (x = 0) or (q1 >= q2 and q1 <= q2); + +-- +-- Test the planner's ability to produce cheap startup plans with Append nodes +-- + +-- Ensure we get a Nested Loop join between tenk1 and tenk2 +explain (costs off) +select t1.unique1 from tenk1 t1 +inner join tenk2 t2 on t1.tenthous = t2.tenthous + union all +(values(1)) limit 1; \ No newline at end of file ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2023-10-05 01:11 Andy Fan <[email protected]> parent: David Rowley <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: Andy Fan @ 2023-10-05 01:11 UTC (permalink / raw) To: David Rowley <[email protected]>; +Cc: pgsql-hackers; Zhang Mingli <[email protected]> On Wed, Oct 4, 2023 at 8:41 AM David Rowley <[email protected]> wrote: > On Sun, 1 Oct 2023 at 21:26, Andy Fan <[email protected]> wrote: > >> But overall, I'm more inclined to just go with the more simple "add a > >> cheap unordered startup append path if considering cheap startup > >> plans" version. I see your latest patch does both. So, I'd suggest two > >> patches as I do see the merit in keeping this simple and cheap. If we > >> can get the first part in and you still find cases where you're not > >> getting the most appropriate startup plan based on the tuple fraction, > >> then we can reconsider what extra complexity we should endure in the > >> code based on the example query where we've demonstrated the planner > >> is not choosing the best startup path appropriate to the given tuple > >> fraction. > > > > I think this is a fair point, I agree that your first part is good > enough to be > > committed first. Actually I tried a lot to make a test case which can > prove > > the value of cheapest fractional cost but no gain so far:( > > I've attached a patch with the same code as the previous patch but > this time including a regression test. > > I see no reason to not commit this so if anyone feels differently > please let me know. > > David > Patch LGTM. -- Best Regards Andy Fan ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2023-10-05 08:04 David Rowley <[email protected]> parent: Andy Fan <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: David Rowley @ 2023-10-05 08:04 UTC (permalink / raw) To: Andy Fan <[email protected]>; +Cc: pgsql-hackers; Zhang Mingli <[email protected]> On Thu, 5 Oct 2023 at 14:11, Andy Fan <[email protected]> wrote: > Patch LGTM. Thanks. Pushed. David ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2024-02-14 00:21 Thomas Munro <[email protected]> parent: David Rowley <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: Thomas Munro @ 2024-02-14 00:21 UTC (permalink / raw) To: David Rowley <[email protected]>; +Cc: Andy Fan <[email protected]>; pgsql-hackers; Zhang Mingli <[email protected]> On Thu, Oct 5, 2023 at 9:07 PM David Rowley <[email protected]> wrote: > Thanks. Pushed. FYI somehow this plan from a8a968a8212e flipped in this run: === dumping /home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/regression.diffs === diff -U3 /home/bf/bf-build/mylodon/HEAD/pgsql/src/test/regress/expected/union.out /home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/results/union.out --- /home/bf/bf-build/mylodon/HEAD/pgsql/src/test/regress/expected/union.out 2024-01-15 00:31:13.947555940 +0000 +++ /home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/results/union.out 2024-02-14 00:06:17.075584839 +0000 @@ -1447,9 +1447,9 @@ -> Append -> Nested Loop Join Filter: (t1.tenthous = t2.tenthous) - -> Seq Scan on tenk1 t1 + -> Seq Scan on tenk2 t2 -> Materialize - -> Seq Scan on tenk2 t2 + -> Seq Scan on tenk1 t1 -> Result (8 rows) https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=mylodon&dt=2024-02-14%2000%3A01%3A03 ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2024-02-15 03:16 Andy Fan <[email protected]> parent: Thomas Munro <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: Andy Fan @ 2024-02-15 03:16 UTC (permalink / raw) To: Thomas Munro <[email protected]>; +Cc: David Rowley <[email protected]>; Andy Fan <[email protected]>; pgsql-hackers; Zhang Mingli <[email protected]>; [email protected] Thomas Munro <[email protected]> writes: > On Thu, Oct 5, 2023 at 9:07 PM David Rowley <[email protected]> wrote: >> Thanks. Pushed. > > FYI somehow this plan from a8a968a8212e flipped in this run: > > === dumping /home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/regression.diffs > === > diff -U3 /home/bf/bf-build/mylodon/HEAD/pgsql/src/test/regress/expected/union.out > /home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/results/union.out > --- /home/bf/bf-build/mylodon/HEAD/pgsql/src/test/regress/expected/union.out > 2024-01-15 00:31:13.947555940 +0000 > +++ /home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/results/union.out > 2024-02-14 00:06:17.075584839 +0000 > @@ -1447,9 +1447,9 @@ > -> Append > -> Nested Loop > Join Filter: (t1.tenthous = t2.tenthous) > - -> Seq Scan on tenk1 t1 > + -> Seq Scan on tenk2 t2 > -> Materialize > - -> Seq Scan on tenk2 t2 > + -> Seq Scan on tenk1 t1 > -> Result > (8 rows) > > https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=mylodon&dt=2024-02-14%2000%3A01%3A03 Thanks for this information! I will take a look at this. -- Best Regards Andy Fan ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2024-02-15 08:38 Andy Fan <[email protected]> parent: Andy Fan <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: Andy Fan @ 2024-02-15 08:38 UTC (permalink / raw) To: Andy Fan <[email protected]>; +Cc: Thomas Munro <[email protected]>; David Rowley <[email protected]>; Andy Fan <[email protected]>; pgsql-hackers; Zhang Mingli <[email protected]>; [email protected] Andy Fan <[email protected]> writes: > Thomas Munro <[email protected]> writes: > >> On Thu, Oct 5, 2023 at 9:07 PM David Rowley <[email protected]> wrote: >>> Thanks. Pushed. >> >> FYI somehow this plan from a8a968a8212e flipped in this run: >> >> === dumping /home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/regression.diffs >> === >> diff -U3 /home/bf/bf-build/mylodon/HEAD/pgsql/src/test/regress/expected/union.out >> /home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/results/union.out >> --- /home/bf/bf-build/mylodon/HEAD/pgsql/src/test/regress/expected/union.out >> 2024-01-15 00:31:13.947555940 +0000 >> +++ /home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/results/union.out >> 2024-02-14 00:06:17.075584839 +0000 >> @@ -1447,9 +1447,9 @@ >> -> Append >> -> Nested Loop >> Join Filter: (t1.tenthous = t2.tenthous) >> - -> Seq Scan on tenk1 t1 >> + -> Seq Scan on tenk2 t2 >> -> Materialize >> - -> Seq Scan on tenk2 t2 >> + -> Seq Scan on tenk1 t1 >> -> Result >> (8 rows) >> >> https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=mylodon&dt=2024-02-14%2000%3A01%3A03 > > Thanks for this information! I will take a look at this. I found the both plans have the same cost, I can't get the accurate cause of this after some hours research, but it is pretty similar with 7516056c584e3, so I uses a similar strategy to stable it. is it acceptable? -- Best Regards Andy Fan Attachments: [text/x-diff] v1-0001-Attempt-to-stabilize-new-unionall-limit-regressio.patch (2.7K, ../../[email protected]/2-v1-0001-Attempt-to-stabilize-new-unionall-limit-regressio.patch) download | inline diff: From 01c2b5ae76a4493f33b894afdd4a8d3ce31e1a3e Mon Sep 17 00:00:00 2001 From: "yizhi.fzh" <[email protected]> Date: Thu, 15 Feb 2024 16:29:30 +0800 Subject: [PATCH v1 1/1] Attempt to stabilize new unionall + limit regression test This test was recently added in a8a968a8212e, and some times It appears to be unstable in regards to the join order presumably due to the relations at either side of the join being equal in side. Here we add a qual to make one of them smaller so the planner is more likely to choose to material the smaller of the two. Reported-by: Thomas Munro Author: Andy Fan Discussion: https://postgr.es/m/CA%2BhUKGLqC-NobKYfjxNM3Gexv9OJ-Fhvy9bugUcXsZjTqH7W%3DQ%40mail.gmail.com#88e6420b59a863403b9b67a0128fdacc --- src/test/regress/expected/union.out | 11 ++++++----- src/test/regress/sql/union.sql | 4 ++-- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/test/regress/expected/union.out b/src/test/regress/expected/union.out index 73e320bad4..0e527b65b3 100644 --- a/src/test/regress/expected/union.out +++ b/src/test/regress/expected/union.out @@ -1438,8 +1438,8 @@ where (x = 0) or (q1 >= q2 and q1 <= q2); -- Ensure we get a Nested Loop join between tenk1 and tenk2 explain (costs off) select t1.unique1 from tenk1 t1 -inner join tenk2 t2 on t1.tenthous = t2.tenthous - union all +inner join tenk2 t2 on t1.tenthous = t2.tenthous and t1.ten > 5 +union all (values(1)) limit 1; QUERY PLAN -------------------------------------------------------- @@ -1447,11 +1447,12 @@ inner join tenk2 t2 on t1.tenthous = t2.tenthous -> Append -> Nested Loop Join Filter: (t1.tenthous = t2.tenthous) - -> Seq Scan on tenk1 t1 + -> Seq Scan on tenk2 t2 -> Materialize - -> Seq Scan on tenk2 t2 + -> Seq Scan on tenk1 t1 + Filter: (ten > 5) -> Result -(8 rows) +(9 rows) -- Ensure there is no problem if cheapest_startup_path is NULL explain (costs off) diff --git a/src/test/regress/sql/union.sql b/src/test/regress/sql/union.sql index 6c509ac80c..13ba9f21ad 100644 --- a/src/test/regress/sql/union.sql +++ b/src/test/regress/sql/union.sql @@ -548,8 +548,8 @@ where (x = 0) or (q1 >= q2 and q1 <= q2); -- Ensure we get a Nested Loop join between tenk1 and tenk2 explain (costs off) select t1.unique1 from tenk1 t1 -inner join tenk2 t2 on t1.tenthous = t2.tenthous - union all +inner join tenk2 t2 on t1.tenthous = t2.tenthous and t1.ten > 5 +union all (values(1)) limit 1; -- Ensure there is no problem if cheapest_startup_path is NULL -- 2.34.1 ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2024-02-15 12:09 David Rowley <[email protected]> parent: Andy Fan <[email protected]> 0 siblings, 1 reply; 143+ messages in thread From: David Rowley @ 2024-02-15 12:09 UTC (permalink / raw) To: Andy Fan <[email protected]>; +Cc: Thomas Munro <[email protected]>; Andy Fan <[email protected]>; pgsql-hackers; Zhang Mingli <[email protected]>; [email protected] On Thu, 15 Feb 2024 at 21:42, Andy Fan <[email protected]> wrote: > I found the both plans have the same cost, I can't get the accurate > cause of this after some hours research, but it is pretty similar with > 7516056c584e3, so I uses a similar strategy to stable it. is it > acceptable? It's pretty hard to say. I can only guess why this test would be flapping like this. I see it's happened before on mylodon, so probably not a cosmic ray. It's not like add_path() chooses a random path when the costs are the same, so I wondered if something similar is going on here that was going on that led to f03a9ca4. In particular, see [1]. On master, I set a breakpoint in try_nestloop_path() to break on "outerrel->relid==1 && innerrel->relid==2". I see the total Nested Loop cost comes out the same with the join order reversed. Which is: -> Nested Loop (cost=0.00..1500915.00 rows=10000 width=4) Doing the same with your patch applied, I get: -> Nested Loop (cost=0.00..600925.00 rows=4000 width=4) and forcing the join order to swap with the debugger, I see: -> Nested Loop (cost=0.00..600940.00 rows=4000 width=4) So there's a difference now, but it's quite small. If it was a problem like we had on [1], then since tenk1 and tenk2 have 345 pages (on my machine), if relpages is down 1 or 2 pages, we'll likely get more of a costing difference than 600925 vs 600940. If I use: explain select t1.unique1 from tenk1 t1 inner join tenk2 t2 on t1.tenthous = t2.tenthous and t2.thousand = 0 union all (values(1)) limit 1; I get: -> Nested Loop (cost=0.00..2415.03 rows=10 width=4) and with the join order reversed, I get: -> Nested Loop (cost=0.00..2440.00 rows=10 width=4) I'd be more happy using this one as percentage-wise, the cost difference is much larger. I don't quite have the will to go through proving what the actual problem is here. I think [1] already proved the relpages problem can (or could) happen. I checked that the t2.thounsand = 0 query still tests the cheap startup paths in add_paths_to_append_rel() and it does. If I flip startup_subpaths_valid to false in the debugger, the plan flips to: QUERY PLAN ----------------------------------------------------------------------------------- Limit (cost=470.12..514.00 rows=1 width=4) -> Append (cost=470.12..952.79 rows=11 width=4) -> Hash Join (cost=470.12..952.73 rows=10 width=4) Hash Cond: (t1.tenthous = t2.tenthous) -> Seq Scan on tenk1 t1 (cost=0.00..445.00 rows=10000 width=8) -> Hash (cost=470.00..470.00 rows=10 width=4) -> Seq Scan on tenk2 t2 (cost=0.00..470.00 rows=10 width=4) Filter: (thousand = 0) -> Result (cost=0.00..0.01 rows=1 width=4) So, if nobody has any better ideas, I'm just going to push the " and t2.thousand = 0" adjustment. David [1] https://www.postgresql.org/message-id/4174.1563239552%40sss.pgh.pa.us ^ permalink raw reply [nested|flat] 143+ messages in thread
* Re: make add_paths_to_append_rel aware of startup cost @ 2024-02-16 01:19 Andy Fan <[email protected]> parent: David Rowley <[email protected]> 0 siblings, 0 replies; 143+ messages in thread From: Andy Fan @ 2024-02-16 01:19 UTC (permalink / raw) To: David Rowley <[email protected]>; +Cc: Thomas Munro <[email protected]>; Andy Fan <[email protected]>; pgsql-hackers; Zhang Mingli <[email protected]>; [email protected] David Rowley <[email protected]> writes: > I'd be more happy using this one as percentage-wise, the cost > difference is much larger. +1 for the percentage-wise. > > I checked that the t2.thounsand = 0 query still tests the cheap > startup paths in add_paths_to_append_rel(). I get the same conclusion here. > > So, if nobody has any better ideas, I'm just going to push the " and > t2.thousand = 0" adjustment. LGTM. -- Best Regards Andy Fan ^ permalink raw reply [nested|flat] 143+ messages in thread
end of thread, other threads:[~2024-02-16 01:19 UTC | newest] Thread overview: 143+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v7 2/9] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 5/6] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v8 2/9] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v9 2/9] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/12] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/12] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 02/10] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH 1/8] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2021-03-08 06:32 [PATCH v1 1/2] Run 011_crash_recovery.pl with wal_level=minimal Kyotaro Horiguchi <[email protected]> 2023-09-06 12:39 make add_paths_to_append_rel aware of startup cost Andy Fan <[email protected]> 2023-09-13 12:20 ` Re: make add_paths_to_append_rel aware of startup cost Andy Fan <[email protected]> 2023-09-15 07:15 ` Re: make add_paths_to_append_rel aware of startup cost David Rowley <[email protected]> 2023-09-17 13:42 ` Re: make add_paths_to_append_rel aware of startup cost Andy Fan <[email protected]> 2023-09-18 03:58 ` Re: make add_paths_to_append_rel aware of startup cost David Rowley <[email protected]> 2023-09-18 06:38 ` Re: make add_paths_to_append_rel aware of startup cost Andy Fan <[email protected]> 2023-09-18 10:55 ` Re: make add_paths_to_append_rel aware of startup cost Andy Fan <[email protected]> 2023-09-27 08:03 ` Re: make add_paths_to_append_rel aware of startup cost David Rowley <[email protected]> 2023-10-01 08:26 ` Re: make add_paths_to_append_rel aware of startup cost Andy Fan <[email protected]> 2023-10-04 00:41 ` Re: make add_paths_to_append_rel aware of startup cost David Rowley <[email protected]> 2023-10-05 01:11 ` Re: make add_paths_to_append_rel aware of startup cost Andy Fan <[email protected]> 2023-10-05 08:04 ` Re: make add_paths_to_append_rel aware of startup cost David Rowley <[email protected]> 2024-02-14 00:21 ` Re: make add_paths_to_append_rel aware of startup cost Thomas Munro <[email protected]> 2024-02-15 03:16 ` Re: make add_paths_to_append_rel aware of startup cost Andy Fan <[email protected]> 2024-02-15 08:38 ` Re: make add_paths_to_append_rel aware of startup cost Andy Fan <[email protected]> 2024-02-15 12:09 ` Re: make add_paths_to_append_rel aware of startup cost David Rowley <[email protected]> 2024-02-16 01:19 ` Re: make add_paths_to_append_rel aware of startup cost Andy Fan <[email protected]>
This inbox is served by agora; see mirroring instructions for how to clone and mirror all data and code used for this inbox