mirror of
https://github.com/postgres/postgres.git
synced 2025-06-11 20:28:21 +03:00
Revert b6002a796
This removes "Add Result Cache executor node". It seems that something weird is going on with the tracking of cache hits and misses as highlighted by many buildfarm animals. It's not yet clear what the problem is as other parts of the plan indicate that the cache did work correctly, it's just the hits and misses that were being reported as 0. This is especially a bad time to have the buildfarm so broken, so reverting before too many more animals go red. Discussion: https://postgr.es/m/CAApHDvq_hydhfovm4=izgWs+C5HqEeRScjMbOgbpC-jRAeK3Yw@mail.gmail.com
This commit is contained in:
@ -1602,7 +1602,6 @@ SELECT t1.c1, t2.c2, t3.c3 FROM ft2 t1 LEFT JOIN ft2 t2 ON (t1.c1 = t2.c1) FULL
|
||||
20 | 0 | AAA020
|
||||
(10 rows)
|
||||
|
||||
SET enable_resultcache TO off;
|
||||
-- right outer join + left outer join
|
||||
EXPLAIN (VERBOSE, COSTS OFF)
|
||||
SELECT t1.c1, t2.c2, t3.c3 FROM ft2 t1 RIGHT JOIN ft2 t2 ON (t1.c1 = t2.c1) LEFT JOIN ft4 t3 ON (t2.c1 = t3.c1) OFFSET 10 LIMIT 10;
|
||||
@ -1629,7 +1628,6 @@ SELECT t1.c1, t2.c2, t3.c3 FROM ft2 t1 RIGHT JOIN ft2 t2 ON (t1.c1 = t2.c1) LEFT
|
||||
20 | 0 | AAA020
|
||||
(10 rows)
|
||||
|
||||
RESET enable_resultcache;
|
||||
-- left outer join + right outer join
|
||||
EXPLAIN (VERBOSE, COSTS OFF)
|
||||
SELECT t1.c1, t2.c2, t3.c3 FROM ft2 t1 LEFT JOIN ft2 t2 ON (t1.c1 = t2.c1) RIGHT JOIN ft4 t3 ON (t2.c1 = t3.c1) OFFSET 10 LIMIT 10;
|
||||
@ -2141,25 +2139,22 @@ SELECT t1c1, avg(t1c1 + t2c1) FROM (SELECT t1.c1, t2.c1 FROM ft1 t1 JOIN ft2 t2
|
||||
-- join with lateral reference
|
||||
EXPLAIN (VERBOSE, COSTS OFF)
|
||||
SELECT t1."C 1" FROM "S 1"."T 1" t1, LATERAL (SELECT DISTINCT t2.c1, t3.c1 FROM ft1 t2, ft2 t3 WHERE t2.c1 = t3.c1 AND t2.c2 = t1.c2) q ORDER BY t1."C 1" OFFSET 10 LIMIT 10;
|
||||
QUERY PLAN
|
||||
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
QUERY PLAN
|
||||
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
Limit
|
||||
Output: t1."C 1"
|
||||
-> Nested Loop
|
||||
Output: t1."C 1"
|
||||
-> Index Scan using t1_pkey on "S 1"."T 1" t1
|
||||
Output: t1."C 1", t1.c2, t1.c3, t1.c4, t1.c5, t1.c6, t1.c7, t1.c8
|
||||
-> Result Cache
|
||||
Cache Key: t1.c2
|
||||
-> Subquery Scan on q
|
||||
-> HashAggregate
|
||||
Output: t2.c1, t3.c1
|
||||
Group Key: t2.c1, t3.c1
|
||||
-> Foreign Scan
|
||||
Output: t2.c1, t3.c1
|
||||
Relations: (public.ft1 t2) INNER JOIN (public.ft2 t3)
|
||||
Remote SQL: SELECT r1."C 1", r2."C 1" FROM ("S 1"."T 1" r1 INNER JOIN "S 1"."T 1" r2 ON (((r1."C 1" = r2."C 1")) AND ((r1.c2 = $1::integer))))
|
||||
(16 rows)
|
||||
-> HashAggregate
|
||||
Output: t2.c1, t3.c1
|
||||
Group Key: t2.c1, t3.c1
|
||||
-> Foreign Scan
|
||||
Output: t2.c1, t3.c1
|
||||
Relations: (public.ft1 t2) INNER JOIN (public.ft2 t3)
|
||||
Remote SQL: SELECT r1."C 1", r2."C 1" FROM ("S 1"."T 1" r1 INNER JOIN "S 1"."T 1" r2 ON (((r1."C 1" = r2."C 1")) AND ((r1.c2 = $1::integer))))
|
||||
(13 rows)
|
||||
|
||||
SELECT t1."C 1" FROM "S 1"."T 1" t1, LATERAL (SELECT DISTINCT t2.c1, t3.c1 FROM ft1 t2, ft2 t3 WHERE t2.c1 = t3.c1 AND t2.c2 = t1.c2) q ORDER BY t1."C 1" OFFSET 10 LIMIT 10;
|
||||
C 1
|
||||
|
@ -502,12 +502,10 @@ SELECT t1.c1, t2.c2, t3.c3 FROM ft2 t1 FULL JOIN ft2 t2 ON (t1.c1 = t2.c1) LEFT
|
||||
EXPLAIN (VERBOSE, COSTS OFF)
|
||||
SELECT t1.c1, t2.c2, t3.c3 FROM ft2 t1 LEFT JOIN ft2 t2 ON (t1.c1 = t2.c1) FULL JOIN ft4 t3 ON (t2.c1 = t3.c1) OFFSET 10 LIMIT 10;
|
||||
SELECT t1.c1, t2.c2, t3.c3 FROM ft2 t1 LEFT JOIN ft2 t2 ON (t1.c1 = t2.c1) FULL JOIN ft4 t3 ON (t2.c1 = t3.c1) OFFSET 10 LIMIT 10;
|
||||
SET enable_resultcache TO off;
|
||||
-- right outer join + left outer join
|
||||
EXPLAIN (VERBOSE, COSTS OFF)
|
||||
SELECT t1.c1, t2.c2, t3.c3 FROM ft2 t1 RIGHT JOIN ft2 t2 ON (t1.c1 = t2.c1) LEFT JOIN ft4 t3 ON (t2.c1 = t3.c1) OFFSET 10 LIMIT 10;
|
||||
SELECT t1.c1, t2.c2, t3.c3 FROM ft2 t1 RIGHT JOIN ft2 t2 ON (t1.c1 = t2.c1) LEFT JOIN ft4 t3 ON (t2.c1 = t3.c1) OFFSET 10 LIMIT 10;
|
||||
RESET enable_resultcache;
|
||||
-- left outer join + right outer join
|
||||
EXPLAIN (VERBOSE, COSTS OFF)
|
||||
SELECT t1.c1, t2.c2, t3.c3 FROM ft2 t1 LEFT JOIN ft2 t2 ON (t1.c1 = t2.c1) RIGHT JOIN ft4 t3 ON (t2.c1 = t3.c1) OFFSET 10 LIMIT 10;
|
||||
|
Reference in New Issue
Block a user