2 SET pg_hint_plan.enable_hint TO on;
3 SET pg_hint_plan.debug_print TO on;
4 SET client_min_messages TO LOG;
5 SET search_path TO public;
6 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
13 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
15 ------------------------------
16 Index Scan using t1_i1 on t1
20 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
22 ---------------------------------
23 Bitmap Heap Scan on t1
24 Recheck Cond: (c3 < 10)
25 -> Bitmap Index Scan on t1_i
29 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
31 -----------------------------------
33 TID Cond: (ctid = '(1,1)'::tid)
38 ---- No. S-1-1 specified pattern of the object name
42 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
58 EXPLAIN (COSTS false) SELECT * FROM s1.t1 t_1 WHERE t_1.c1 = 1;
67 ----------------------------------
68 Index Scan using t1_i1 on t1 t_1
74 EXPLAIN (COSTS false) SELECT * FROM s1.t1 t_1 WHERE t_1.c1 = 1;
89 ---- No. S-1-2 specified schema name in the hint option
93 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
109 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
118 ------------------------------
119 Index Scan using t1_i1 on t1
124 ---- No. S-1-3 table doesn't exist in the hint option
128 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
144 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
153 ------------------------------
154 Index Scan using t1_i1 on t1
159 ---- No. S-1-4 conflict table name
162 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = 1 AND t1.c1 = t2.c1;
164 ------------------------------------
166 -> Index Scan using t1_i1 on t1
173 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = 1 AND t1.c1 = t2.c1;
182 --------------------------
191 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s2.t1 WHERE s1.t1.c1 = 1 AND s1.t1.c1 = s2.t1.c1;
193 ------------------------------------
195 -> Index Scan using t1_i1 on t1
202 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s2.t1 WHERE s1.t1.c1 = 1 AND s1.t1.c1 = s2.t1.c1;
211 ------------------------------------------
213 -> Bitmap Heap Scan on t1
214 Recheck Cond: (c1 = 1)
215 -> Bitmap Index Scan on t1_i1
217 -> Bitmap Heap Scan on t1
218 Recheck Cond: (c1 = 1)
219 -> Bitmap Index Scan on t1_pkey
224 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s2.t1 s2t1 WHERE s1.t1.c1 = 1 AND s1.t1.c1 = s2t1.c1;
233 ----------------------------------------
235 -> Bitmap Heap Scan on t1
236 Recheck Cond: (c1 = 1)
237 -> Bitmap Index Scan on t1_i1
239 -> Seq Scan on t1 s2t1
243 /*+BitmapScan(s2t1)*/
244 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s2.t1 s2t1 WHERE s1.t1.c1 = 1 AND s1.t1.c1 = s2t1.c1;
253 ------------------------------------------
255 -> Index Scan using t1_i1 on t1
257 -> Bitmap Heap Scan on t1 s2t1
258 Recheck Cond: (c1 = 1)
259 -> Bitmap Index Scan on t1_pkey
264 EXPLAIN (COSTS false) SELECT (SELECT max(c1) FROM s1.t1 WHERE s1.t1.c1 = 1) FROM s1.t1 WHERE s1.t1.c1 = 1;
266 ---------------------------------------------------------------------
267 Index Scan using t1_i1 on t1
269 InitPlan 2 (returns $1)
271 InitPlan 1 (returns $0)
273 -> Index Scan using t1_i1 on t1
274 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
278 EXPLAIN (COSTS false) SELECT (SELECT max(c1) FROM s1.t1 WHERE s1.t1.c1 = 1) FROM s1.t1 WHERE s1.t1.c1 = 1;
287 ---------------------------------------------------------------------------
288 Bitmap Heap Scan on t1
289 Recheck Cond: (c1 = 1)
290 InitPlan 2 (returns $1)
292 InitPlan 1 (returns $0)
294 -> Bitmap Heap Scan on t1
295 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = 1))
296 -> Bitmap Index Scan on t1_i1
297 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
298 -> Bitmap Index Scan on t1_i1
303 EXPLAIN (COSTS false) SELECT (SELECT max(c1) FROM s1.t1 t11 WHERE t11.c1 = 1) FROM s1.t1 t12 WHERE t12.c1 = 1;
312 ---------------------------------------------------------------------------
313 Index Scan using t1_i1 on t1 t12
315 InitPlan 2 (returns $1)
317 InitPlan 1 (returns $0)
319 -> Bitmap Heap Scan on t1 t11
320 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = 1))
321 -> Bitmap Index Scan on t1_i1
322 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
326 EXPLAIN (COSTS false) SELECT (SELECT max(c1) FROM s1.t1 t11 WHERE t11.c1 = 1) FROM s1.t1 t12 WHERE t12.c1 = 1;
335 ---------------------------------------------------------------------
336 Bitmap Heap Scan on t1 t12
337 Recheck Cond: (c1 = 1)
338 InitPlan 2 (returns $1)
340 InitPlan 1 (returns $0)
342 -> Index Scan using t1_i1 on t1 t11
343 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
344 -> Bitmap Index Scan on t1_i1
349 ---- No. S-1-5 object type for the hint
353 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
368 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE p1.c1 = 1;
370 ---------------------------------
375 -> Seq Scan on p1c1 p1
380 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE p1.c1 = 1;
389 ------------------------------------------------
392 -> Index Scan using p1_i on p1
394 -> Index Scan using p1c1_i on p1c1 p1
399 EXPLAIN (COSTS false) SELECT * FROM s1.ul1 WHERE ul1.c1 = 1;
401 ----------------------------------
402 Index Scan using ul1_pkey on ul1
407 EXPLAIN (COSTS false) SELECT * FROM s1.ul1 WHERE ul1.c1 = 1;
422 CREATE TEMP TABLE tm1 (LIKE s1.t1 INCLUDING ALL);
423 NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "tm1_pkey" for table "tm1"
424 EXPLAIN (COSTS false) SELECT * FROM tm1 WHERE tm1.c1 = 1;
426 ----------------------------------
427 Index Scan using tm1_pkey on tm1
432 EXPLAIN (COSTS false) SELECT * FROM tm1 WHERE tm1.c1 = 1;
447 EXPLAIN (COSTS false) SELECT * FROM pg_catalog.pg_class WHERE oid = 1;
449 -------------------------------------------------
450 Index Scan using pg_class_oid_index on pg_class
451 Index Cond: (oid = 1::oid)
454 /*+SeqScan(pg_class)*/
455 EXPLAIN (COSTS false) SELECT * FROM pg_catalog.pg_class WHERE oid = 1;
464 --------------------------
466 Filter: (oid = 1::oid)
472 EXPLAIN (COSTS false) SELECT * FROM s1.f1() AS ft1 WHERE ft1.c1 = 1;
474 -------------------------
475 Function Scan on f1 ft1
480 EXPLAIN (COSTS false) SELECT * FROM s1.f1() AS ft1 WHERE ft1.c1 = 1;
489 -------------------------
490 Function Scan on f1 ft1
495 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1'), (2,2,2,'2'), (3,3,3,'3')) AS val1 (c1, c2, c3, c4) WHERE val1.c1 = 1;
497 ---------------------------
498 Values Scan on "*VALUES*"
499 Filter: (column1 = 1)
503 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1'), (2,2,2,'2'), (3,3,3,'3')) AS val1 (c1, c2, c3, c4) WHERE val1.c1 = 1;
512 ---------------------------
513 Values Scan on "*VALUES*"
514 Filter: (column1 = 1)
517 /*+SeqScan(*VALUES*)*/
518 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1'), (2,2,2,'2'), (3,3,3,'3')) AS val1 (c1, c2, c3, c4) WHERE val1.c1 = 1;
527 ---------------------------
528 Values Scan on "*VALUES*"
529 Filter: (column1 = 1)
533 EXPLAIN (COSTS false) WITH c1(c1) AS (SELECT max(c1) FROM s1.t1 WHERE t1.c1 = 1)
534 SELECT * FROM s1.t1, c1 WHERE t1.c1 = 1 AND t1.c1 = c1.c1;
536 ---------------------------------------------------------------------
540 InitPlan 1 (returns $0)
542 -> Index Scan using t1_i1 on t1
543 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
544 -> Index Scan using t1_i1 on t1
551 EXPLAIN (COSTS false) WITH c1(c1) AS (SELECT max(c1) FROM s1.t1 WHERE t1.c1 = 1)
552 SELECT * FROM s1.t1, c1 WHERE t1.c1 = 1 AND t1.c1 = c1.c1;
561 ---------------------------------------------------------------------
565 InitPlan 1 (returns $0)
567 -> Index Scan using t1_i1 on t1
568 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
569 -> Index Scan using t1_i1 on t1
576 EXPLAIN (COSTS false) SELECT * FROM s1.v1 WHERE v1.c1 = 1;
578 -----------------------------------
579 Index Scan using t1_i1 on t1 v1t1
584 EXPLAIN (COSTS false) SELECT * FROM s1.v1 WHERE v1.c1 = 1;
593 -----------------------------------
594 Index Scan using t1_i1 on t1 v1t1
599 EXPLAIN (COSTS false) SELECT * FROM (SELECT * FROM s1.t1 WHERE t1.c1 = 1) AS s1 WHERE s1.c1 = 1;
601 ------------------------------
602 Index Scan using t1_i1 on t1
607 EXPLAIN (COSTS false) SELECT * FROM (SELECT * FROM s1.t1 WHERE t1.c1 = 1) AS s1 WHERE s1.c1 = 1;
616 ------------------------------
617 Index Scan using t1_i1 on t1
622 ---- No. S-2-1 complexity query block
625 EXPLAIN (COSTS false)
626 SELECT max(bmt1.c1), (
627 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
629 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
632 -------------------------------------------------------------------
634 InitPlan 1 (returns $0)
637 Merge Cond: (b1t1.c1 = b1t2.c1)
639 Merge Cond: (b1t1.c1 = b1t4.c1)
641 Merge Cond: (b1t1.c1 = b1t3.c1)
642 -> Index Scan using t1_i1 on t1 b1t1
643 -> Index Scan using t3_i1 on t3 b1t3
644 -> Index Scan using t4_i1 on t4 b1t4
647 -> Seq Scan on t2 b1t2
649 Merge Cond: (bmt1.c1 = bmt2.c1)
651 Merge Cond: (bmt1.c1 = bmt4.c1)
653 Merge Cond: (bmt1.c1 = bmt3.c1)
654 -> Index Scan using t1_i1 on t1 bmt1
655 -> Index Scan using t3_i1 on t3 bmt3
656 -> Index Scan using t4_i1 on t4 bmt4
659 -> Seq Scan on t2 bmt2
662 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
663 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
665 EXPLAIN (COSTS false)
666 SELECT max(bmt1.c1), (
667 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
669 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
671 LOG: available indexes for IndexScan(b1t3): t3_pkey
672 LOG: available indexes for BitmapScan(b1t4): t4_pkey
673 LOG: available indexes for IndexScan(bmt2): t2_pkey
674 LOG: available indexes for BitmapScan(bmt3): t3_pkey
679 IndexScan(b1t3 t3_pkey)
680 BitmapScan(b1t4 t4_pkey)
682 IndexScan(bmt2 t2_pkey)
683 BitmapScan(bmt3 t3_pkey)
690 -------------------------------------------------------------------------
692 InitPlan 1 (returns $1)
695 Merge Cond: (b1t1.c1 = b1t2.c1)
698 Merge Cond: (b1t1.c1 = b1t3.c1)
701 -> Seq Scan on t1 b1t1
702 -> Index Scan using t3_pkey on t3 b1t3
703 -> Bitmap Heap Scan on t4 b1t4
704 Recheck Cond: (c1 = b1t1.c1)
705 -> Bitmap Index Scan on t4_pkey
706 Index Cond: (c1 = b1t1.c1)
709 -> Seq Scan on t2 b1t2
711 Hash Cond: (bmt4.c1 = bmt1.c1)
712 -> Seq Scan on t4 bmt4
716 Hash Cond: (bmt1.c1 = bmt2.c1)
717 -> Seq Scan on t1 bmt1
719 -> Index Scan using t2_pkey on t2 bmt2
720 -> Bitmap Heap Scan on t3 bmt3
721 Recheck Cond: (c1 = bmt1.c1)
722 -> Bitmap Index Scan on t3_pkey
723 Index Cond: (c1 = bmt1.c1)
727 EXPLAIN (COSTS false)
728 SELECT max(bmt1.c1), (
729 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
731 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
733 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
736 -------------------------------------------------------------------
738 InitPlan 1 (returns $0)
741 Merge Cond: (b1t1.c1 = b1t2.c1)
743 Merge Cond: (b1t1.c1 = b1t4.c1)
745 Merge Cond: (b1t1.c1 = b1t3.c1)
746 -> Index Scan using t1_i1 on t1 b1t1
747 -> Index Scan using t3_i1 on t3 b1t3
748 -> Index Scan using t4_i1 on t4 b1t4
751 -> Seq Scan on t2 b1t2
752 InitPlan 2 (returns $1)
755 Merge Cond: (b2t1.c1 = b2t2.c1)
757 Merge Cond: (b2t1.c1 = b2t4.c1)
759 Merge Cond: (b2t1.c1 = b2t3.c1)
760 -> Index Scan using t1_i1 on t1 b2t1
761 -> Index Scan using t3_i1 on t3 b2t3
762 -> Index Scan using t4_i1 on t4 b2t4
765 -> Seq Scan on t2 b2t2
767 Merge Cond: (bmt1.c1 = bmt2.c1)
769 Merge Cond: (bmt1.c1 = bmt4.c1)
771 Merge Cond: (bmt1.c1 = bmt3.c1)
772 -> Index Scan using t1_i1 on t1 bmt1
773 -> Index Scan using t3_i1 on t3 bmt3
774 -> Index Scan using t4_i1 on t4 bmt4
777 -> Seq Scan on t2 bmt2
780 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
781 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
782 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
784 EXPLAIN (COSTS false)
785 SELECT max(bmt1.c1), (
786 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
788 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
790 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
792 LOG: available indexes for IndexScan(b1t3): t3_pkey
793 LOG: available indexes for BitmapScan(b1t4): t4_pkey
794 LOG: available indexes for BitmapScan(b2t1): t1_pkey
795 LOG: available indexes for IndexScan(b2t4): t4_pkey
796 LOG: available indexes for IndexScan(bmt2): t2_pkey
797 LOG: available indexes for BitmapScan(bmt3): t3_pkey
802 IndexScan(b1t3 t3_pkey)
803 BitmapScan(b1t4 t4_pkey)
804 BitmapScan(b2t1 t1_pkey)
807 IndexScan(b2t4 t4_pkey)
809 IndexScan(bmt2 t2_pkey)
810 BitmapScan(bmt3 t3_pkey)
817 ---------------------------------------------------------------------------
819 InitPlan 1 (returns $1)
822 Merge Cond: (b1t1.c1 = b1t2.c1)
825 Merge Cond: (b1t1.c1 = b1t3.c1)
828 -> Seq Scan on t1 b1t1
829 -> Index Scan using t3_pkey on t3 b1t3
830 -> Bitmap Heap Scan on t4 b1t4
831 Recheck Cond: (c1 = b1t1.c1)
832 -> Bitmap Index Scan on t4_pkey
833 Index Cond: (c1 = b1t1.c1)
836 -> Seq Scan on t2 b1t2
837 InitPlan 2 (returns $3)
840 Hash Cond: (b2t3.c1 = b2t1.c1)
841 -> Seq Scan on t3 b2t3
844 Merge Cond: (b2t1.c1 = b2t2.c1)
846 -> Index Scan using t4_pkey on t4 b2t4
847 -> Bitmap Heap Scan on t1 b2t1
848 Recheck Cond: (c1 = b2t4.c1)
849 -> Bitmap Index Scan on t1_pkey
850 Index Cond: (c1 = b2t4.c1)
853 -> Seq Scan on t2 b2t2
855 Hash Cond: (bmt4.c1 = bmt1.c1)
856 -> Seq Scan on t4 bmt4
860 Hash Cond: (bmt1.c1 = bmt2.c1)
861 -> Seq Scan on t1 bmt1
863 -> Index Scan using t2_pkey on t2 bmt2
864 -> Bitmap Heap Scan on t3 bmt3
865 Recheck Cond: (c1 = bmt1.c1)
866 -> Bitmap Index Scan on t3_pkey
867 Index Cond: (c1 = bmt1.c1)
871 EXPLAIN (COSTS false) SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, (SELECT * FROM s1.t4 bmt4) sbmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = sbmt4.c1;
873 -----------------------------------------------------------
876 Merge Cond: (bmt1.c1 = bmt2.c1)
878 Merge Cond: (bmt1.c1 = bmt4.c1)
880 Merge Cond: (bmt1.c1 = bmt3.c1)
881 -> Index Scan using t1_i1 on t1 bmt1
882 -> Index Scan using t3_i1 on t3 bmt3
883 -> Index Scan using t4_i1 on t4 bmt4
886 -> Seq Scan on t2 bmt2
889 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
891 EXPLAIN (COSTS false) SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, (SELECT * FROM s1.t4 bmt4) sbmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = sbmt4.c1;
892 LOG: available indexes for IndexScan(bmt2): t2_pkey
893 LOG: available indexes for BitmapScan(bmt3): t3_pkey
897 IndexScan(bmt2 t2_pkey)
898 BitmapScan(bmt3 t3_pkey)
905 -------------------------------------------------------------------------
908 Hash Cond: (bmt4.c1 = bmt1.c1)
909 -> Seq Scan on t4 bmt4
913 Hash Cond: (bmt1.c1 = bmt2.c1)
914 -> Seq Scan on t1 bmt1
916 -> Index Scan using t2_pkey on t2 bmt2
917 -> Bitmap Heap Scan on t3 bmt3
918 Recheck Cond: (c1 = bmt1.c1)
919 -> Bitmap Index Scan on t3_pkey
920 Index Cond: (c1 = bmt1.c1)
924 EXPLAIN (COSTS false) SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, (SELECT * FROM s1.t3 bmt3) sbmt3, (SELECT * FROM s1.t4 bmt4) sbmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = sbmt3.c1 AND bmt1.c1 = sbmt4.c1;
926 -----------------------------------------------------------
929 Merge Cond: (bmt1.c1 = bmt2.c1)
931 Merge Cond: (bmt1.c1 = bmt4.c1)
933 Merge Cond: (bmt1.c1 = bmt3.c1)
934 -> Index Scan using t1_i1 on t1 bmt1
935 -> Index Scan using t3_i1 on t3 bmt3
936 -> Index Scan using t4_i1 on t4 bmt4
939 -> Seq Scan on t2 bmt2
942 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
944 EXPLAIN (COSTS false) SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, (SELECT * FROM s1.t3 bmt3) sbmt3, (SELECT * FROM s1.t4 bmt4) sbmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = sbmt3.c1 AND bmt1.c1 = sbmt4.c1;
945 LOG: available indexes for IndexScan(bmt2): t2_pkey
946 LOG: available indexes for BitmapScan(bmt3): t3_pkey
950 IndexScan(bmt2 t2_pkey)
951 BitmapScan(bmt3 t3_pkey)
958 -------------------------------------------------------------------------
961 Hash Cond: (bmt4.c1 = bmt1.c1)
962 -> Seq Scan on t4 bmt4
966 Hash Cond: (bmt1.c1 = bmt2.c1)
967 -> Seq Scan on t1 bmt1
969 -> Index Scan using t2_pkey on t2 bmt2
970 -> Bitmap Heap Scan on t3 bmt3
971 Recheck Cond: (c1 = bmt1.c1)
972 -> Bitmap Index Scan on t3_pkey
973 Index Cond: (c1 = bmt1.c1)
977 EXPLAIN (COSTS false)
978 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
980 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
984 -------------------------------------------------------------------
986 InitPlan 1 (returns $0)
989 Merge Cond: (b1t1.c1 = b1t2.c1)
991 Merge Cond: (b1t1.c1 = b1t4.c1)
993 Merge Cond: (b1t1.c1 = b1t3.c1)
994 -> Index Scan using t1_i1 on t1 b1t1
995 -> Index Scan using t3_i1 on t3 b1t3
996 -> Index Scan using t4_i1 on t4 b1t4
999 -> Seq Scan on t2 b1t2
1001 Merge Cond: (bmt1.c1 = bmt2.c1)
1003 Merge Cond: (bmt1.c1 = bmt4.c1)
1005 Merge Cond: (bmt1.c1 = bmt3.c1)
1006 -> Index Scan using t1_i1 on t1 bmt1
1008 -> Index Scan using t3_i1 on t3 bmt3
1009 -> Index Scan using t4_i1 on t4 bmt4
1012 -> Seq Scan on t2 bmt2
1015 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1016 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1018 EXPLAIN (COSTS false)
1019 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1021 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1024 LOG: available indexes for IndexScan(b1t3): t3_pkey
1025 LOG: available indexes for BitmapScan(b1t4): t4_pkey
1026 LOG: available indexes for IndexScan(bmt2): t2_pkey
1027 LOG: available indexes for BitmapScan(bmt3): t3_pkey
1032 IndexScan(b1t3 t3_pkey)
1033 BitmapScan(b1t4 t4_pkey)
1035 IndexScan(bmt2 t2_pkey)
1036 BitmapScan(bmt3 t3_pkey)
1043 -------------------------------------------------------------------------
1045 InitPlan 1 (returns $1)
1048 Merge Cond: (b1t1.c1 = b1t2.c1)
1051 Merge Cond: (b1t1.c1 = b1t3.c1)
1054 -> Seq Scan on t1 b1t1
1055 -> Index Scan using t3_pkey on t3 b1t3
1056 -> Bitmap Heap Scan on t4 b1t4
1057 Recheck Cond: (c1 = b1t1.c1)
1058 -> Bitmap Index Scan on t4_pkey
1059 Index Cond: (c1 = b1t1.c1)
1062 -> Seq Scan on t2 b1t2
1064 Hash Cond: (bmt4.c1 = bmt1.c1)
1065 -> Seq Scan on t4 bmt4
1069 Hash Cond: (bmt1.c1 = bmt2.c1)
1070 -> Seq Scan on t1 bmt1
1073 -> Index Scan using t2_pkey on t2 bmt2
1074 -> Bitmap Heap Scan on t3 bmt3
1075 Recheck Cond: (c1 = bmt1.c1)
1076 -> Bitmap Index Scan on t3_pkey
1077 Index Cond: (c1 = bmt1.c1)
1081 EXPLAIN (COSTS false)
1082 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1084 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1086 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
1090 -------------------------------------------------------------------
1092 InitPlan 1 (returns $0)
1095 Merge Cond: (b1t1.c1 = b1t2.c1)
1097 Merge Cond: (b1t1.c1 = b1t4.c1)
1099 Merge Cond: (b1t1.c1 = b1t3.c1)
1100 -> Index Scan using t1_i1 on t1 b1t1
1101 -> Index Scan using t3_i1 on t3 b1t3
1102 -> Index Scan using t4_i1 on t4 b1t4
1105 -> Seq Scan on t2 b1t2
1106 InitPlan 2 (returns $1)
1109 Merge Cond: (b2t1.c1 = b2t2.c1)
1111 Merge Cond: (b2t1.c1 = b2t4.c1)
1113 Merge Cond: (b2t1.c1 = b2t3.c1)
1114 -> Index Scan using t1_i1 on t1 b2t1
1115 -> Index Scan using t3_i1 on t3 b2t3
1116 -> Index Scan using t4_i1 on t4 b2t4
1119 -> Seq Scan on t2 b2t2
1121 Merge Cond: (bmt1.c1 = bmt2.c1)
1123 Merge Cond: (bmt1.c1 = bmt4.c1)
1125 Merge Cond: (bmt1.c1 = bmt3.c1)
1126 -> Index Scan using t1_i1 on t1 bmt1
1127 Filter: ((c1 <> $0) AND (c1 <> $1))
1128 -> Index Scan using t3_i1 on t3 bmt3
1129 -> Index Scan using t4_i1 on t4 bmt4
1132 -> Seq Scan on t2 bmt2
1135 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1136 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1137 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
1139 EXPLAIN (COSTS false)
1140 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1142 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1144 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
1147 LOG: available indexes for IndexScan(b1t3): t3_pkey
1148 LOG: available indexes for BitmapScan(b1t4): t4_pkey
1149 LOG: available indexes for BitmapScan(b2t1): t1_pkey
1150 LOG: available indexes for IndexScan(b2t4): t4_pkey
1151 LOG: available indexes for IndexScan(bmt2): t2_pkey
1152 LOG: available indexes for BitmapScan(bmt3): t3_pkey
1157 IndexScan(b1t3 t3_pkey)
1158 BitmapScan(b1t4 t4_pkey)
1159 BitmapScan(b2t1 t1_pkey)
1162 IndexScan(b2t4 t4_pkey)
1164 IndexScan(bmt2 t2_pkey)
1165 BitmapScan(bmt3 t3_pkey)
1172 ---------------------------------------------------------------------------
1174 InitPlan 1 (returns $1)
1177 Merge Cond: (b1t1.c1 = b1t2.c1)
1180 Merge Cond: (b1t1.c1 = b1t3.c1)
1183 -> Seq Scan on t1 b1t1
1184 -> Index Scan using t3_pkey on t3 b1t3
1185 -> Bitmap Heap Scan on t4 b1t4
1186 Recheck Cond: (c1 = b1t1.c1)
1187 -> Bitmap Index Scan on t4_pkey
1188 Index Cond: (c1 = b1t1.c1)
1191 -> Seq Scan on t2 b1t2
1192 InitPlan 2 (returns $3)
1195 Hash Cond: (b2t3.c1 = b2t1.c1)
1196 -> Seq Scan on t3 b2t3
1199 Merge Cond: (b2t1.c1 = b2t2.c1)
1201 -> Index Scan using t4_pkey on t4 b2t4
1202 -> Bitmap Heap Scan on t1 b2t1
1203 Recheck Cond: (c1 = b2t4.c1)
1204 -> Bitmap Index Scan on t1_pkey
1205 Index Cond: (c1 = b2t4.c1)
1208 -> Seq Scan on t2 b2t2
1210 Hash Cond: (bmt4.c1 = bmt1.c1)
1211 -> Seq Scan on t4 bmt4
1215 Hash Cond: (bmt1.c1 = bmt2.c1)
1216 -> Seq Scan on t1 bmt1
1217 Filter: ((c1 <> $1) AND (c1 <> $3))
1219 -> Index Scan using t2_pkey on t2 bmt2
1220 -> Bitmap Heap Scan on t3 bmt3
1221 Recheck Cond: (c1 = bmt1.c1)
1222 -> Bitmap Index Scan on t3_pkey
1223 Index Cond: (c1 = bmt1.c1)
1227 EXPLAIN (COSTS false)
1229 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1231 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1233 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1237 -------------------------------------------------------------------
1242 Merge Cond: (b1t1.c1 = b1t2.c1)
1244 Merge Cond: (b1t1.c1 = b1t4.c1)
1246 Merge Cond: (b1t1.c1 = b1t3.c1)
1247 -> Index Scan using t1_i1 on t1 b1t1
1248 -> Index Scan using t3_i1 on t3 b1t3
1249 -> Index Scan using t4_i1 on t4 b1t4
1252 -> Seq Scan on t2 b1t2
1254 Merge Cond: (bmt1.c1 = bmt2.c1)
1256 Merge Cond: (bmt1.c1 = bmt4.c1)
1258 Merge Cond: (bmt1.c1 = bmt3.c1)
1259 -> Index Scan using t1_i1 on t1 bmt1
1260 -> Index Scan using t3_i1 on t3 bmt3
1261 -> Index Scan using t4_i1 on t4 bmt4
1265 Hash Cond: (bmt2.c1 = c1.c1)
1266 -> Seq Scan on t2 bmt2
1271 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1272 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1274 EXPLAIN (COSTS false)
1276 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1278 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1280 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1283 LOG: available indexes for IndexScan(b1t3): t3_pkey
1284 LOG: available indexes for BitmapScan(b1t4): t4_pkey
1285 LOG: available indexes for IndexScan(bmt2): t2_pkey
1286 LOG: available indexes for BitmapScan(bmt3): t3_pkey
1291 IndexScan(b1t3 t3_pkey)
1292 BitmapScan(b1t4 t4_pkey)
1294 IndexScan(bmt2 t2_pkey)
1295 BitmapScan(bmt3 t3_pkey)
1302 ---------------------------------------------------------------------
1307 Merge Cond: (b1t1.c1 = b1t2.c1)
1310 Merge Cond: (b1t1.c1 = b1t3.c1)
1313 -> Seq Scan on t1 b1t1
1314 -> Index Scan using t3_pkey on t3 b1t3
1315 -> Bitmap Heap Scan on t4 b1t4
1316 Recheck Cond: (c1 = b1t1.c1)
1317 -> Bitmap Index Scan on t4_pkey
1318 Index Cond: (c1 = b1t1.c1)
1321 -> Seq Scan on t2 b1t2
1323 Hash Cond: (bmt4.c1 = bmt1.c1)
1324 -> Seq Scan on t4 bmt4
1329 Hash Cond: (bmt1.c1 = c1.c1)
1330 -> Seq Scan on t1 bmt1
1333 -> Index Scan using t2_pkey on t2 bmt2
1334 Index Cond: (c1 = bmt1.c1)
1335 -> Bitmap Heap Scan on t3 bmt3
1336 Recheck Cond: (c1 = bmt1.c1)
1337 -> Bitmap Index Scan on t3_pkey
1338 Index Cond: (c1 = bmt1.c1)
1342 EXPLAIN (COSTS false)
1344 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1347 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
1349 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1351 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1356 -------------------------------------------------------------------
1361 Merge Cond: (b1t1.c1 = b1t2.c1)
1363 Merge Cond: (b1t1.c1 = b1t4.c1)
1365 Merge Cond: (b1t1.c1 = b1t3.c1)
1366 -> Index Scan using t1_i1 on t1 b1t1
1367 -> Index Scan using t3_i1 on t3 b1t3
1368 -> Index Scan using t4_i1 on t4 b1t4
1371 -> Seq Scan on t2 b1t2
1375 Merge Cond: (b2t1.c1 = b2t2.c1)
1377 Merge Cond: (b2t1.c1 = b2t4.c1)
1379 Merge Cond: (b2t1.c1 = b2t3.c1)
1380 -> Index Scan using t1_i1 on t1 b2t1
1381 -> Index Scan using t3_i1 on t3 b2t3
1382 -> Index Scan using t4_i1 on t4 b2t4
1385 -> Seq Scan on t2 b2t2
1387 Join Filter: (bmt1.c1 = c2.c1)
1389 Merge Cond: (bmt1.c1 = bmt2.c1)
1391 Merge Cond: (bmt1.c1 = bmt4.c1)
1393 Merge Cond: (bmt1.c1 = bmt3.c1)
1394 -> Index Scan using t1_i1 on t1 bmt1
1395 -> Index Scan using t3_i1 on t3 bmt3
1396 -> Index Scan using t4_i1 on t4 bmt4
1400 Hash Cond: (bmt2.c1 = c1.c1)
1401 -> Seq Scan on t2 bmt2
1407 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1408 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1409 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
1411 EXPLAIN (COSTS false)
1413 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1416 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
1418 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1420 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1424 LOG: available indexes for IndexScan(b1t3): t3_pkey
1425 LOG: available indexes for BitmapScan(b1t4): t4_pkey
1426 LOG: available indexes for BitmapScan(b2t1): t1_pkey
1427 LOG: available indexes for IndexScan(b2t4): t4_pkey
1428 LOG: available indexes for IndexScan(bmt2): t2_pkey
1429 LOG: available indexes for BitmapScan(bmt3): t3_pkey
1434 IndexScan(b1t3 t3_pkey)
1435 BitmapScan(b1t4 t4_pkey)
1436 BitmapScan(b2t1 t1_pkey)
1439 IndexScan(b2t4 t4_pkey)
1441 IndexScan(bmt2 t2_pkey)
1442 BitmapScan(bmt3 t3_pkey)
1449 ---------------------------------------------------------------------------
1454 Merge Cond: (b1t1.c1 = b1t2.c1)
1457 Merge Cond: (b1t1.c1 = b1t3.c1)
1460 -> Seq Scan on t1 b1t1
1461 -> Index Scan using t3_pkey on t3 b1t3
1462 -> Bitmap Heap Scan on t4 b1t4
1463 Recheck Cond: (c1 = b1t1.c1)
1464 -> Bitmap Index Scan on t4_pkey
1465 Index Cond: (c1 = b1t1.c1)
1468 -> Seq Scan on t2 b1t2
1472 Hash Cond: (b2t3.c1 = b2t1.c1)
1473 -> Seq Scan on t3 b2t3
1476 Merge Cond: (b2t1.c1 = b2t2.c1)
1478 -> Index Scan using t4_pkey on t4 b2t4
1479 -> Bitmap Heap Scan on t1 b2t1
1480 Recheck Cond: (c1 = b2t4.c1)
1481 -> Bitmap Index Scan on t1_pkey
1482 Index Cond: (c1 = b2t4.c1)
1485 -> Seq Scan on t2 b2t2
1487 Hash Cond: (bmt4.c1 = bmt1.c1)
1488 -> Seq Scan on t4 bmt4
1492 Join Filter: (bmt1.c1 = c2.c1)
1495 Hash Cond: (bmt1.c1 = c1.c1)
1496 -> Seq Scan on t1 bmt1
1499 -> Index Scan using t2_pkey on t2 bmt2
1500 Index Cond: (c1 = bmt1.c1)
1502 -> Bitmap Heap Scan on t3 bmt3
1503 Recheck Cond: (c1 = bmt1.c1)
1504 -> Bitmap Index Scan on t3_pkey
1505 Index Cond: (c1 = bmt1.c1)
1509 ---- No. S-2-2 the number of the tables per quiry block
1512 EXPLAIN (COSTS false)
1514 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = 1
1516 SELECT max(bmt1.c1), (
1517 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
1519 FROM s1.t1 bmt1, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = 1
1521 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = 1
1525 -----------------------------------------------------------------
1529 InitPlan 1 (returns $0)
1531 -> Tid Scan on t1 b1t1
1532 TID Cond: (ctid = '(1,1)'::tid)
1533 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1534 InitPlan 4 (returns $3)
1536 InitPlan 3 (returns $2)
1538 -> Tid Scan on t1 b2t1
1539 TID Cond: (ctid = '(1,1)'::tid)
1540 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1541 InitPlan 6 (returns $5)
1543 InitPlan 5 (returns $4)
1545 -> Tid Scan on t1 b3t1
1546 TID Cond: (ctid = '(1,1)'::tid)
1547 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1549 -> Tid Scan on t1 bmt1
1550 TID Cond: (ctid = '(1,1)'::tid)
1551 Filter: ((c1 <> $5) AND (c1 = 1))
1557 BitmapScan(b2t1 t1_pkey)
1558 IndexScan(b3t1 t1_pkey)
1560 EXPLAIN (COSTS false)
1562 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = 1
1564 SELECT max(bmt1.c1), (
1565 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
1567 FROM s1.t1 bmt1, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = 1
1569 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = 1
1572 LOG: available indexes for BitmapScan(b2t1): t1_pkey
1573 LOG: available indexes for BitmapScan(b2t1): t1_pkey
1574 LOG: available indexes for IndexScan(b3t1): t1_pkey
1575 LOG: available indexes for IndexScan(b3t1): t1_pkey
1579 BitmapScan(b2t1 t1_pkey)
1580 IndexScan(b3t1 t1_pkey)
1587 ---------------------------------------------------------------------------
1591 InitPlan 1 (returns $0)
1593 -> Tid Scan on t1 b1t1
1594 TID Cond: (ctid = '(1,1)'::tid)
1595 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1596 InitPlan 4 (returns $3)
1598 InitPlan 3 (returns $2)
1600 -> Bitmap Heap Scan on t1 b2t1
1601 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = 1))
1602 Filter: (ctid = '(1,1)'::tid)
1603 -> Bitmap Index Scan on t1_pkey
1604 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
1605 InitPlan 6 (returns $5)
1607 InitPlan 5 (returns $4)
1609 -> Index Scan using t1_pkey on t1 b3t1
1610 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
1611 Filter: (ctid = '(1,1)'::tid)
1613 -> Seq Scan on t1 bmt1
1614 Filter: ((c1 <> $5) AND (ctid = '(1,1)'::tid) AND (c1 = 1))
1619 EXPLAIN (COSTS false)
1621 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)'
1623 SELECT max(bmt1.c1), (
1624 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = b2t2.c1 AND b2t2.ctid = '(1,1)'
1626 FROM s1.t1 bmt1, s1.t2 bmt2, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)'
1628 SELECT max(b3t1.c1) FROM s1.t1 b3t1, s1.t2 b3t2 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = b3t2.c1 AND b3t2.ctid = '(1,1)'
1632 -------------------------------------------------------
1637 Join Filter: (b1t1.c1 = b1t2.c1)
1638 -> Tid Scan on t1 b1t1
1639 TID Cond: (ctid = '(1,1)'::tid)
1640 -> Seq Scan on t2 b1t2
1641 Filter: (ctid = '(1,1)'::tid)
1642 InitPlan 2 (returns $1)
1645 Join Filter: (b2t1.c1 = b2t2.c1)
1646 -> Tid Scan on t1 b2t1
1647 TID Cond: (ctid = '(1,1)'::tid)
1648 -> Seq Scan on t2 b2t2
1649 Filter: (ctid = '(1,1)'::tid)
1650 InitPlan 3 (returns $2)
1653 Join Filter: (b3t1.c1 = b3t2.c1)
1654 -> Tid Scan on t1 b3t1
1655 TID Cond: (ctid = '(1,1)'::tid)
1656 -> Seq Scan on t2 b3t2
1657 Filter: (ctid = '(1,1)'::tid)
1660 Join Filter: (bmt1.c1 = bmt2.c1)
1661 -> Tid Scan on t1 bmt1
1662 TID Cond: (ctid = '(1,1)'::tid)
1664 -> Seq Scan on t2 bmt2
1665 Filter: (ctid = '(1,1)'::tid)
1669 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)
1670 TidScan(b1t1)SeqScan(b1t2)
1671 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)
1672 IndexScan(b3t1 t1_pkey)BitmapScan(b3t2 t2_pkey)
1674 EXPLAIN (COSTS false)
1676 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)'
1678 SELECT max(bmt1.c1), (
1679 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = b2t2.c1 AND b2t2.ctid = '(1,1)'
1681 FROM s1.t1 bmt1, s1.t2 bmt2, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)'
1683 SELECT max(b3t1.c1) FROM s1.t1 b3t1, s1.t2 b3t2 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = b3t2.c1 AND b3t2.ctid = '(1,1)'
1686 LOG: available indexes for BitmapScan(b2t1): t1_pkey
1687 LOG: available indexes for IndexScan(b3t1): t1_pkey
1688 LOG: available indexes for BitmapScan(b3t2): t2_pkey
1689 LOG: available indexes for IndexScan(bmt2): t2_pkey
1694 BitmapScan(b2t1 t1_pkey)
1696 IndexScan(b3t1 t1_pkey)
1697 BitmapScan(b3t2 t2_pkey)
1699 IndexScan(bmt2 t2_pkey)
1705 --------------------------------------------------------------------
1710 Join Filter: (b1t1.c1 = b1t2.c1)
1711 -> Tid Scan on t1 b1t1
1712 TID Cond: (ctid = '(1,1)'::tid)
1713 -> Seq Scan on t2 b1t2
1714 Filter: (ctid = '(1,1)'::tid)
1715 InitPlan 2 (returns $2)
1718 -> Tid Scan on t2 b2t2
1719 TID Cond: (ctid = '(1,1)'::tid)
1720 -> Bitmap Heap Scan on t1 b2t1
1721 Recheck Cond: (c1 = b2t2.c1)
1722 Filter: (ctid = '(1,1)'::tid)
1723 -> Bitmap Index Scan on t1_pkey
1724 Index Cond: (c1 = b2t2.c1)
1725 InitPlan 3 (returns $4)
1728 -> Index Scan using t1_pkey on t1 b3t1
1729 Filter: (ctid = '(1,1)'::tid)
1730 -> Bitmap Heap Scan on t2 b3t2
1731 Recheck Cond: (c1 = b3t1.c1)
1732 Filter: (ctid = '(1,1)'::tid)
1733 -> Bitmap Index Scan on t2_pkey
1734 Index Cond: (c1 = b3t1.c1)
1737 -> Seq Scan on t1 bmt1
1738 Filter: ((c1 <> $4) AND (ctid = '(1,1)'::tid))
1739 -> Index Scan using t2_pkey on t2 bmt2
1740 Index Cond: (c1 = bmt1.c1)
1741 Filter: (ctid = '(1,1)'::tid)
1746 EXPLAIN (COSTS false)
1748 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)' AND b1t1.c1 = b1t3.c1 AND b1t3.ctid = '(1,1)' AND b1t1.c1 = b1t4.c1 AND b1t4.ctid = '(1,1)'
1750 SELECT max(bmt1.c1), (
1751 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = b2t2.c1 AND b2t2.ctid = '(1,1)' AND b2t1.c1 = b2t3.c1 AND b2t3.ctid = '(1,1)' AND b2t1.c1 = b2t4.c1 AND b2t4.ctid = '(1,1)'
1753 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)' AND bmt1.c1 = bmt3.c1 AND bmt3.ctid = '(1,1)' AND bmt1.c1 = bmt4.c1 AND bmt4.ctid = '(1,1)' AND bmt1.c1 = c1.c1
1755 SELECT max(b3t1.c1) FROM s1.t1 b3t1, s1.t2 b3t2, s1.t3 b3t3, s1.t4 b3t4 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = b3t2.c1 AND b3t2.ctid = '(1,1)' AND b3t1.c1 = b3t3.c1 AND b3t3.ctid = '(1,1)' AND b3t1.c1 = b3t4.c1 AND b3t4.ctid = '(1,1)'
1759 -------------------------------------------------------------------
1764 Join Filter: (b1t1.c1 = b1t4.c1)
1766 Join Filter: (b1t1.c1 = b1t3.c1)
1768 Join Filter: (b1t1.c1 = b1t2.c1)
1769 -> Tid Scan on t1 b1t1
1770 TID Cond: (ctid = '(1,1)'::tid)
1771 -> Seq Scan on t2 b1t2
1772 Filter: (ctid = '(1,1)'::tid)
1773 -> Tid Scan on t3 b1t3
1774 TID Cond: (ctid = '(1,1)'::tid)
1775 -> Tid Scan on t4 b1t4
1776 TID Cond: (ctid = '(1,1)'::tid)
1777 InitPlan 2 (returns $1)
1780 Join Filter: (b2t1.c1 = b2t4.c1)
1782 Join Filter: (b2t1.c1 = b2t3.c1)
1784 Join Filter: (b2t1.c1 = b2t2.c1)
1785 -> Tid Scan on t1 b2t1
1786 TID Cond: (ctid = '(1,1)'::tid)
1787 -> Seq Scan on t2 b2t2
1788 Filter: (ctid = '(1,1)'::tid)
1789 -> Tid Scan on t3 b2t3
1790 TID Cond: (ctid = '(1,1)'::tid)
1791 -> Tid Scan on t4 b2t4
1792 TID Cond: (ctid = '(1,1)'::tid)
1793 InitPlan 3 (returns $2)
1796 Join Filter: (b3t1.c1 = b3t4.c1)
1798 Join Filter: (b3t1.c1 = b3t3.c1)
1800 Join Filter: (b3t1.c1 = b3t2.c1)
1801 -> Tid Scan on t1 b3t1
1802 TID Cond: (ctid = '(1,1)'::tid)
1803 -> Seq Scan on t2 b3t2
1804 Filter: (ctid = '(1,1)'::tid)
1805 -> Tid Scan on t3 b3t3
1806 TID Cond: (ctid = '(1,1)'::tid)
1807 -> Tid Scan on t4 b3t4
1808 TID Cond: (ctid = '(1,1)'::tid)
1810 Join Filter: (bmt1.c1 = c1.c1)
1812 Join Filter: (bmt1.c1 = bmt2.c1)
1814 Join Filter: (bmt3.c1 = bmt1.c1)
1816 Join Filter: (bmt3.c1 = bmt4.c1)
1817 -> Tid Scan on t3 bmt3
1818 TID Cond: (ctid = '(1,1)'::tid)
1819 -> Tid Scan on t4 bmt4
1820 TID Cond: (ctid = '(1,1)'::tid)
1821 -> Tid Scan on t1 bmt1
1822 TID Cond: (ctid = '(1,1)'::tid)
1824 -> Seq Scan on t2 bmt2
1825 Filter: (ctid = '(1,1)'::tid)
1829 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1830 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1831 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
1832 IndexScan(b3t1 t1_pkey)BitmapScan(b3t2 t2_pkey)TidScan(b3t3)SeqScan(b3t4)
1834 EXPLAIN (COSTS false)
1836 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)' AND b1t1.c1 = b1t3.c1 AND b1t3.ctid = '(1,1)' AND b1t1.c1 = b1t4.c1 AND b1t4.ctid = '(1,1)'
1838 SELECT max(bmt1.c1), (
1839 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = b2t2.c1 AND b2t2.ctid = '(1,1)' AND b2t1.c1 = b2t3.c1 AND b2t3.ctid = '(1,1)' AND b2t1.c1 = b2t4.c1 AND b2t4.ctid = '(1,1)'
1841 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)' AND bmt1.c1 = bmt3.c1 AND bmt3.ctid = '(1,1)' AND bmt1.c1 = bmt4.c1 AND bmt4.ctid = '(1,1)' AND bmt1.c1 = c1.c1
1843 SELECT max(b3t1.c1) FROM s1.t1 b3t1, s1.t2 b3t2, s1.t3 b3t3, s1.t4 b3t4 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = b3t2.c1 AND b3t2.ctid = '(1,1)' AND b3t1.c1 = b3t3.c1 AND b3t3.ctid = '(1,1)' AND b3t1.c1 = b3t4.c1 AND b3t4.ctid = '(1,1)'
1846 LOG: available indexes for IndexScan(b1t3): t3_pkey
1847 LOG: available indexes for BitmapScan(b1t4): t4_pkey
1848 LOG: available indexes for BitmapScan(b2t1): t1_pkey
1849 LOG: available indexes for IndexScan(b2t4): t4_pkey
1850 LOG: available indexes for IndexScan(b3t1): t1_pkey
1851 LOG: available indexes for BitmapScan(b3t2): t2_pkey
1852 LOG: available indexes for IndexScan(bmt2): t2_pkey
1853 LOG: available indexes for BitmapScan(bmt3): t3_pkey
1858 IndexScan(b1t3 t3_pkey)
1859 BitmapScan(b1t4 t4_pkey)
1860 BitmapScan(b2t1 t1_pkey)
1863 IndexScan(b2t4 t4_pkey)
1864 IndexScan(b3t1 t1_pkey)
1865 BitmapScan(b3t2 t2_pkey)
1869 IndexScan(bmt2 t2_pkey)
1870 BitmapScan(bmt3 t3_pkey)
1877 --------------------------------------------------------------------------------
1884 Join Filter: (b1t1.c1 = b1t2.c1)
1885 -> Tid Scan on t1 b1t1
1886 TID Cond: (ctid = '(1,1)'::tid)
1887 -> Seq Scan on t2 b1t2
1888 Filter: (ctid = '(1,1)'::tid)
1889 -> Index Scan using t3_pkey on t3 b1t3
1890 Index Cond: (c1 = b1t1.c1)
1891 Filter: (ctid = '(1,1)'::tid)
1892 -> Bitmap Heap Scan on t4 b1t4
1893 Recheck Cond: (c1 = b1t1.c1)
1894 Filter: (ctid = '(1,1)'::tid)
1895 -> Bitmap Index Scan on t4_pkey
1896 Index Cond: (c1 = b1t1.c1)
1897 InitPlan 2 (returns $3)
1901 Join Filter: (b2t1.c1 = b2t3.c1)
1903 -> Tid Scan on t2 b2t2
1904 TID Cond: (ctid = '(1,1)'::tid)
1905 -> Bitmap Heap Scan on t1 b2t1
1906 Recheck Cond: (c1 = b2t2.c1)
1907 Filter: (ctid = '(1,1)'::tid)
1908 -> Bitmap Index Scan on t1_pkey
1909 Index Cond: (c1 = b2t2.c1)
1910 -> Seq Scan on t3 b2t3
1911 Filter: (ctid = '(1,1)'::tid)
1912 -> Index Scan using t4_pkey on t4 b2t4
1913 Index Cond: (c1 = b2t1.c1)
1914 Filter: (ctid = '(1,1)'::tid)
1915 InitPlan 3 (returns $5)
1920 Join Filter: (b3t3.c1 = b3t4.c1)
1921 -> Tid Scan on t3 b3t3
1922 TID Cond: (ctid = '(1,1)'::tid)
1923 -> Seq Scan on t4 b3t4
1924 Filter: (ctid = '(1,1)'::tid)
1925 -> Bitmap Heap Scan on t2 b3t2
1926 Recheck Cond: (c1 = b3t3.c1)
1927 Filter: (ctid = '(1,1)'::tid)
1928 -> Bitmap Index Scan on t2_pkey
1929 Index Cond: (c1 = b3t3.c1)
1930 -> Index Scan using t1_pkey on t1 b3t1
1931 Index Cond: (c1 = b3t2.c1)
1932 Filter: (ctid = '(1,1)'::tid)
1935 Join Filter: (bmt1.c1 = c1.c1)
1937 Join Filter: (bmt1.c1 = bmt4.c1)
1939 -> Seq Scan on t1 bmt1
1940 Filter: ((c1 <> $5) AND (ctid = '(1,1)'::tid))
1941 -> Bitmap Heap Scan on t3 bmt3
1942 Recheck Cond: (c1 = bmt1.c1)
1943 Filter: (ctid = '(1,1)'::tid)
1944 -> Bitmap Index Scan on t3_pkey
1945 Index Cond: (c1 = bmt1.c1)
1946 -> Tid Scan on t4 bmt4
1947 TID Cond: (ctid = '(1,1)'::tid)
1949 -> Index Scan using t2_pkey on t2 bmt2
1950 Index Cond: (c1 = bmt1.c1)
1951 Filter: (ctid = '(1,1)'::tid)
1955 EXPLAIN (COSTS false)
1957 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)' AND b1t1.c1 = b1t3.c1 AND b1t3.ctid = '(1,1)' AND b1t1.c1 = b1t4.c1 AND b1t4.ctid = '(1,1)'
1959 SELECT max(bmt1.c1), (
1960 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
1962 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)' AND bmt1.c1 = bmt3.c1 AND bmt3.ctid = '(1,1)' AND bmt1.c1 = bmt4.c1 AND bmt4.ctid = '(1,1)' AND bmt1.c1 = c1.c1
1964 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)'
1968 -------------------------------------------------------------------
1973 Join Filter: (b1t1.c1 = b1t4.c1)
1975 Join Filter: (b1t1.c1 = b1t3.c1)
1977 Join Filter: (b1t1.c1 = b1t2.c1)
1978 -> Tid Scan on t1 b1t1
1979 TID Cond: (ctid = '(1,1)'::tid)
1980 -> Seq Scan on t2 b1t2
1981 Filter: (ctid = '(1,1)'::tid)
1982 -> Tid Scan on t3 b1t3
1983 TID Cond: (ctid = '(1,1)'::tid)
1984 -> Tid Scan on t4 b1t4
1985 TID Cond: (ctid = '(1,1)'::tid)
1986 InitPlan 3 (returns $2)
1988 InitPlan 2 (returns $1)
1990 -> Tid Scan on t1 b2t1
1991 TID Cond: (ctid = '(1,1)'::tid)
1992 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1993 InitPlan 4 (returns $3)
1995 -> Tid Scan on t1 b3t1
1996 TID Cond: (ctid = '(1,1)'::tid)
1998 Join Filter: (bmt1.c1 = c1.c1)
2000 Join Filter: (bmt1.c1 = bmt2.c1)
2002 Join Filter: (bmt3.c1 = bmt1.c1)
2004 Join Filter: (bmt3.c1 = bmt4.c1)
2005 -> Tid Scan on t3 bmt3
2006 TID Cond: (ctid = '(1,1)'::tid)
2007 -> Tid Scan on t4 bmt4
2008 TID Cond: (ctid = '(1,1)'::tid)
2009 -> Tid Scan on t1 bmt1
2010 TID Cond: (ctid = '(1,1)'::tid)
2012 -> Seq Scan on t2 bmt2
2013 Filter: (ctid = '(1,1)'::tid)
2017 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
2018 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
2019 BitmapScan(b2t1 t1_pkey)
2020 IndexScan(b3t1 t1_pkey)
2022 EXPLAIN (COSTS false)
2024 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)' AND b1t1.c1 = b1t3.c1 AND b1t3.ctid = '(1,1)' AND b1t1.c1 = b1t4.c1 AND b1t4.ctid = '(1,1)'
2026 SELECT max(bmt1.c1), (
2027 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
2029 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)' AND bmt1.c1 = bmt3.c1 AND bmt3.ctid = '(1,1)' AND bmt1.c1 = bmt4.c1 AND bmt4.ctid = '(1,1)' AND bmt1.c1 = c1.c1
2031 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)'
2034 LOG: available indexes for IndexScan(b1t3): t3_pkey
2035 LOG: available indexes for BitmapScan(b1t4): t4_pkey
2036 LOG: available indexes for BitmapScan(b2t1): t1_pkey
2037 LOG: available indexes for BitmapScan(b2t1): t1_pkey
2038 LOG: available indexes for IndexScan(b3t1): t1_pkey
2039 LOG: available indexes for IndexScan(b3t1): t1_pkey
2040 LOG: available indexes for IndexScan(bmt2): t2_pkey
2041 LOG: available indexes for BitmapScan(bmt3): t3_pkey
2046 IndexScan(b1t3 t3_pkey)
2047 BitmapScan(b1t4 t4_pkey)
2048 BitmapScan(b2t1 t1_pkey)
2049 IndexScan(b3t1 t1_pkey)
2051 IndexScan(bmt2 t2_pkey)
2052 BitmapScan(bmt3 t3_pkey)
2059 --------------------------------------------------------------------------------
2066 Join Filter: (b1t1.c1 = b1t2.c1)
2067 -> Tid Scan on t1 b1t1
2068 TID Cond: (ctid = '(1,1)'::tid)
2069 -> Seq Scan on t2 b1t2
2070 Filter: (ctid = '(1,1)'::tid)
2071 -> Index Scan using t3_pkey on t3 b1t3
2072 Index Cond: (c1 = b1t1.c1)
2073 Filter: (ctid = '(1,1)'::tid)
2074 -> Bitmap Heap Scan on t4 b1t4
2075 Recheck Cond: (c1 = b1t1.c1)
2076 Filter: (ctid = '(1,1)'::tid)
2077 -> Bitmap Index Scan on t4_pkey
2078 Index Cond: (c1 = b1t1.c1)
2079 InitPlan 3 (returns $3)
2081 InitPlan 2 (returns $2)
2083 -> Bitmap Heap Scan on t1 b2t1
2084 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = 1))
2085 Filter: (ctid = '(1,1)'::tid)
2086 -> Bitmap Index Scan on t1_pkey
2087 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
2088 InitPlan 5 (returns $5)
2090 InitPlan 4 (returns $4)
2092 -> Index Scan Backward using t1_pkey on t1 b3t1
2093 Index Cond: (c1 IS NOT NULL)
2094 Filter: (ctid = '(1,1)'::tid)
2097 Join Filter: (bmt1.c1 = c1.c1)
2099 Join Filter: (bmt1.c1 = bmt4.c1)
2101 -> Seq Scan on t1 bmt1
2102 Filter: ((c1 <> $5) AND (ctid = '(1,1)'::tid))
2103 -> Bitmap Heap Scan on t3 bmt3
2104 Recheck Cond: (c1 = bmt1.c1)
2105 Filter: (ctid = '(1,1)'::tid)
2106 -> Bitmap Index Scan on t3_pkey
2107 Index Cond: (c1 = bmt1.c1)
2108 -> Tid Scan on t4 bmt4
2109 TID Cond: (ctid = '(1,1)'::tid)
2111 -> Index Scan using t2_pkey on t2 bmt2
2112 Index Cond: (c1 = bmt1.c1)
2113 Filter: (ctid = '(1,1)'::tid)
2117 ---- No. S-2-3 RULE definition table
2120 EXPLAIN (COSTS false) UPDATE s1.r1 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2122 -----------------------------------------------------------------
2125 Join Filter: (t1.c1 = t4.c1)
2127 Join Filter: (t1.c1 = t3.c1)
2129 Join Filter: (t2.c1 = t1.c1)
2132 TID Cond: (ctid = '(1,1)'::tid)
2135 Filter: (ctid = '(1,1)'::tid)
2137 TID Cond: (ctid = '(1,1)'::tid)
2139 TID Cond: (ctid = '(1,1)'::tid)
2141 TID Cond: (ctid = '(1,1)'::tid)
2144 /*+TidScan(t1)SeqScan(t2)IndexScan(t3 t3_pkey)BitmapScan(t4 t4_pkey)
2146 EXPLAIN (COSTS false) UPDATE s1.r1 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2147 LOG: available indexes for IndexScan(t3): t3_pkey
2148 LOG: available indexes for BitmapScan(t4): t4_pkey
2154 IndexScan(t3 t3_pkey)
2155 BitmapScan(t4 t4_pkey)
2161 ------------------------------------------------------------------------
2165 Join Filter: (t2.c1 = t1.c1)
2169 Filter: (ctid = '(1,1)'::tid)
2170 -> Index Scan using t3_pkey on t3
2171 Index Cond: (c1 = t2.c1)
2172 Filter: (ctid = '(1,1)'::tid)
2174 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2176 TID Cond: (ctid = '(1,1)'::tid)
2177 -> Bitmap Heap Scan on t4
2178 Recheck Cond: (c1 = t1.c1)
2179 Filter: (ctid = '(1,1)'::tid)
2180 -> Bitmap Index Scan on t4_pkey
2181 Index Cond: (c1 = t1.c1)
2184 EXPLAIN (COSTS false) UPDATE s1.r1_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2186 -----------------------------------------------------------------
2189 Join Filter: (b1t1.c1 = b1t4.c1)
2191 Join Filter: (b1t1.c1 = b1t3.c1)
2193 Join Filter: (b1t2.c1 = b1t1.c1)
2196 TID Cond: (ctid = '(1,1)'::tid)
2198 -> Seq Scan on t2 b1t2
2199 Filter: (ctid = '(1,1)'::tid)
2200 -> Tid Scan on t1 b1t1
2201 TID Cond: (ctid = '(1,1)'::tid)
2202 -> Tid Scan on t3 b1t3
2203 TID Cond: (ctid = '(1,1)'::tid)
2204 -> Tid Scan on t4 b1t4
2205 TID Cond: (ctid = '(1,1)'::tid)
2208 /*+TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
2210 EXPLAIN (COSTS false) UPDATE s1.r1_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2211 LOG: available indexes for IndexScan(b1t3): t3_pkey
2212 LOG: available indexes for BitmapScan(b1t4): t4_pkey
2217 IndexScan(b1t3 t3_pkey)
2218 BitmapScan(b1t4 t4_pkey)
2225 ------------------------------------------------------------------------
2229 Join Filter: (b1t2.c1 = b1t1.c1)
2232 -> Seq Scan on t2 b1t2
2233 Filter: (ctid = '(1,1)'::tid)
2234 -> Index Scan using t3_pkey on t3 b1t3
2235 Index Cond: (c1 = b1t2.c1)
2236 Filter: (ctid = '(1,1)'::tid)
2238 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2239 -> Tid Scan on t1 b1t1
2240 TID Cond: (ctid = '(1,1)'::tid)
2241 -> Bitmap Heap Scan on t4 b1t4
2242 Recheck Cond: (c1 = b1t1.c1)
2243 Filter: (ctid = '(1,1)'::tid)
2244 -> Bitmap Index Scan on t4_pkey
2245 Index Cond: (c1 = b1t1.c1)
2249 EXPLAIN (COSTS false) UPDATE s1.r2 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2251 -----------------------------------------------------------------
2254 Join Filter: (t1.c1 = t4.c1)
2256 Join Filter: (t1.c1 = t3.c1)
2258 Join Filter: (t2.c1 = t1.c1)
2261 TID Cond: (ctid = '(1,1)'::tid)
2264 Filter: (ctid = '(1,1)'::tid)
2266 TID Cond: (ctid = '(1,1)'::tid)
2268 TID Cond: (ctid = '(1,1)'::tid)
2270 TID Cond: (ctid = '(1,1)'::tid)
2274 Join Filter: (t1.c1 = t4.c1)
2276 Join Filter: (t1.c1 = t3.c1)
2278 Join Filter: (t2.c1 = t1.c1)
2281 TID Cond: (ctid = '(1,1)'::tid)
2284 Filter: (ctid = '(1,1)'::tid)
2286 TID Cond: (ctid = '(1,1)'::tid)
2288 TID Cond: (ctid = '(1,1)'::tid)
2290 TID Cond: (ctid = '(1,1)'::tid)
2293 /*+TidScan(t1)SeqScan(t2)IndexScan(t3 t3_pkey)BitmapScan(t4 t4_pkey)
2295 EXPLAIN (COSTS false) UPDATE s1.r2 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2296 LOG: available indexes for IndexScan(t3): t3_pkey
2297 LOG: available indexes for BitmapScan(t4): t4_pkey
2303 IndexScan(t3 t3_pkey)
2304 BitmapScan(t4 t4_pkey)
2309 LOG: available indexes for IndexScan(t3): t3_pkey
2310 LOG: available indexes for BitmapScan(t4): t4_pkey
2316 IndexScan(t3 t3_pkey)
2317 BitmapScan(t4 t4_pkey)
2323 ------------------------------------------------------------------------
2327 Join Filter: (t2.c1 = t1.c1)
2331 Filter: (ctid = '(1,1)'::tid)
2332 -> Index Scan using t3_pkey on t3
2333 Index Cond: (c1 = t2.c1)
2334 Filter: (ctid = '(1,1)'::tid)
2336 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2338 TID Cond: (ctid = '(1,1)'::tid)
2339 -> Bitmap Heap Scan on t4
2340 Recheck Cond: (c1 = t1.c1)
2341 Filter: (ctid = '(1,1)'::tid)
2342 -> Bitmap Index Scan on t4_pkey
2343 Index Cond: (c1 = t1.c1)
2348 Join Filter: (t2.c1 = t1.c1)
2352 Filter: (ctid = '(1,1)'::tid)
2353 -> Index Scan using t3_pkey on t3
2354 Index Cond: (c1 = t2.c1)
2355 Filter: (ctid = '(1,1)'::tid)
2357 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2359 TID Cond: (ctid = '(1,1)'::tid)
2360 -> Bitmap Heap Scan on t4
2361 Recheck Cond: (c1 = t1.c1)
2362 Filter: (ctid = '(1,1)'::tid)
2363 -> Bitmap Index Scan on t4_pkey
2364 Index Cond: (c1 = t1.c1)
2367 EXPLAIN (COSTS false) UPDATE s1.r2_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2369 -----------------------------------------------------------------
2372 Join Filter: (b1t1.c1 = b1t4.c1)
2374 Join Filter: (b1t1.c1 = b1t3.c1)
2376 Join Filter: (b1t2.c1 = b1t1.c1)
2379 TID Cond: (ctid = '(1,1)'::tid)
2381 -> Seq Scan on t2 b1t2
2382 Filter: (ctid = '(1,1)'::tid)
2383 -> Tid Scan on t1 b1t1
2384 TID Cond: (ctid = '(1,1)'::tid)
2385 -> Tid Scan on t3 b1t3
2386 TID Cond: (ctid = '(1,1)'::tid)
2387 -> Tid Scan on t4 b1t4
2388 TID Cond: (ctid = '(1,1)'::tid)
2392 Join Filter: (b2t1.c1 = b2t4.c1)
2394 Join Filter: (b2t1.c1 = b2t3.c1)
2396 Join Filter: (b2t2.c1 = b2t1.c1)
2399 TID Cond: (ctid = '(1,1)'::tid)
2401 -> Seq Scan on t2 b2t2
2402 Filter: (ctid = '(1,1)'::tid)
2403 -> Tid Scan on t1 b2t1
2404 TID Cond: (ctid = '(1,1)'::tid)
2405 -> Tid Scan on t3 b2t3
2406 TID Cond: (ctid = '(1,1)'::tid)
2407 -> Tid Scan on t4 b2t4
2408 TID Cond: (ctid = '(1,1)'::tid)
2411 /*+TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
2412 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
2414 EXPLAIN (COSTS false) UPDATE s1.r2_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2415 LOG: available indexes for IndexScan(b1t3): t3_pkey
2416 LOG: available indexes for BitmapScan(b1t4): t4_pkey
2421 IndexScan(b1t3 t3_pkey)
2422 BitmapScan(b1t4 t4_pkey)
2425 BitmapScan(b2t1 t1_pkey)
2428 IndexScan(b2t4 t4_pkey)
2432 LOG: available indexes for BitmapScan(b2t1): t1_pkey
2433 LOG: available indexes for IndexScan(b2t4): t4_pkey
2436 BitmapScan(b2t1 t1_pkey)
2439 IndexScan(b2t4 t4_pkey)
2444 IndexScan(b1t3 t3_pkey)
2445 BitmapScan(b1t4 t4_pkey)
2450 ------------------------------------------------------------------------
2454 Join Filter: (b1t2.c1 = b1t1.c1)
2457 -> Seq Scan on t2 b1t2
2458 Filter: (ctid = '(1,1)'::tid)
2459 -> Index Scan using t3_pkey on t3 b1t3
2460 Index Cond: (c1 = b1t2.c1)
2461 Filter: (ctid = '(1,1)'::tid)
2463 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2464 -> Tid Scan on t1 b1t1
2465 TID Cond: (ctid = '(1,1)'::tid)
2466 -> Bitmap Heap Scan on t4 b1t4
2467 Recheck Cond: (c1 = b1t1.c1)
2468 Filter: (ctid = '(1,1)'::tid)
2469 -> Bitmap Index Scan on t4_pkey
2470 Index Cond: (c1 = b1t1.c1)
2477 Join Filter: (b2t2.c1 = b2t3.c1)
2478 -> Tid Scan on t2 b2t2
2479 TID Cond: (ctid = '(1,1)'::tid)
2480 -> Seq Scan on t3 b2t3
2481 Filter: (ctid = '(1,1)'::tid)
2483 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2484 -> Bitmap Heap Scan on t1 b2t1
2485 Recheck Cond: (c1 = b2t2.c1)
2486 Filter: (ctid = '(1,1)'::tid)
2487 -> Bitmap Index Scan on t1_pkey
2488 Index Cond: (c1 = b2t2.c1)
2489 -> Index Scan using t4_pkey on t4 b2t4
2490 Index Cond: (c1 = b2t1.c1)
2491 Filter: (ctid = '(1,1)'::tid)
2495 EXPLAIN (COSTS false) UPDATE s1.r3 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2497 -----------------------------------------------------------------
2500 Join Filter: (t1.c1 = t4.c1)
2502 Join Filter: (t1.c1 = t3.c1)
2504 Join Filter: (t2.c1 = t1.c1)
2507 TID Cond: (ctid = '(1,1)'::tid)
2510 Filter: (ctid = '(1,1)'::tid)
2512 TID Cond: (ctid = '(1,1)'::tid)
2514 TID Cond: (ctid = '(1,1)'::tid)
2516 TID Cond: (ctid = '(1,1)'::tid)
2520 Join Filter: (t1.c1 = t4.c1)
2522 Join Filter: (t1.c1 = t3.c1)
2524 Join Filter: (t2.c1 = t1.c1)
2527 TID Cond: (ctid = '(1,1)'::tid)
2530 Filter: (ctid = '(1,1)'::tid)
2532 TID Cond: (ctid = '(1,1)'::tid)
2534 TID Cond: (ctid = '(1,1)'::tid)
2536 TID Cond: (ctid = '(1,1)'::tid)
2540 Join Filter: (t1.c1 = t4.c1)
2542 Join Filter: (t1.c1 = t3.c1)
2544 Join Filter: (t2.c1 = t1.c1)
2547 TID Cond: (ctid = '(1,1)'::tid)
2550 Filter: (ctid = '(1,1)'::tid)
2552 TID Cond: (ctid = '(1,1)'::tid)
2554 TID Cond: (ctid = '(1,1)'::tid)
2556 TID Cond: (ctid = '(1,1)'::tid)
2559 /*+TidScan(t1)SeqScan(t2)IndexScan(t3 t3_pkey)BitmapScan(t4 t4_pkey)
2561 EXPLAIN (COSTS false) UPDATE s1.r3 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2562 LOG: available indexes for IndexScan(t3): t3_pkey
2563 LOG: available indexes for BitmapScan(t4): t4_pkey
2569 IndexScan(t3 t3_pkey)
2570 BitmapScan(t4 t4_pkey)
2575 LOG: available indexes for IndexScan(t3): t3_pkey
2576 LOG: available indexes for BitmapScan(t4): t4_pkey
2582 IndexScan(t3 t3_pkey)
2583 BitmapScan(t4 t4_pkey)
2588 LOG: available indexes for IndexScan(t3): t3_pkey
2589 LOG: available indexes for BitmapScan(t4): t4_pkey
2595 IndexScan(t3 t3_pkey)
2596 BitmapScan(t4 t4_pkey)
2602 ------------------------------------------------------------------------
2606 Join Filter: (t2.c1 = t1.c1)
2610 Filter: (ctid = '(1,1)'::tid)
2611 -> Index Scan using t3_pkey on t3
2612 Index Cond: (c1 = t2.c1)
2613 Filter: (ctid = '(1,1)'::tid)
2615 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2617 TID Cond: (ctid = '(1,1)'::tid)
2618 -> Bitmap Heap Scan on t4
2619 Recheck Cond: (c1 = t1.c1)
2620 Filter: (ctid = '(1,1)'::tid)
2621 -> Bitmap Index Scan on t4_pkey
2622 Index Cond: (c1 = t1.c1)
2627 Join Filter: (t2.c1 = t1.c1)
2631 Filter: (ctid = '(1,1)'::tid)
2632 -> Index Scan using t3_pkey on t3
2633 Index Cond: (c1 = t2.c1)
2634 Filter: (ctid = '(1,1)'::tid)
2636 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2638 TID Cond: (ctid = '(1,1)'::tid)
2639 -> Bitmap Heap Scan on t4
2640 Recheck Cond: (c1 = t1.c1)
2641 Filter: (ctid = '(1,1)'::tid)
2642 -> Bitmap Index Scan on t4_pkey
2643 Index Cond: (c1 = t1.c1)
2648 Join Filter: (t2.c1 = t1.c1)
2652 Filter: (ctid = '(1,1)'::tid)
2653 -> Index Scan using t3_pkey on t3
2654 Index Cond: (c1 = t2.c1)
2655 Filter: (ctid = '(1,1)'::tid)
2657 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2659 TID Cond: (ctid = '(1,1)'::tid)
2660 -> Bitmap Heap Scan on t4
2661 Recheck Cond: (c1 = t1.c1)
2662 Filter: (ctid = '(1,1)'::tid)
2663 -> Bitmap Index Scan on t4_pkey
2664 Index Cond: (c1 = t1.c1)
2667 EXPLAIN (COSTS false) UPDATE s1.r3_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2669 -----------------------------------------------------------------
2672 Join Filter: (b1t1.c1 = b1t4.c1)
2674 Join Filter: (b1t1.c1 = b1t3.c1)
2676 Join Filter: (b1t2.c1 = b1t1.c1)
2679 TID Cond: (ctid = '(1,1)'::tid)
2681 -> Seq Scan on t2 b1t2
2682 Filter: (ctid = '(1,1)'::tid)
2683 -> Tid Scan on t1 b1t1
2684 TID Cond: (ctid = '(1,1)'::tid)
2685 -> Tid Scan on t3 b1t3
2686 TID Cond: (ctid = '(1,1)'::tid)
2687 -> Tid Scan on t4 b1t4
2688 TID Cond: (ctid = '(1,1)'::tid)
2692 Join Filter: (b2t1.c1 = b2t4.c1)
2694 Join Filter: (b2t1.c1 = b2t3.c1)
2696 Join Filter: (b2t2.c1 = b2t1.c1)
2699 TID Cond: (ctid = '(1,1)'::tid)
2701 -> Seq Scan on t2 b2t2
2702 Filter: (ctid = '(1,1)'::tid)
2703 -> Tid Scan on t1 b2t1
2704 TID Cond: (ctid = '(1,1)'::tid)
2705 -> Tid Scan on t3 b2t3
2706 TID Cond: (ctid = '(1,1)'::tid)
2707 -> Tid Scan on t4 b2t4
2708 TID Cond: (ctid = '(1,1)'::tid)
2712 Join Filter: (b3t1.c1 = b3t4.c1)
2714 Join Filter: (b3t1.c1 = b3t3.c1)
2716 Join Filter: (b3t2.c1 = b3t1.c1)
2719 TID Cond: (ctid = '(1,1)'::tid)
2721 -> Seq Scan on t2 b3t2
2722 Filter: (ctid = '(1,1)'::tid)
2723 -> Tid Scan on t1 b3t1
2724 TID Cond: (ctid = '(1,1)'::tid)
2725 -> Tid Scan on t3 b3t3
2726 TID Cond: (ctid = '(1,1)'::tid)
2727 -> Tid Scan on t4 b3t4
2728 TID Cond: (ctid = '(1,1)'::tid)
2731 /*+TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
2732 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
2733 IndexScan(b3t1 t1_pkey)BitmapScan(b3t2 t2_pkey)TidScan(b3t3)SeqScan(b3t4)
2735 EXPLAIN (COSTS false) UPDATE s1.r3_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2736 LOG: available indexes for IndexScan(b1t3): t3_pkey
2737 LOG: available indexes for BitmapScan(b1t4): t4_pkey
2742 IndexScan(b1t3 t3_pkey)
2743 BitmapScan(b1t4 t4_pkey)
2746 BitmapScan(b2t1 t1_pkey)
2749 IndexScan(b2t4 t4_pkey)
2750 IndexScan(b3t1 t1_pkey)
2751 BitmapScan(b3t2 t2_pkey)
2757 LOG: available indexes for BitmapScan(b2t1): t1_pkey
2758 LOG: available indexes for IndexScan(b2t4): t4_pkey
2761 BitmapScan(b2t1 t1_pkey)
2764 IndexScan(b2t4 t4_pkey)
2769 IndexScan(b1t3 t3_pkey)
2770 BitmapScan(b1t4 t4_pkey)
2771 IndexScan(b3t1 t1_pkey)
2772 BitmapScan(b3t2 t2_pkey)
2778 LOG: available indexes for IndexScan(b3t1): t1_pkey
2779 LOG: available indexes for BitmapScan(b3t2): t2_pkey
2782 IndexScan(b3t1 t1_pkey)
2783 BitmapScan(b3t2 t2_pkey)
2790 IndexScan(b1t3 t3_pkey)
2791 BitmapScan(b1t4 t4_pkey)
2792 BitmapScan(b2t1 t1_pkey)
2795 IndexScan(b2t4 t4_pkey)
2800 ------------------------------------------------------------------------
2804 Join Filter: (b1t2.c1 = b1t1.c1)
2807 -> Seq Scan on t2 b1t2
2808 Filter: (ctid = '(1,1)'::tid)
2809 -> Index Scan using t3_pkey on t3 b1t3
2810 Index Cond: (c1 = b1t2.c1)
2811 Filter: (ctid = '(1,1)'::tid)
2813 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2814 -> Tid Scan on t1 b1t1
2815 TID Cond: (ctid = '(1,1)'::tid)
2816 -> Bitmap Heap Scan on t4 b1t4
2817 Recheck Cond: (c1 = b1t1.c1)
2818 Filter: (ctid = '(1,1)'::tid)
2819 -> Bitmap Index Scan on t4_pkey
2820 Index Cond: (c1 = b1t1.c1)
2827 Join Filter: (b2t2.c1 = b2t3.c1)
2828 -> Tid Scan on t2 b2t2
2829 TID Cond: (ctid = '(1,1)'::tid)
2830 -> Seq Scan on t3 b2t3
2831 Filter: (ctid = '(1,1)'::tid)
2833 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2834 -> Bitmap Heap Scan on t1 b2t1
2835 Recheck Cond: (c1 = b2t2.c1)
2836 Filter: (ctid = '(1,1)'::tid)
2837 -> Bitmap Index Scan on t1_pkey
2838 Index Cond: (c1 = b2t2.c1)
2839 -> Index Scan using t4_pkey on t4 b2t4
2840 Index Cond: (c1 = b2t1.c1)
2841 Filter: (ctid = '(1,1)'::tid)
2845 Join Filter: (b3t1.c1 = b3t4.c1)
2849 -> Tid Scan on t3 b3t3
2850 TID Cond: (ctid = '(1,1)'::tid)
2851 -> Bitmap Heap Scan on t2 b3t2
2852 Recheck Cond: (c1 = b3t3.c1)
2853 Filter: (ctid = '(1,1)'::tid)
2854 -> Bitmap Index Scan on t2_pkey
2855 Index Cond: (c1 = b3t3.c1)
2857 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2858 -> Index Scan using t1_pkey on t1 b3t1
2859 Index Cond: (c1 = b3t2.c1)
2860 Filter: (ctid = '(1,1)'::tid)
2861 -> Seq Scan on t4 b3t4
2862 Filter: (ctid = '(1,1)'::tid)
2866 ---- No. S-2-4 VALUES clause
2869 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2871 ---------------------------
2872 Values Scan on "*VALUES*"
2873 Filter: (column1 = 1)
2877 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2886 ---------------------------
2887 Values Scan on "*VALUES*"
2888 Filter: (column1 = 1)
2891 /*+SeqScan(*VALUES*)*/
2892 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2901 ---------------------------
2902 Values Scan on "*VALUES*"
2903 Filter: (column1 = 1)
2907 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1, c2, c3, c4), (VALUES(1,1,1,'1'), (2,2,2,'2')) AS t2 (c1, c2) WHERE t1.c1 = t2.c1;
2909 ----------------------------------------------------------
2911 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2912 -> Values Scan on "*VALUES*"
2913 -> Values Scan on "*VALUES*"
2917 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1, c2, c3, c4), (VALUES(1,1,1,'1'), (2,2,2,'2')) AS t2 (c1, c2) WHERE t1.c1 = t2.c1;
2918 INFO: hint syntax error at or near ""
2919 DETAIL: SeqScan hint accepts only one relation.
2928 ----------------------------------------------------------
2930 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2931 -> Values Scan on "*VALUES*"
2932 -> Values Scan on "*VALUES*"
2935 /*+SeqScan(*VALUES*)*/
2936 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1, c2, c3, c4), (VALUES(1,1,1,'1'), (2,2,2,'2')) AS t2 (c1, c2) WHERE t1.c1 = t2.c1;
2945 ----------------------------------------------------------
2947 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2948 -> Values Scan on "*VALUES*"
2949 -> Values Scan on "*VALUES*"
2953 ---- No. S-3-1 scan method hint
2956 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
2958 ---------------------
2964 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
2973 ---------------------
2979 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
2981 ------------------------------
2982 Index Scan using t1_i1 on t1
2983 Index Cond: (c1 = 1)
2987 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
2996 --------------------
3002 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3004 ------------------------------
3005 Index Scan using t1_i1 on t1
3006 Index Cond: (c1 = 1)
3010 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3019 ------------------------------
3020 Index Scan using t1_i1 on t1
3021 Index Cond: (c1 = 1)
3025 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3027 ---------------------
3033 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3042 ------------------------------
3043 Index Scan using t1_i1 on t1
3044 Index Cond: (c1 >= 1)
3048 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3050 ---------------------------------
3051 Bitmap Heap Scan on t1
3052 Recheck Cond: (c3 < 10)
3053 -> Bitmap Index Scan on t1_i
3054 Index Cond: (c3 < 10)
3058 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3067 ---------------------------------
3068 Bitmap Heap Scan on t1
3069 Recheck Cond: (c3 < 10)
3070 -> Bitmap Index Scan on t1_i
3071 Index Cond: (c3 < 10)
3075 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3077 ------------------------------
3078 Index Scan using t1_i1 on t1
3079 Index Cond: (c1 = 1)
3083 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3092 ----------------------------------
3093 Bitmap Heap Scan on t1
3094 Recheck Cond: (c1 = 1)
3095 -> Bitmap Index Scan on t1_i1
3096 Index Cond: (c1 = 1)
3100 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3102 -----------------------------------
3104 TID Cond: (ctid = '(1,1)'::tid)
3109 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3118 -----------------------------------
3120 TID Cond: (ctid = '(1,1)'::tid)
3125 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid IN ('(1,1)', '(2,2)', '(3,3)');
3127 -------------------------------------------------------------
3128 Index Scan using t1_i1 on t1
3129 Index Cond: (c1 = 1)
3130 Filter: (ctid = ANY ('{"(1,1)","(2,2)","(3,3)"}'::tid[]))
3134 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid IN ('(1,1)', '(2,2)', '(3,3)');
3143 ---------------------------------------------------------------
3145 TID Cond: (ctid = ANY ('{"(1,1)","(2,2)","(3,3)"}'::tid[]))
3150 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3152 ---------------------
3158 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3167 ------------------------------
3168 Index Scan using t1_i1 on t1
3169 Index Cond: (c1 >= 1)
3173 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3175 ------------------------------
3176 Index Scan using t1_i1 on t1
3177 Index Cond: (c1 = 1)
3181 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3190 ------------------------------
3191 Index Scan using t1_i1 on t1
3192 Index Cond: (c1 = 1)
3196 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3198 ------------------------------
3199 Index Scan using t1_i1 on t1
3200 Index Cond: (c1 = 1)
3203 /*+NoIndexScan(t1)*/
3204 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3213 ----------------------------------
3214 Bitmap Heap Scan on t1
3215 Recheck Cond: (c1 = 1)
3216 -> Bitmap Index Scan on t1_i1
3217 Index Cond: (c1 = 1)
3221 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3223 ---------------------
3228 /*+NoIndexScan(t1)*/
3229 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3238 ---------------------
3244 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3246 ---------------------------------
3247 Bitmap Heap Scan on t1
3248 Recheck Cond: (c3 < 10)
3249 -> Bitmap Index Scan on t1_i
3250 Index Cond: (c3 < 10)
3253 /*+NoBitmapScan(t1)*/
3254 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3263 ---------------------
3269 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3271 ------------------------------
3272 Index Scan using t1_i1 on t1
3273 Index Cond: (c1 = 1)
3276 /*+NoBitmapScan(t1)*/
3277 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3286 ------------------------------
3287 Index Scan using t1_i1 on t1
3288 Index Cond: (c1 = 1)
3292 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3294 -----------------------------------
3296 TID Cond: (ctid = '(1,1)'::tid)
3301 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3310 ---------------------------------
3311 Index Scan using t1_i1 on t1
3312 Index Cond: (c1 = 1)
3313 Filter: (ctid = '(1,1)'::tid)
3317 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3319 ------------------------------
3320 Index Scan using t1_i1 on t1
3321 Index Cond: (c1 = 1)
3325 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3334 ------------------------------
3335 Index Scan using t1_i1 on t1
3336 Index Cond: (c1 = 1)
3340 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3342 ------------------------------
3343 Index Scan using t1_i1 on t1
3344 Index Cond: (c1 = 1)
3347 /*+IndexOnlyScan(t1)*/
3348 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3349 INFO: hint syntax error at or near "IndexOnlyScan(t1)"
3350 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3352 ------------------------------
3353 Index Scan using t1_i1 on t1
3354 Index Cond: (c1 = 1)
3358 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3360 ---------------------
3365 /*+IndexOnlyScan(t1)*/
3366 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3367 INFO: hint syntax error at or near "IndexOnlyScan(t1)"
3368 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3370 ---------------------
3376 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3378 ------------------------------
3379 Index Scan using t1_i1 on t1
3380 Index Cond: (c1 = 1)
3383 /*+NoIndexOnlyScan(t1)*/
3384 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3385 INFO: hint syntax error at or near "NoIndexOnlyScan(t1)"
3386 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
3388 ------------------------------
3389 Index Scan using t1_i1 on t1
3390 Index Cond: (c1 = 1)
3394 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3396 ---------------------
3401 /*+NoIndexOnlyScan(t1)*/
3402 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3403 INFO: hint syntax error at or near "NoIndexOnlyScan(t1)"
3404 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
3406 ---------------------
3412 ---- No. S-3-3 index name specified
3414 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3416 -----------------------------------
3418 TID Cond: (ctid = '(1,1)'::tid)
3422 SET enable_tidscan TO off;
3423 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3425 ---------------------------------
3426 Index Scan using ti1_i2 on ti1
3427 Index Cond: (c2 = 1)
3428 Filter: (ctid = '(1,1)'::tid)
3431 SET enable_indexscan TO off;
3432 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3434 -----------------------------------
3435 Bitmap Heap Scan on ti1
3436 Recheck Cond: (c2 = 1)
3437 Filter: (ctid = '(1,1)'::tid)
3438 -> Bitmap Index Scan on ti1_i2
3439 Index Cond: (c2 = 1)
3442 RESET enable_tidscan;
3443 RESET enable_indexscan;
3444 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3446 ---------------------
3452 /*+IndexScan(ti1 ti1_i3)*/
3453 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3454 LOG: available indexes for IndexScan(ti1): ti1_i3
3457 IndexScan(ti1 ti1_i3)
3463 ---------------------------------
3464 Index Scan using ti1_i3 on ti1
3465 Index Cond: (c2 = 1)
3466 Filter: (ctid = '(1,1)'::tid)
3470 /*+IndexScan(ti1 ti1_i3 ti1_i2)*/
3471 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3472 LOG: available indexes for IndexScan(ti1): ti1_i3 ti1_i2
3475 IndexScan(ti1 ti1_i3 ti1_i2)
3481 ---------------------------------
3482 Index Scan using ti1_i2 on ti1
3483 Index Cond: (c2 = 1)
3484 Filter: (ctid = '(1,1)'::tid)
3488 /*+IndexScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3489 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3490 LOG: available indexes for IndexScan(ti1): ti1_i4 ti1_i3 ti1_i2 ti1_i1
3493 IndexScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)
3499 ---------------------------------
3500 Index Scan using ti1_i2 on ti1
3501 Index Cond: (c2 = 1)
3502 Filter: (ctid = '(1,1)'::tid)
3506 /*+BitmapScan(ti1 ti1_i3)*/
3507 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3508 LOG: available indexes for BitmapScan(ti1): ti1_i3
3511 BitmapScan(ti1 ti1_i3)
3517 -----------------------------------
3518 Bitmap Heap Scan on ti1
3519 Recheck Cond: (c2 = 1)
3520 Filter: (ctid = '(1,1)'::tid)
3521 -> Bitmap Index Scan on ti1_i3
3522 Index Cond: (c2 = 1)
3526 /*+BitmapScan(ti1 ti1_i3 ti1_i2)*/
3527 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3528 LOG: available indexes for BitmapScan(ti1): ti1_i3 ti1_i2
3531 BitmapScan(ti1 ti1_i3 ti1_i2)
3537 -----------------------------------
3538 Bitmap Heap Scan on ti1
3539 Recheck Cond: (c2 = 1)
3540 Filter: (ctid = '(1,1)'::tid)
3541 -> Bitmap Index Scan on ti1_i2
3542 Index Cond: (c2 = 1)
3546 /*+BitmapScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3547 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3548 LOG: available indexes for BitmapScan(ti1): ti1_i4 ti1_i3 ti1_i2 ti1_i1
3551 BitmapScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)
3557 -----------------------------------
3558 Bitmap Heap Scan on ti1
3559 Recheck Cond: (c2 = 1)
3560 Filter: (ctid = '(1,1)'::tid)
3561 -> Bitmap Index Scan on ti1_i2
3562 Index Cond: (c2 = 1)
3566 /*+IndexOnlyScan(ti1 ti1_i3)*/
3567 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3568 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_i3)"
3569 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3571 ---------------------
3577 /*+IndexOnlyScan(ti1 ti1_i3 ti1_i2)*/
3578 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3579 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_i3 ti1_i2)"
3580 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3582 ---------------------
3588 /*+IndexOnlyScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3589 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3590 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)"
3591 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3593 ---------------------
3599 ---- No. S-3-4 index type
3603 Column | Type | Modifiers
3604 --------+---------+-----------
3605 c1 | integer | not null
3610 "ti1_pkey" PRIMARY KEY, btree (c1)
3611 "ti1_c2_key" UNIQUE CONSTRAINT, btree (c2)
3612 "ti1_uniq" UNIQUE, btree (c1)
3613 "ti1_btree" btree (c1)
3614 "ti1_expr" btree ((c1 < 100))
3616 "ti1_gist" gist (c1)
3617 "ti1_hash" hash (c1)
3619 "ti1_i2" btree (c2, c4)
3620 "ti1_i3" btree (c2, c4, c4)
3621 "ti1_i4" btree (c2, c4, c4, c4)
3622 "ti1_multi" btree (c1, c2, c3, c4)
3623 "ti1_pred" btree (lower(c4))
3624 "ti1_ts" gin (to_tsvector('english'::regconfig, c4))
3626 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3628 -----------------------------------------------------------------------------------------------------------------------------------------
3630 TID Cond: (ctid = '(1,1)'::tid)
3631 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3635 /*+IndexScan(ti1 ti1_btree)*/
3636 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3637 LOG: available indexes for IndexScan(ti1): ti1_btree
3640 IndexScan(ti1 ti1_btree)
3646 ----------------------------------------------------------------------------------------------------------------------------------------------------
3647 Index Scan using ti1_btree on ti1
3648 Index Cond: (c1 < 100)
3649 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3653 /*+IndexScan(ti1 ti1_hash)*/
3654 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3655 LOG: available indexes for IndexScan(ti1): ti1_hash
3658 IndexScan(ti1 ti1_hash)
3664 ----------------------------------------------------------------------------------------------------------------------------------------------------
3665 Index Scan using ti1_hash on ti1
3666 Index Cond: (c1 = 100)
3667 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3671 /*+IndexScan(ti1 ti1_gist)*/
3672 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3673 LOG: available indexes for IndexScan(ti1): ti1_gist
3676 IndexScan(ti1 ti1_gist)
3682 ----------------------------------------------------------------------------------------------------------------------------------------------------
3683 Index Scan using ti1_gist on ti1
3684 Index Cond: (c1 < 100)
3685 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3689 /*+IndexScan(ti1 ti1_gin)*/
3690 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3691 LOG: available indexes for IndexScan(ti1): ti1_gin
3694 IndexScan(ti1 ti1_gin)
3700 -----------------------------------------------------------------------------------------------------------------------------------------
3702 TID Cond: (ctid = '(1,1)'::tid)
3703 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3707 /*+IndexScan(ti1 ti1_expr)*/
3708 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3709 LOG: available indexes for IndexScan(ti1): ti1_expr
3712 IndexScan(ti1 ti1_expr)
3718 -------------------------------------------------------------------------------------------------------------------------------------------------------------------
3719 Index Scan using ti1_expr on ti1
3720 Index Cond: ((c1 < 100) = true)
3721 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3725 /*+IndexScan(ti1 ti1_pred)*/
3726 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3727 LOG: available indexes for IndexScan(ti1): ti1_pred
3730 IndexScan(ti1 ti1_pred)
3736 ---------------------------------------------------------------------------------------------------------------------------------------
3737 Index Scan using ti1_pred on ti1
3738 Index Cond: (lower(c4) = '1'::text)
3739 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery))
3743 /*+IndexScan(ti1 ti1_uniq)*/
3744 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3745 LOG: available indexes for IndexScan(ti1): ti1_uniq
3748 IndexScan(ti1 ti1_uniq)
3754 ----------------------------------------------------------------------------------------------------------------------------------------------------
3755 Index Scan using ti1_uniq on ti1
3756 Index Cond: (c1 < 100)
3757 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3761 /*+IndexScan(ti1 ti1_multi)*/
3762 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3763 LOG: available indexes for IndexScan(ti1): ti1_multi
3766 IndexScan(ti1 ti1_multi)
3772 ---------------------------------------------------------------------------------------------------------------------------------------
3773 Index Scan using ti1_multi on ti1
3774 Index Cond: ((c1 < 100) AND (c2 = 1))
3775 Filter: ((ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3779 /*+IndexScan(ti1 ti1_ts)*/
3780 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3781 LOG: available indexes for IndexScan(ti1): ti1_ts
3784 IndexScan(ti1 ti1_ts)
3790 -----------------------------------------------------------------------------------------------------------------------------------------
3792 TID Cond: (ctid = '(1,1)'::tid)
3793 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3797 /*+IndexScan(ti1 ti1_pkey)*/
3798 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3799 LOG: available indexes for IndexScan(ti1): ti1_pkey
3802 IndexScan(ti1 ti1_pkey)
3808 ----------------------------------------------------------------------------------------------------------------------------------------------------
3809 Index Scan using ti1_pkey on ti1
3810 Index Cond: (c1 < 100)
3811 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3815 /*+IndexScan(ti1 ti1_c2_key)*/
3816 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3817 LOG: available indexes for IndexScan(ti1): ti1_c2_key
3820 IndexScan(ti1 ti1_c2_key)
3826 ------------------------------------------------------------------------------------------------------------------------------------------------------
3827 Index Scan using ti1_c2_key on ti1
3828 Index Cond: (c2 = 1)
3829 Filter: ((c1 < 100) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3833 /*+BitmapScan(ti1 ti1_btree)*/
3834 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3835 LOG: available indexes for BitmapScan(ti1): ti1_btree
3838 BitmapScan(ti1 ti1_btree)
3844 ----------------------------------------------------------------------------------------------------------------------------------------------------
3845 Bitmap Heap Scan on ti1
3846 Recheck Cond: (c1 < 100)
3847 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3848 -> Bitmap Index Scan on ti1_btree
3849 Index Cond: (c1 < 100)
3853 /*+BitmapScan(ti1 ti1_hash)*/
3854 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3855 LOG: available indexes for BitmapScan(ti1): ti1_hash
3858 BitmapScan(ti1 ti1_hash)
3864 ----------------------------------------------------------------------------------------------------------------------------------------------------
3865 Bitmap Heap Scan on ti1
3866 Recheck Cond: (c1 = 100)
3867 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3868 -> Bitmap Index Scan on ti1_hash
3869 Index Cond: (c1 = 100)
3873 /*+BitmapScan(ti1 ti1_gist)*/
3874 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3875 LOG: available indexes for BitmapScan(ti1): ti1_gist
3878 BitmapScan(ti1 ti1_gist)
3884 ----------------------------------------------------------------------------------------------------------------------------------------------------
3885 Bitmap Heap Scan on ti1
3886 Recheck Cond: (c1 < 100)
3887 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3888 -> Bitmap Index Scan on ti1_gist
3889 Index Cond: (c1 < 100)
3893 /*+BitmapScan(ti1 ti1_gin)*/
3894 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3895 LOG: available indexes for BitmapScan(ti1): ti1_gin
3898 BitmapScan(ti1 ti1_gin)
3904 ----------------------------------------------------------------------------------------------------------------------------------------------------
3905 Bitmap Heap Scan on ti1
3906 Recheck Cond: (c1 < 100)
3907 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3908 -> Bitmap Index Scan on ti1_gin
3909 Index Cond: (c1 < 100)
3913 /*+BitmapScan(ti1 ti1_expr)*/
3914 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3915 LOG: available indexes for BitmapScan(ti1): ti1_expr
3918 BitmapScan(ti1 ti1_expr)
3924 -------------------------------------------------------------------------------------------------------------------------------------------------------------------
3925 Bitmap Heap Scan on ti1
3926 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3927 -> Bitmap Index Scan on ti1_expr
3928 Index Cond: ((c1 < 100) = true)
3932 /*+BitmapScan(ti1 ti1_pred)*/
3933 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3934 LOG: available indexes for BitmapScan(ti1): ti1_pred
3937 BitmapScan(ti1 ti1_pred)
3943 ---------------------------------------------------------------------------------------------------------------------------------------
3944 Bitmap Heap Scan on ti1
3945 Recheck Cond: (lower(c4) = '1'::text)
3946 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery))
3947 -> Bitmap Index Scan on ti1_pred
3948 Index Cond: (lower(c4) = '1'::text)
3952 /*+BitmapScan(ti1 ti1_uniq)*/
3953 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3954 LOG: available indexes for BitmapScan(ti1): ti1_uniq
3957 BitmapScan(ti1 ti1_uniq)
3963 ----------------------------------------------------------------------------------------------------------------------------------------------------
3964 Bitmap Heap Scan on ti1
3965 Recheck Cond: (c1 < 100)
3966 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3967 -> Bitmap Index Scan on ti1_uniq
3968 Index Cond: (c1 < 100)
3972 /*+BitmapScan(ti1 ti1_multi)*/
3973 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3974 LOG: available indexes for BitmapScan(ti1): ti1_multi
3977 BitmapScan(ti1 ti1_multi)
3983 ---------------------------------------------------------------------------------------------------------------------------------------
3984 Bitmap Heap Scan on ti1
3985 Recheck Cond: ((c1 < 100) AND (c2 = 1))
3986 Filter: ((ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3987 -> Bitmap Index Scan on ti1_multi
3988 Index Cond: ((c1 < 100) AND (c2 = 1))
3992 /*+BitmapScan(ti1 ti1_ts)*/
3993 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3994 LOG: available indexes for BitmapScan(ti1): ti1_ts
3997 BitmapScan(ti1 ti1_ts)
4003 -------------------------------------------------------------------------------------------
4004 Bitmap Heap Scan on ti1
4005 Recheck Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4006 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (lower(c4) = '1'::text))
4007 -> Bitmap Index Scan on ti1_ts
4008 Index Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4012 /*+BitmapScan(ti1 ti1_pkey)*/
4013 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
4014 LOG: available indexes for BitmapScan(ti1): ti1_pkey
4017 BitmapScan(ti1 ti1_pkey)
4023 ----------------------------------------------------------------------------------------------------------------------------------------------------
4024 Bitmap Heap Scan on ti1
4025 Recheck Cond: (c1 < 100)
4026 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
4027 -> Bitmap Index Scan on ti1_pkey
4028 Index Cond: (c1 < 100)
4032 /*+BitmapScan(ti1 ti1_c2_key)*/
4033 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
4034 LOG: available indexes for BitmapScan(ti1): ti1_c2_key
4037 BitmapScan(ti1 ti1_c2_key)
4043 ------------------------------------------------------------------------------------------------------------------------------------------------------
4044 Bitmap Heap Scan on ti1
4045 Recheck Cond: (c2 = 1)
4046 Filter: ((c1 < 100) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
4047 -> Bitmap Index Scan on ti1_c2_key
4048 Index Cond: (c2 = 1)
4052 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4054 ---------------------
4059 /*+IndexOnlyScan(ti1 ti1_btree)*/
4060 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4061 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_btree)"
4062 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4064 ---------------------
4070 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4072 ----------------------------------
4073 Index Scan using ti1_uniq on ti1
4074 Index Cond: (c1 = 1)
4077 /*+IndexOnlyScan(ti1 ti1_hash)*/
4078 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4079 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_hash)"
4080 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4082 ----------------------------------
4083 Index Scan using ti1_uniq on ti1
4084 Index Cond: (c1 = 1)
4088 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 1;
4090 ----------------------------------
4091 Index Scan using ti1_uniq on ti1
4092 Index Cond: (c1 < 1)
4095 /*+IndexOnlyScan(ti1 ti1_gist)*/
4096 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 1;
4097 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_gist)"
4098 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4100 ----------------------------------
4101 Index Scan using ti1_uniq on ti1
4102 Index Cond: (c1 < 1)
4106 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4108 ----------------------------------
4109 Index Scan using ti1_uniq on ti1
4110 Index Cond: (c1 = 1)
4113 /*+IndexOnlyScan(ti1 ti1_gin)*/
4114 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4115 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_gin)"
4116 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4118 ----------------------------------
4119 Index Scan using ti1_uniq on ti1
4120 Index Cond: (c1 = 1)
4124 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 100;
4126 ----------------------------------
4127 Index Scan using ti1_uniq on ti1
4128 Index Cond: (c1 < 100)
4131 /*+IndexOnlyScan(ti1 ti1_expr)*/
4132 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 100;
4133 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_expr)"
4134 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4136 ----------------------------------
4137 Index Scan using ti1_uniq on ti1
4138 Index Cond: (c1 < 100)
4142 EXPLAIN (COSTS false) SELECT c4 FROM s1.ti1 WHERE lower(c4) >= '1';
4144 ------------------------------------
4146 Filter: (lower(c4) >= '1'::text)
4149 /*+IndexOnlyScan(ti1 ti1_pred)*/
4150 EXPLAIN (COSTS false) SELECT c4 FROM s1.ti1 WHERE lower(c4) >= '1';
4151 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pred)"
4152 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4154 ------------------------------------
4156 Filter: (lower(c4) >= '1'::text)
4160 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4162 ---------------------
4167 /*+IndexOnlyScan(ti1 ti1_uniq)*/
4168 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4169 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_uniq)"
4170 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4172 ---------------------
4178 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4180 ---------------------
4185 /*+IndexOnlyScan(ti1 ti1_multi)*/
4186 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4187 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_multi)"
4188 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4190 ---------------------
4196 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE to_tsvector('english', c4) @@ 'a & b';
4198 -----------------------------------------------------------------------------------------
4199 Bitmap Heap Scan on ti1
4200 Recheck Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4201 -> Bitmap Index Scan on ti1_ts
4202 Index Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4205 /*+IndexOnlyScan(ti1 ti1_ts)*/
4206 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE to_tsvector('english', c4) @@ 'a & b';
4207 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_ts)"
4208 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4210 -----------------------------------------------------------------------------------------
4211 Bitmap Heap Scan on ti1
4212 Recheck Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4213 -> Bitmap Index Scan on ti1_ts
4214 Index Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4218 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4220 ---------------------
4225 /*+IndexOnlyScan(ti1 ti1_pkey)*/
4226 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4227 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pkey)"
4228 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4230 ---------------------
4236 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE c2 >= 1;
4238 ---------------------
4243 /*+IndexOnlyScan(ti1 ti1_c2_key)*/
4244 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE c2 >= 1;
4245 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_c2_key)"
4246 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4248 ---------------------
4254 ---- No. S-3-5 not used index
4257 /*+IndexScan(ti1 ti1_pred)*/
4258 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4259 LOG: available indexes for IndexScan(ti1): ti1_pred
4262 IndexScan(ti1 ti1_pred)
4268 ------------------------------------------------------------------------
4269 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4274 /*+BitmapScan(ti1 ti1_pred)*/
4275 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4276 LOG: available indexes for BitmapScan(ti1): ti1_pred
4279 BitmapScan(ti1 ti1_pred)
4285 ------------------------------------------------------------------------
4286 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4291 /*+IndexOnlyScan(ti1 ti1_pred)*/
4292 EXPLAIN (COSTS true) SELECT c1 FROM s1.ti1 WHERE c1 = 100;
4293 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pred)"
4294 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4296 --------------------------------------------------------------------
4297 Index Scan using ti1_uniq on ti1 (cost=0.00..8.27 rows=1 width=4)
4298 Index Cond: (c1 = 100)
4302 ---- No. S-3-6 not exist index
4305 /*+IndexScan(ti1 not_exist)*/
4306 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4307 LOG: available indexes for IndexScan(ti1):
4310 IndexScan(ti1 not_exist)
4316 ------------------------------------------------------------------------
4317 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4322 /*+BitmapScan(ti1 not_exist)*/
4323 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4324 LOG: available indexes for BitmapScan(ti1):
4327 BitmapScan(ti1 not_exist)
4333 ------------------------------------------------------------------------
4334 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4339 /*+IndexOnlyScan(ti1 not_exist)*/
4340 EXPLAIN (COSTS true) SELECT c1 FROM s1.ti1 WHERE c1 = 100;
4341 INFO: hint syntax error at or near "IndexOnlyScan(ti1 not_exist)"
4342 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4344 --------------------------------------------------------------------
4345 Index Scan using ti1_uniq on ti1 (cost=0.00..8.27 rows=1 width=4)
4346 Index Cond: (c1 = 100)
4350 ---- No. S-3-7 query structure
4352 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4354 -----------------------------------------------
4356 Hash Cond: (t2.c1 = t1.c1)
4360 TID Cond: (ctid = '(1,1)'::tid)
4365 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE c1 = 100;
4374 ----------------------
4380 /*+SeqScan(t1)BitmapScan(t2)*/
4381 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4391 ----------------------------------------
4394 Filter: (ctid = '(1,1)'::tid)
4395 -> Bitmap Heap Scan on t2
4396 Recheck Cond: (c1 = t1.c1)
4397 -> Bitmap Index Scan on t2_i1
4398 Index Cond: (c1 = t1.c1)
4403 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4412 ---------------------------------------------
4414 Hash Cond: (t2.c1 = t1.c1)
4418 Filter: (ctid = '(1,1)'::tid)
4422 ---- No. S-3-8 query structure
4425 EXPLAIN (COSTS false)
4427 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.c1 = 1)
4428 SELECT max(b3t1.c1), (
4429 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4430 ) FROM s1.t1 b3t1 WHERE b3t1.c1 = (
4431 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4433 ---------------------------------------------------------------------
4435 InitPlan 2 (returns $1)
4437 InitPlan 1 (returns $0)
4439 -> Index Scan using t1_i1 on t1 b2t1
4440 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4441 InitPlan 4 (returns $3)
4443 InitPlan 3 (returns $2)
4445 -> Index Scan using t1_i1 on t1 b4t1
4446 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4447 InitPlan 5 (returns $4)
4449 -> Index Scan using t1_i1 on t1 b3t1
4450 Index Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4453 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4455 EXPLAIN (COSTS false)
4457 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.c1 = 1)
4458 SELECT max(b3t1.c1), (
4459 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4460 ) FROM s1.t1 b3t1 WHERE b3t1.c1 = (
4461 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4462 LOG: available indexes for IndexScan(b2t1): t1_pkey
4463 LOG: available indexes for IndexScan(b2t1): t1_pkey
4464 LOG: available indexes for BitmapScan(b3t1): t1_pkey
4465 LOG: available indexes for BitmapScan(b3t1): t1_pkey
4468 IndexScan(b2t1 t1_pkey)
4469 BitmapScan(b3t1 t1_pkey)
4477 ---------------------------------------------------------------------
4479 InitPlan 2 (returns $1)
4481 InitPlan 1 (returns $0)
4483 -> Index Scan using t1_pkey on t1 b2t1
4484 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4485 InitPlan 4 (returns $3)
4487 InitPlan 3 (returns $2)
4489 -> Seq Scan on t1 b4t1
4490 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
4491 InitPlan 5 (returns $4)
4493 -> Bitmap Heap Scan on t1 b3t1
4494 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4495 -> Bitmap Index Scan on t1_pkey
4496 Index Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4500 EXPLAIN (COSTS false)
4502 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4503 SELECT max(b3t1.c1), (
4504 SELECT max(b2t1.c1) FROM s1.t1 b2t1 JOIN s1.t2 b2t2 ON(b2t1.c1 = b2t2.c1) WHERE b2t1.c1 = 1
4505 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4506 SELECT max(b4t1.c1) FROM s1.t1 b4t1 JOIN s1.t2 b4t2 ON(b4t1.c1 = b4t2.c1) WHERE b4t1.c1 = 1);
4508 -------------------------------------------------------
4513 -> Index Scan using t1_i1 on t1 b1t1
4514 Index Cond: (c1 = 1)
4515 -> Seq Scan on t2 b1t2
4517 InitPlan 2 (returns $1)
4520 -> Index Scan using t1_i1 on t1 b2t1
4521 Index Cond: (c1 = 1)
4522 -> Seq Scan on t2 b2t2
4524 InitPlan 3 (returns $2)
4527 -> Index Scan using t1_i1 on t1 b4t1
4528 Index Cond: (c1 = 1)
4529 -> Seq Scan on t2 b4t2
4533 -> Index Scan using t1_i1 on t1 b3t1
4534 Index Cond: (c1 = $2)
4535 -> Seq Scan on t2 b3t2
4541 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4542 TidScan(b1t2)SeqScan(b2t2)IndexScan(b3t2 t2_pkey)BitmapScan(b4t2 t2_pkey)
4544 EXPLAIN (COSTS false)
4546 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4547 SELECT max(b3t1.c1), (
4548 SELECT max(b2t1.c1) FROM s1.t1 b2t1 JOIN s1.t2 b2t2 ON(b2t1.c1 = b2t2.c1) WHERE b2t1.c1 = 1
4549 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4550 SELECT max(b4t1.c1) FROM s1.t1 b4t1 JOIN s1.t2 b4t2 ON(b4t1.c1 = b4t2.c1) WHERE b4t1.c1 = 1);
4551 LOG: available indexes for IndexScan(b2t1): t1_pkey
4552 LOG: available indexes for BitmapScan(b4t2): t2_pkey
4553 LOG: available indexes for BitmapScan(b3t1): t1_pkey
4554 LOG: available indexes for IndexScan(b3t2): t2_pkey
4559 IndexScan(b2t1 t1_pkey)
4561 BitmapScan(b3t1 t1_pkey)
4562 IndexScan(b3t2 t2_pkey)
4564 BitmapScan(b4t2 t2_pkey)
4570 ---------------------------------------------------------
4575 -> Seq Scan on t1 b1t1
4577 -> Seq Scan on t2 b1t2
4579 InitPlan 2 (returns $1)
4582 -> Index Scan using t1_pkey on t1 b2t1
4583 Index Cond: (c1 = 1)
4584 -> Seq Scan on t2 b2t2
4586 InitPlan 3 (returns $2)
4589 -> Seq Scan on t1 b4t1
4591 -> Bitmap Heap Scan on t2 b4t2
4592 Recheck Cond: (c1 = 1)
4593 -> Bitmap Index Scan on t2_pkey
4594 Index Cond: (c1 = 1)
4597 -> Bitmap Heap Scan on t1 b3t1
4598 Recheck Cond: (c1 = $2)
4599 -> Bitmap Index Scan on t1_pkey
4600 Index Cond: (c1 = $2)
4603 -> Index Scan using t2_pkey on t2 b3t2
4604 Index Cond: (c1 = $2)
4608 EXPLAIN (COSTS false)
4610 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4611 SELECT max(b3t1.c1), (
4612 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4613 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4614 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4616 ---------------------------------------------------------------------
4621 -> Index Scan using t1_i1 on t1 b1t1
4622 Index Cond: (c1 = 1)
4623 -> Seq Scan on t2 b1t2
4625 InitPlan 3 (returns $2)
4627 InitPlan 2 (returns $1)
4629 -> Index Scan using t1_i1 on t1 b2t1
4630 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4631 InitPlan 5 (returns $4)
4633 InitPlan 4 (returns $3)
4635 -> Index Scan using t1_i1 on t1 b4t1
4636 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4639 -> Index Scan using t1_i1 on t1 b3t1
4640 Index Cond: (c1 = $4)
4641 -> Seq Scan on t2 b3t2
4647 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4648 TidScan(b1t2)IndexScan(b3t2 t2_pkey)
4650 EXPLAIN (COSTS false)
4652 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4653 SELECT max(b3t1.c1), (
4654 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4655 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4656 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4657 LOG: available indexes for IndexScan(b2t1): t1_pkey
4658 LOG: available indexes for IndexScan(b2t1): t1_pkey
4659 LOG: available indexes for BitmapScan(b3t1): t1_pkey
4660 LOG: available indexes for IndexScan(b3t2): t2_pkey
4665 IndexScan(b2t1 t1_pkey)
4666 BitmapScan(b3t1 t1_pkey)
4667 IndexScan(b3t2 t2_pkey)
4674 ---------------------------------------------------------------------
4679 -> Seq Scan on t1 b1t1
4681 -> Seq Scan on t2 b1t2
4683 InitPlan 3 (returns $2)
4685 InitPlan 2 (returns $1)
4687 -> Index Scan using t1_pkey on t1 b2t1
4688 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4689 InitPlan 5 (returns $4)
4691 InitPlan 4 (returns $3)
4693 -> Seq Scan on t1 b4t1
4694 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
4697 -> Bitmap Heap Scan on t1 b3t1
4698 Recheck Cond: (c1 = $4)
4699 -> Bitmap Index Scan on t1_pkey
4700 Index Cond: (c1 = $4)
4703 -> Index Scan using t2_pkey on t2 b3t2
4704 Index Cond: (c1 = $4)
4708 ---- No. S-3-9 inheritance table select type
4711 EXPLAIN (COSTS false) SELECT * FROM ONLY s1.p1 WHERE c1 = 1;
4713 --------------------
4719 EXPLAIN (COSTS false) SELECT * FROM ONLY s1.p1 WHERE c1 = 1;
4728 -----------------------------
4729 Index Scan using p1_i on p1
4730 Index Cond: (c1 = 1)
4734 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4736 ---------------------------------
4741 -> Seq Scan on p1c1 p1
4746 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4755 ------------------------------------------------
4758 -> Index Scan using p1_i on p1
4759 Index Cond: (c1 = 1)
4760 -> Index Scan using p1c1_i on p1c1 p1
4761 Index Cond: (c1 = 1)
4765 ---- No. S-3-10 inheritance table number
4768 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4770 ---------------------------------
4775 -> Seq Scan on p1c1 p1
4780 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4789 ------------------------------------------------
4792 -> Index Scan using p1_i on p1
4793 Index Cond: (c1 = 1)
4794 -> Index Scan using p1c1_i on p1c1 p1
4795 Index Cond: (c1 = 1)
4799 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4801 -----------------------------------
4806 -> Seq Scan on p2c1 p2
4808 -> Seq Scan on p2c1c1 p2
4813 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4822 ----------------------------------------------------
4825 -> Index Scan using p2_i on p2
4826 Index Cond: (c1 = 1)
4827 -> Index Scan using p2c1_i on p2c1 p2
4828 Index Cond: (c1 = 1)
4829 -> Index Scan using p2c1c1_i on p2c1c1 p2
4830 Index Cond: (c1 = 1)
4834 ---- No. S-3-11 inheritance table specified table
4836 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4838 -----------------------------------
4843 -> Seq Scan on p2c1 p2
4845 -> Seq Scan on p2c1c1 p2
4851 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4860 ----------------------------------------------------
4863 -> Index Scan using p2_i on p2
4864 Index Cond: (c1 = 1)
4865 -> Index Scan using p2c1_i on p2c1 p2
4866 Index Cond: (c1 = 1)
4867 -> Index Scan using p2c1c1_i on p2c1c1 p2
4868 Index Cond: (c1 = 1)
4872 /*+IndexScan(p2c1)*/
4873 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4882 -----------------------------------
4887 -> Seq Scan on p2c1 p2
4889 -> Seq Scan on p2c1c1 p2
4894 /*+IndexScan(p2 p2_pkey p2c1_pkey p2c1c1_pkey)*/
4895 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4896 LOG: available indexes for IndexScan(p2): p2_pkey
4897 LOG: available indexes for IndexScan(p2c1): p2c1_pkey
4898 LOG: available indexes for IndexScan(p2c2):
4899 LOG: available indexes for IndexScan(p2c3):
4900 LOG: available indexes for IndexScan(p2c1c1): p2c1c1_pkey
4901 LOG: available indexes for IndexScan(p2c1c2):
4902 LOG: available indexes for IndexScan(p2c2c1):
4903 LOG: available indexes for IndexScan(p2c2c2):
4904 LOG: available indexes for IndexScan(p2c3c1):
4905 LOG: available indexes for IndexScan(p2c3c2):
4908 IndexScan(p2 p2_pkey p2c1_pkey p2c1c1_pkey)
4914 -------------------------------------------------------
4917 -> Index Scan using p2_pkey on p2
4918 Index Cond: (c1 = 1)
4919 -> Index Scan using p2c1_pkey on p2c1 p2
4920 Index Cond: (c1 = 1)
4921 -> Index Scan using p2c1c1_pkey on p2c1c1 p2
4922 Index Cond: (c1 = 1)
4926 /*+IndexScan(p2 p2c1_pkey)*/
4927 EXPLAIN (COSTS true) SELECT * FROM s1.p2 WHERE c1 = 1;
4928 LOG: available indexes for IndexScan(p2):
4929 LOG: available indexes for IndexScan(p2c1): p2c1_pkey
4930 LOG: available indexes for IndexScan(p2c2):
4931 LOG: available indexes for IndexScan(p2c3):
4932 LOG: available indexes for IndexScan(p2c1c1):
4933 LOG: available indexes for IndexScan(p2c1c2):
4934 LOG: available indexes for IndexScan(p2c2c1):
4935 LOG: available indexes for IndexScan(p2c2c2):
4936 LOG: available indexes for IndexScan(p2c3c1):
4937 LOG: available indexes for IndexScan(p2c3c2):
4940 IndexScan(p2 p2c1_pkey)
4946 ------------------------------------------------------------------------------------------
4947 Result (cost=10000000000.00..20000000009.89 rows=3 width=34)
4948 -> Append (cost=10000000000.00..20000000009.89 rows=3 width=34)
4949 -> Seq Scan on p2 (cost=10000000000.00..10000000000.00 rows=1 width=44)
4951 -> Index Scan using p2c1_pkey on p2c1 p2 (cost=0.00..8.27 rows=1 width=44)
4952 Index Cond: (c1 = 1)
4953 -> Seq Scan on p2c1c1 p2 (cost=10000000000.00..10000000001.62 rows=1 width=14)
4958 ---- No. S-3-12 specified same table
4961 /*+IndexScan(ti1) BitmapScan(ti1)*/
4962 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4963 INFO: hint syntax error at or near "IndexScan(ti1) BitmapScan(ti1)"
4964 DETAIL: Conflict scan method hint.
4974 -------------------------------------
4975 Bitmap Heap Scan on ti1
4976 Recheck Cond: (c1 = 1)
4977 Filter: (ctid = '(1,1)'::tid)
4978 -> Bitmap Index Scan on ti1_uniq
4979 Index Cond: (c1 = 1)
4983 /*+IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)*/
4984 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4985 INFO: hint syntax error at or near "IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
4986 DETAIL: Conflict scan method hint.
4987 LOG: available indexes for BitmapScan(ti1): ti1_btree
4990 BitmapScan(ti1 ti1_btree)
4993 IndexScan(ti1 ti1_pkey)
4997 --------------------------------------
4998 Bitmap Heap Scan on ti1
4999 Recheck Cond: (c1 = 1)
5000 Filter: (ctid = '(1,1)'::tid)
5001 -> Bitmap Index Scan on ti1_btree
5002 Index Cond: (c1 = 1)
5006 /*+BitmapScan(ti1) IndexScan(ti1) BitmapScan(ti1)*/
5007 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5008 INFO: hint syntax error at or near "BitmapScan(ti1) IndexScan(ti1) BitmapScan(ti1)"
5009 DETAIL: Conflict scan method hint.
5010 INFO: hint syntax error at or near "IndexScan(ti1) BitmapScan(ti1)"
5011 DETAIL: Conflict scan method hint.
5022 -------------------------------------
5023 Bitmap Heap Scan on ti1
5024 Recheck Cond: (c1 = 1)
5025 Filter: (ctid = '(1,1)'::tid)
5026 -> Bitmap Index Scan on ti1_uniq
5027 Index Cond: (c1 = 1)
5031 /*+BitmapScan(ti1 ti1_hash) IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)*/
5032 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5033 INFO: hint syntax error at or near "BitmapScan(ti1 ti1_hash) IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
5034 DETAIL: Conflict scan method hint.
5035 INFO: hint syntax error at or near "IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
5036 DETAIL: Conflict scan method hint.
5037 LOG: available indexes for BitmapScan(ti1): ti1_btree
5040 BitmapScan(ti1 ti1_btree)
5043 BitmapScan(ti1 ti1_hash)
5044 IndexScan(ti1 ti1_pkey)
5048 --------------------------------------
5049 Bitmap Heap Scan on ti1
5050 Recheck Cond: (c1 = 1)
5051 Filter: (ctid = '(1,1)'::tid)
5052 -> Bitmap Index Scan on ti1_btree
5053 Index Cond: (c1 = 1)
5057 ---- No. S-3-13 message output
5061 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5070 ------------------------------------------------
5072 Filter: ((c1 = 1) AND (ctid = '(1,1)'::tid))
5076 /*+SeqScan(ti1 ti1_pkey)*/
5077 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5078 INFO: hint syntax error at or near ""
5079 DETAIL: SeqScan hint accepts only one relation.
5085 SeqScan(ti1 ti1_pkey)
5088 -----------------------------------
5090 TID Cond: (ctid = '(1,1)'::tid)
5095 /*+SeqScan(ti1 ti1_pkey ti1_btree)*/
5096 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5097 INFO: hint syntax error at or near ""
5098 DETAIL: SeqScan hint accepts only one relation.
5104 SeqScan(ti1 ti1_pkey ti1_btree)
5107 -----------------------------------
5109 TID Cond: (ctid = '(1,1)'::tid)
5115 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5124 ----------------------------------
5125 Index Scan using ti1_uniq on ti1
5126 Index Cond: (c1 = 1)
5127 Filter: (ctid = '(1,1)'::tid)
5131 /*+IndexScan(ti1 ti1_pkey)*/
5132 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5133 LOG: available indexes for IndexScan(ti1): ti1_pkey
5136 IndexScan(ti1 ti1_pkey)
5142 ----------------------------------
5143 Index Scan using ti1_pkey on ti1
5144 Index Cond: (c1 = 1)
5145 Filter: (ctid = '(1,1)'::tid)
5149 /*+IndexScan(ti1 ti1_pkey ti1_btree)*/
5150 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5151 LOG: available indexes for IndexScan(ti1): ti1_btree ti1_pkey
5154 IndexScan(ti1 ti1_pkey ti1_btree)
5160 -----------------------------------
5161 Index Scan using ti1_btree on ti1
5162 Index Cond: (c1 = 1)
5163 Filter: (ctid = '(1,1)'::tid)
5167 /*+BitmapScan(ti1)*/
5168 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5177 -------------------------------------
5178 Bitmap Heap Scan on ti1
5179 Recheck Cond: (c1 = 1)
5180 Filter: (ctid = '(1,1)'::tid)
5181 -> Bitmap Index Scan on ti1_uniq
5182 Index Cond: (c1 = 1)
5186 /*+BitmapScan(ti1 ti1_pkey)*/
5187 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5188 LOG: available indexes for BitmapScan(ti1): ti1_pkey
5191 BitmapScan(ti1 ti1_pkey)
5197 -------------------------------------
5198 Bitmap Heap Scan on ti1
5199 Recheck Cond: (c1 = 1)
5200 Filter: (ctid = '(1,1)'::tid)
5201 -> Bitmap Index Scan on ti1_pkey
5202 Index Cond: (c1 = 1)
5206 /*+BitmapScan(ti1 ti1_pkey ti1_btree)*/
5207 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5208 LOG: available indexes for BitmapScan(ti1): ti1_btree ti1_pkey
5211 BitmapScan(ti1 ti1_pkey ti1_btree)
5217 --------------------------------------
5218 Bitmap Heap Scan on ti1
5219 Recheck Cond: (c1 = 1)
5220 Filter: (ctid = '(1,1)'::tid)
5221 -> Bitmap Index Scan on ti1_btree
5222 Index Cond: (c1 = 1)
5227 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5236 -----------------------------------
5238 TID Cond: (ctid = '(1,1)'::tid)
5243 /*+TidScan(ti1 ti1_pkey)*/
5244 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5245 INFO: hint syntax error at or near ""
5246 DETAIL: TidScan hint accepts only one relation.
5252 TidScan(ti1 ti1_pkey)
5255 -----------------------------------
5257 TID Cond: (ctid = '(1,1)'::tid)
5262 /*+TidScan(ti1 ti1_pkey ti1_btree)*/
5263 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5264 INFO: hint syntax error at or near ""
5265 DETAIL: TidScan hint accepts only one relation.
5271 TidScan(ti1 ti1_pkey ti1_btree)
5274 -----------------------------------
5276 TID Cond: (ctid = '(1,1)'::tid)
5282 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5291 -----------------------------------
5293 TID Cond: (ctid = '(1,1)'::tid)
5298 /*+NoSeqScan(ti1 ti1_pkey)*/
5299 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5300 INFO: hint syntax error at or near ""
5301 DETAIL: NoSeqScan hint accepts only one relation.
5307 NoSeqScan(ti1 ti1_pkey)
5310 -----------------------------------
5312 TID Cond: (ctid = '(1,1)'::tid)
5317 /*+NoSeqScan(ti1 ti1_pkey ti1_btree)*/
5318 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5319 INFO: hint syntax error at or near ""
5320 DETAIL: NoSeqScan hint accepts only one relation.
5326 NoSeqScan(ti1 ti1_pkey ti1_btree)
5329 -----------------------------------
5331 TID Cond: (ctid = '(1,1)'::tid)
5336 /*+NoIndexScan(ti1)*/
5337 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5346 -----------------------------------
5348 TID Cond: (ctid = '(1,1)'::tid)
5353 /*+NoIndexScan(ti1 ti1_pkey)*/
5354 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5355 INFO: hint syntax error at or near ""
5356 DETAIL: NoIndexScan hint accepts only one relation.
5362 NoIndexScan(ti1 ti1_pkey)
5365 -----------------------------------
5367 TID Cond: (ctid = '(1,1)'::tid)
5372 /*+NoIndexScan(ti1 ti1_pkey ti1_btree)*/
5373 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5374 INFO: hint syntax error at or near ""
5375 DETAIL: NoIndexScan hint accepts only one relation.
5381 NoIndexScan(ti1 ti1_pkey ti1_btree)
5384 -----------------------------------
5386 TID Cond: (ctid = '(1,1)'::tid)
5391 /*+NoBitmapScan(ti1)*/
5392 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5401 -----------------------------------
5403 TID Cond: (ctid = '(1,1)'::tid)
5408 /*+NoBitmapScan(ti1 ti1_pkey)*/
5409 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5410 INFO: hint syntax error at or near ""
5411 DETAIL: NoBitmapScan hint accepts only one relation.
5417 NoBitmapScan(ti1 ti1_pkey)
5420 -----------------------------------
5422 TID Cond: (ctid = '(1,1)'::tid)
5427 /*+NoBitmapScan(ti1 ti1_pkey ti1_btree)*/
5428 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5429 INFO: hint syntax error at or near ""
5430 DETAIL: NoBitmapScan hint accepts only one relation.
5436 NoBitmapScan(ti1 ti1_pkey ti1_btree)
5439 -----------------------------------
5441 TID Cond: (ctid = '(1,1)'::tid)
5447 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5456 ----------------------------------
5457 Index Scan using ti1_uniq on ti1
5458 Index Cond: (c1 = 1)
5459 Filter: (ctid = '(1,1)'::tid)
5463 /*+NoTidScan(ti1 ti1_pkey)*/
5464 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5465 INFO: hint syntax error at or near ""
5466 DETAIL: NoTidScan hint accepts only one relation.
5472 NoTidScan(ti1 ti1_pkey)
5475 -----------------------------------
5477 TID Cond: (ctid = '(1,1)'::tid)
5482 /*+NoTidScan(ti1 ti1_pkey ti1_btree)*/
5483 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5484 INFO: hint syntax error at or near ""
5485 DETAIL: NoTidScan hint accepts only one relation.
5491 NoTidScan(ti1 ti1_pkey ti1_btree)
5494 -----------------------------------
5496 TID Cond: (ctid = '(1,1)'::tid)
5501 /*+IndexOnlyScan(ti1)*/
5502 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5503 INFO: hint syntax error at or near "IndexOnlyScan(ti1)"
5504 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
5506 ---------------------
5512 /*+IndexOnlyScan(ti1 ti1_pkey)*/
5513 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5514 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pkey)"
5515 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
5517 ---------------------
5523 /*+IndexOnlyScan(ti1 ti1_pkey ti1_btree)*/
5524 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5525 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pkey ti1_btree)"
5526 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
5528 ---------------------
5534 /*+NoIndexOnlyScan(ti1)*/
5535 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5536 INFO: hint syntax error at or near "NoIndexOnlyScan(ti1)"
5537 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
5539 ----------------------------------
5540 Index Scan using ti1_uniq on ti1
5541 Index Cond: (c1 = 1)
5545 /*+NoIndexOnlyScan(ti1 ti1_pkey)*/
5546 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5547 INFO: hint syntax error at or near "NoIndexOnlyScan(ti1 ti1_pkey)"
5548 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
5550 ----------------------------------
5551 Index Scan using ti1_uniq on ti1
5552 Index Cond: (c1 = 1)
5556 /*+NoIndexOnlyScan(ti1 ti1_pkey ti1_btree)*/
5557 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5558 INFO: hint syntax error at or near "NoIndexOnlyScan(ti1 ti1_pkey ti1_btree)"
5559 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
5561 ----------------------------------
5562 Index Scan using ti1_uniq on ti1
5563 Index Cond: (c1 = 1)