8000 Add test case for bug #8410. · sqlparser/postgres@ce58aad · GitHub
[go: up one dir, main page]

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit ce58aad

Browse files
committed
Add test case for bug #8410.
Per Andres Freund.
1 parent 16e8e36 commit ce58aad

File tree

2 files changed

+61
-0
lines changed

2 files changed

+61
-0
lines changed

src/test/regress/expected/inherit.out

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1350,6 +1350,47 @@ ORDER BY x, y;
13501350
-> Index Only Scan using tenk1_unique2 on tenk1 b
13511351
(6 rows)
13521352

1353+
-- exercise rescan code path via a repeatedly-evaluated subquery
1354+
explain (costs off)
1355+
SELECT
1356+
(SELECT g.i FROM (
1357+
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
1358+
UNION ALL
1359+
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
1360+
) f(i)
1361+
ORDER BY f.i LIMIT 1)
1362+
FROM generate_series(1, 3) g(i);
1363+
QUERY PLAN
1364+
------------------------------------------------------------------------------------
1365+
Function Scan on generate_series g
1366+
SubPlan 1
1367+
-> Limit
1368+
-> Result
1369+
-> Merge Append
1370+
Sort Key: generate_series.generate_series
1371+
-> Sort
1372+
Sort Key: generate_series.generate_series
1373+
-> Function Scan on generate_series
1374+
-> Sort
1375+
Sort Key: generate_series_1.generate_series
1376+
-> Function Scan on generate_series generate_series_1
1377+
(12 rows)
1378+
1379+
SELECT
1380+
(SELECT g.i FROM (
1381+
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
1382+
UNION ALL
1383+
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
1384+
) f(i)
1385+
ORDER BY f.i LIMIT 1)
1386+
FROM generate_series(1, 3) g(i);
1387+
i
1388+
---
1389+
1
1390+
2
1391+
3
1392+
(3 rows)
1393+
13531394
reset enable_seqscan;
13541395
reset enable_indexscan;
13551396
reset enable_bitmapscan;

src/test/regress/sql/inherit.sql

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -439,6 +439,26 @@ SELECT x, y FROM
439439
SELECT unique2 AS x, unique2 AS y FROM tenk1 b) s
440440
ORDER BY x, y;
441441

442+
-- exercise rescan code path via a repeatedly-evaluated subquery
443+
explain (costs off)
444+
SELECT
445+
(SELECT g.i FROM (
446+
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
447+
UNION ALL
448+
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
449+
) f(i)
450+
ORDER BY f.i LIMIT 1)
451+
FROM generate_series(1, 3) g(i);
452+
453+
SELECT
454+
(SELECT g.i FROM (
455+
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
456+
UNION ALL
457+
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
458+
) f(i)
459+
ORDER BY f.i LIMIT 1)
460+
FROM generate_series(1, 3) g(i);
461+
442462
reset enable_seqscan;
443463
reset enable_indexscan;
444464
reset enable_bitmapscan;

0 commit comments

Comments
 (0)
0