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 some complexity query blocks
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 or VIEW
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)
2874 ---- No. S-2-4 VALUES clause
2877 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2879 ---------------------------
2880 Values Scan on "*VALUES*"
2881 Filter: (column1 = 1)
2885 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2894 ---------------------------
2895 Values Scan on "*VALUES*"
2896 Filter: (column1 = 1)
2899 /*+SeqScan(*VALUES*)*/
2900 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2909 ---------------------------
2910 Values Scan on "*VALUES*"
2911 Filter: (column1 = 1)
2915 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;
2917 ----------------------------------------------------------
2919 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2920 -> Values Scan on "*VALUES*"
2921 -> Values Scan on "*VALUES*"
2925 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;
2926 INFO: hint syntax error at or near ""
2927 DETAIL: SeqScan hint accepts only one relation.
2936 ----------------------------------------------------------
2938 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2939 -> Values Scan on "*VALUES*"
2940 -> Values Scan on "*VALUES*"
2943 /*+SeqScan(*VALUES*)*/
2944 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;
2953 ----------------------------------------------------------
2955 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2956 -> Values Scan on "*VALUES*"
2957 -> Values Scan on "*VALUES*"
2961 ---- No. S-3-1 scan method hint
2964 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
2966 ---------------------
2972 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
2981 ---------------------
2987 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
2989 ------------------------------
2990 Index Scan using t1_i1 on t1
2991 Index Cond: (c1 = 1)
2995 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3004 --------------------
3010 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3012 ------------------------------
3013 Index Scan using t1_i1 on t1
3014 Index Cond: (c1 = 1)
3018 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3027 ------------------------------
3028 Index Scan using t1_i1 on t1
3029 Index Cond: (c1 = 1)
3033 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3035 ---------------------
3041 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3050 ------------------------------
3051 Index Scan using t1_i1 on t1
3052 Index Cond: (c1 >= 1)
3056 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3058 ---------------------------------
3059 Bitmap Heap Scan on t1
3060 Recheck Cond: (c3 < 10)
3061 -> Bitmap Index Scan on t1_i
3062 Index Cond: (c3 < 10)
3066 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3075 ---------------------------------
3076 Bitmap Heap Scan on t1
3077 Recheck Cond: (c3 < 10)
3078 -> Bitmap Index Scan on t1_i
3079 Index Cond: (c3 < 10)
3083 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3085 ------------------------------
3086 Index Scan using t1_i1 on t1
3087 Index Cond: (c1 = 1)
3091 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3100 ----------------------------------
3101 Bitmap Heap Scan on t1
3102 Recheck Cond: (c1 = 1)
3103 -> Bitmap Index Scan on t1_i1
3104 Index Cond: (c1 = 1)
3108 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3110 -----------------------------------
3112 TID Cond: (ctid = '(1,1)'::tid)
3117 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3126 -----------------------------------
3128 TID Cond: (ctid = '(1,1)'::tid)
3133 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid IN ('(1,1)', '(2,2)', '(3,3)');
3135 -------------------------------------------------------------
3136 Index Scan using t1_i1 on t1
3137 Index Cond: (c1 = 1)
3138 Filter: (ctid = ANY ('{"(1,1)","(2,2)","(3,3)"}'::tid[]))
3142 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid IN ('(1,1)', '(2,2)', '(3,3)');
3151 ---------------------------------------------------------------
3153 TID Cond: (ctid = ANY ('{"(1,1)","(2,2)","(3,3)"}'::tid[]))
3158 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3160 ---------------------
3166 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;
3183 ------------------------------
3184 Index Scan using t1_i1 on t1
3185 Index Cond: (c1 = 1)
3189 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)
3204 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3206 ------------------------------
3207 Index Scan using t1_i1 on t1
3208 Index Cond: (c1 = 1)
3211 /*+NoIndexScan(t1)*/
3212 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3221 ----------------------------------
3222 Bitmap Heap Scan on t1
3223 Recheck Cond: (c1 = 1)
3224 -> Bitmap Index Scan on t1_i1
3225 Index Cond: (c1 = 1)
3229 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3231 ---------------------
3236 /*+NoIndexScan(t1)*/
3237 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3246 ---------------------
3252 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3254 ---------------------------------
3255 Bitmap Heap Scan on t1
3256 Recheck Cond: (c3 < 10)
3257 -> Bitmap Index Scan on t1_i
3258 Index Cond: (c3 < 10)
3261 /*+NoBitmapScan(t1)*/
3262 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3271 ---------------------
3277 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3279 ------------------------------
3280 Index Scan using t1_i1 on t1
3281 Index Cond: (c1 = 1)
3284 /*+NoBitmapScan(t1)*/
3285 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3294 ------------------------------
3295 Index Scan using t1_i1 on t1
3296 Index Cond: (c1 = 1)
3300 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3302 -----------------------------------
3304 TID Cond: (ctid = '(1,1)'::tid)
3309 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3318 ---------------------------------
3319 Index Scan using t1_i1 on t1
3320 Index Cond: (c1 = 1)
3321 Filter: (ctid = '(1,1)'::tid)
3325 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3327 ------------------------------
3328 Index Scan using t1_i1 on t1
3329 Index Cond: (c1 = 1)
3333 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3342 ------------------------------
3343 Index Scan using t1_i1 on t1
3344 Index Cond: (c1 = 1)
3348 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3350 ------------------------------
3351 Index Scan using t1_i1 on t1
3352 Index Cond: (c1 = 1)
3355 /*+IndexOnlyScan(t1)*/
3356 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3357 INFO: hint syntax error at or near "IndexOnlyScan(t1)"
3358 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3360 ------------------------------
3361 Index Scan using t1_i1 on t1
3362 Index Cond: (c1 = 1)
3366 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3368 ---------------------
3373 /*+IndexOnlyScan(t1)*/
3374 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3375 INFO: hint syntax error at or near "IndexOnlyScan(t1)"
3376 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3378 ---------------------
3384 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3386 ------------------------------
3387 Index Scan using t1_i1 on t1
3388 Index Cond: (c1 = 1)
3391 /*+NoIndexOnlyScan(t1)*/
3392 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3393 INFO: hint syntax error at or near "NoIndexOnlyScan(t1)"
3394 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
3396 ------------------------------
3397 Index Scan using t1_i1 on t1
3398 Index Cond: (c1 = 1)
3402 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3404 ---------------------
3409 /*+NoIndexOnlyScan(t1)*/
3410 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3411 INFO: hint syntax error at or near "NoIndexOnlyScan(t1)"
3412 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
3414 ---------------------
3420 ---- No. S-3-3 index name specified
3422 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3424 -----------------------------------
3426 TID Cond: (ctid = '(1,1)'::tid)
3430 SET enable_tidscan TO off;
3431 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3433 ---------------------------------
3434 Index Scan using ti1_i2 on ti1
3435 Index Cond: (c2 = 1)
3436 Filter: (ctid = '(1,1)'::tid)
3439 SET enable_indexscan TO off;
3440 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3442 -----------------------------------
3443 Bitmap Heap Scan on ti1
3444 Recheck Cond: (c2 = 1)
3445 Filter: (ctid = '(1,1)'::tid)
3446 -> Bitmap Index Scan on ti1_i2
3447 Index Cond: (c2 = 1)
3450 RESET enable_tidscan;
3451 RESET enable_indexscan;
3452 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3454 ---------------------
3460 /*+IndexScan(ti1 ti1_i3)*/
3461 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3462 LOG: available indexes for IndexScan(ti1): ti1_i3
3465 IndexScan(ti1 ti1_i3)
3471 ---------------------------------
3472 Index Scan using ti1_i3 on ti1
3473 Index Cond: (c2 = 1)
3474 Filter: (ctid = '(1,1)'::tid)
3478 /*+IndexScan(ti1 ti1_i3 ti1_i2)*/
3479 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3480 LOG: available indexes for IndexScan(ti1): ti1_i3 ti1_i2
3483 IndexScan(ti1 ti1_i3 ti1_i2)
3489 ---------------------------------
3490 Index Scan using ti1_i2 on ti1
3491 Index Cond: (c2 = 1)
3492 Filter: (ctid = '(1,1)'::tid)
3496 /*+IndexScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3497 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3498 LOG: available indexes for IndexScan(ti1): ti1_i4 ti1_i3 ti1_i2 ti1_i1
3501 IndexScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)
3507 ---------------------------------
3508 Index Scan using ti1_i2 on ti1
3509 Index Cond: (c2 = 1)
3510 Filter: (ctid = '(1,1)'::tid)
3514 /*+BitmapScan(ti1 ti1_i3)*/
3515 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3516 LOG: available indexes for BitmapScan(ti1): ti1_i3
3519 BitmapScan(ti1 ti1_i3)
3525 -----------------------------------
3526 Bitmap Heap Scan on ti1
3527 Recheck Cond: (c2 = 1)
3528 Filter: (ctid = '(1,1)'::tid)
3529 -> Bitmap Index Scan on ti1_i3
3530 Index Cond: (c2 = 1)
3534 /*+BitmapScan(ti1 ti1_i3 ti1_i2)*/
3535 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3536 LOG: available indexes for BitmapScan(ti1): ti1_i3 ti1_i2
3539 BitmapScan(ti1 ti1_i3 ti1_i2)
3545 -----------------------------------
3546 Bitmap Heap Scan on ti1
3547 Recheck Cond: (c2 = 1)
3548 Filter: (ctid = '(1,1)'::tid)
3549 -> Bitmap Index Scan on ti1_i2
3550 Index Cond: (c2 = 1)
3554 /*+BitmapScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3555 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3556 LOG: available indexes for BitmapScan(ti1): ti1_i4 ti1_i3 ti1_i2 ti1_i1
3559 BitmapScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)
3565 -----------------------------------
3566 Bitmap Heap Scan on ti1
3567 Recheck Cond: (c2 = 1)
3568 Filter: (ctid = '(1,1)'::tid)
3569 -> Bitmap Index Scan on ti1_i2
3570 Index Cond: (c2 = 1)
3574 /*+IndexOnlyScan(ti1 ti1_i3)*/
3575 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3576 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_i3)"
3577 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3579 ---------------------
3585 /*+IndexOnlyScan(ti1 ti1_i3 ti1_i2)*/
3586 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3587 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_i3 ti1_i2)"
3588 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3590 ---------------------
3596 /*+IndexOnlyScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3597 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3598 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)"
3599 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3601 ---------------------
3607 ---- No. S-3-4 index type
3611 Column | Type | Modifiers
3612 --------+---------+-----------
3613 c1 | integer | not null
3618 "ti1_pkey" PRIMARY KEY, btree (c1)
3619 "ti1_c2_key" UNIQUE CONSTRAINT, btree (c2)
3620 "ti1_uniq" UNIQUE, btree (c1)
3621 "ti1_btree" btree (c1)
3622 "ti1_expr" btree ((c1 < 100))
3624 "ti1_gist" gist (c1)
3625 "ti1_hash" hash (c1)
3627 "ti1_i2" btree (c2, c4)
3628 "ti1_i3" btree (c2, c4, c4)
3629 "ti1_i4" btree (c2, c4, c4, c4)
3630 "ti1_multi" btree (c1, c2, c3, c4)
3631 "ti1_pred" btree (lower(c4))
3632 "ti1_ts" gin (to_tsvector('english'::regconfig, c4))
3634 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)';
3636 -----------------------------------------------------------------------------------------------------------------------------------------
3638 TID Cond: (ctid = '(1,1)'::tid)
3639 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3643 /*+IndexScan(ti1 ti1_btree)*/
3644 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)';
3645 LOG: available indexes for IndexScan(ti1): ti1_btree
3648 IndexScan(ti1 ti1_btree)
3654 ----------------------------------------------------------------------------------------------------------------------------------------------------
3655 Index Scan using ti1_btree on ti1
3656 Index Cond: (c1 < 100)
3657 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3661 /*+IndexScan(ti1 ti1_hash)*/
3662 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)';
3663 LOG: available indexes for IndexScan(ti1): ti1_hash
3666 IndexScan(ti1 ti1_hash)
3672 ----------------------------------------------------------------------------------------------------------------------------------------------------
3673 Index Scan using ti1_hash on ti1
3674 Index Cond: (c1 = 100)
3675 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3679 /*+IndexScan(ti1 ti1_gist)*/
3680 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)';
3681 LOG: available indexes for IndexScan(ti1): ti1_gist
3684 IndexScan(ti1 ti1_gist)
3690 ----------------------------------------------------------------------------------------------------------------------------------------------------
3691 Index Scan using ti1_gist on ti1
3692 Index Cond: (c1 < 100)
3693 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3697 /*+IndexScan(ti1 ti1_gin)*/
3698 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)';
3699 LOG: available indexes for IndexScan(ti1): ti1_gin
3702 IndexScan(ti1 ti1_gin)
3708 -----------------------------------------------------------------------------------------------------------------------------------------
3710 TID Cond: (ctid = '(1,1)'::tid)
3711 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3715 /*+IndexScan(ti1 ti1_expr)*/
3716 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)';
3717 LOG: available indexes for IndexScan(ti1): ti1_expr
3720 IndexScan(ti1 ti1_expr)
3726 -------------------------------------------------------------------------------------------------------------------------------------------------------------------
3727 Index Scan using ti1_expr on ti1
3728 Index Cond: ((c1 < 100) = true)
3729 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))
3733 /*+IndexScan(ti1 ti1_pred)*/
3734 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)';
3735 LOG: available indexes for IndexScan(ti1): ti1_pred
3738 IndexScan(ti1 ti1_pred)
3744 ---------------------------------------------------------------------------------------------------------------------------------------
3745 Index Scan using ti1_pred on ti1
3746 Index Cond: (lower(c4) = '1'::text)
3747 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery))
3751 /*+IndexScan(ti1 ti1_uniq)*/
3752 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)';
3753 LOG: available indexes for IndexScan(ti1): ti1_uniq
3756 IndexScan(ti1 ti1_uniq)
3762 ----------------------------------------------------------------------------------------------------------------------------------------------------
3763 Index Scan using ti1_uniq on ti1
3764 Index Cond: (c1 < 100)
3765 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3769 /*+IndexScan(ti1 ti1_multi)*/
3770 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)';
3771 LOG: available indexes for IndexScan(ti1): ti1_multi
3774 IndexScan(ti1 ti1_multi)
3780 ---------------------------------------------------------------------------------------------------------------------------------------
3781 Index Scan using ti1_multi on ti1
3782 Index Cond: ((c1 < 100) AND (c2 = 1))
3783 Filter: ((ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3787 /*+IndexScan(ti1 ti1_ts)*/
3788 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)';
3789 LOG: available indexes for IndexScan(ti1): ti1_ts
3792 IndexScan(ti1 ti1_ts)
3798 -----------------------------------------------------------------------------------------------------------------------------------------
3800 TID Cond: (ctid = '(1,1)'::tid)
3801 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3805 /*+IndexScan(ti1 ti1_pkey)*/
3806 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)';
3807 LOG: available indexes for IndexScan(ti1): ti1_pkey
3810 IndexScan(ti1 ti1_pkey)
3816 ----------------------------------------------------------------------------------------------------------------------------------------------------
3817 Index Scan using ti1_pkey on ti1
3818 Index Cond: (c1 < 100)
3819 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3823 /*+IndexScan(ti1 ti1_c2_key)*/
3824 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)';
3825 LOG: available indexes for IndexScan(ti1): ti1_c2_key
3828 IndexScan(ti1 ti1_c2_key)
3834 ------------------------------------------------------------------------------------------------------------------------------------------------------
3835 Index Scan using ti1_c2_key on ti1
3836 Index Cond: (c2 = 1)
3837 Filter: ((c1 < 100) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3841 /*+BitmapScan(ti1 ti1_btree)*/
3842 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)';
3843 LOG: available indexes for BitmapScan(ti1): ti1_btree
3846 BitmapScan(ti1 ti1_btree)
3852 ----------------------------------------------------------------------------------------------------------------------------------------------------
3853 Bitmap Heap Scan on ti1
3854 Recheck Cond: (c1 < 100)
3855 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3856 -> Bitmap Index Scan on ti1_btree
3857 Index Cond: (c1 < 100)
3861 /*+BitmapScan(ti1 ti1_hash)*/
3862 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)';
3863 LOG: available indexes for BitmapScan(ti1): ti1_hash
3866 BitmapScan(ti1 ti1_hash)
3872 ----------------------------------------------------------------------------------------------------------------------------------------------------
3873 Bitmap Heap Scan on ti1
3874 Recheck Cond: (c1 = 100)
3875 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3876 -> Bitmap Index Scan on ti1_hash
3877 Index Cond: (c1 = 100)
3881 /*+BitmapScan(ti1 ti1_gist)*/
3882 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)';
3883 LOG: available indexes for BitmapScan(ti1): ti1_gist
3886 BitmapScan(ti1 ti1_gist)
3892 ----------------------------------------------------------------------------------------------------------------------------------------------------
3893 Bitmap Heap Scan on ti1
3894 Recheck Cond: (c1 < 100)
3895 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3896 -> Bitmap Index Scan on ti1_gist
3897 Index Cond: (c1 < 100)
3901 /*+BitmapScan(ti1 ti1_gin)*/
3902 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)';
3903 LOG: available indexes for BitmapScan(ti1): ti1_gin
3906 BitmapScan(ti1 ti1_gin)
3912 ----------------------------------------------------------------------------------------------------------------------------------------------------
3913 Bitmap Heap Scan on ti1
3914 Recheck Cond: (c1 < 100)
3915 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3916 -> Bitmap Index Scan on ti1_gin
3917 Index Cond: (c1 < 100)
3921 /*+BitmapScan(ti1 ti1_expr)*/
3922 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)';
3923 LOG: available indexes for BitmapScan(ti1): ti1_expr
3926 BitmapScan(ti1 ti1_expr)
3932 -------------------------------------------------------------------------------------------------------------------------------------------------------------------
3933 Bitmap Heap Scan on ti1
3934 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))
3935 -> Bitmap Index Scan on ti1_expr
3936 Index Cond: ((c1 < 100) = true)
3940 /*+BitmapScan(ti1 ti1_pred)*/
3941 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)';
3942 LOG: available indexes for BitmapScan(ti1): ti1_pred
3945 BitmapScan(ti1 ti1_pred)
3951 ---------------------------------------------------------------------------------------------------------------------------------------
3952 Bitmap Heap Scan on ti1
3953 Recheck Cond: (lower(c4) = '1'::text)
3954 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery))
3955 -> Bitmap Index Scan on ti1_pred
3956 Index Cond: (lower(c4) = '1'::text)
3960 /*+BitmapScan(ti1 ti1_uniq)*/
3961 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)';
3962 LOG: available indexes for BitmapScan(ti1): ti1_uniq
3965 BitmapScan(ti1 ti1_uniq)
3971 ----------------------------------------------------------------------------------------------------------------------------------------------------
3972 Bitmap Heap Scan on ti1
3973 Recheck Cond: (c1 < 100)
3974 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3975 -> Bitmap Index Scan on ti1_uniq
3976 Index Cond: (c1 < 100)
3980 /*+BitmapScan(ti1 ti1_multi)*/
3981 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)';
3982 LOG: available indexes for BitmapScan(ti1): ti1_multi
3985 BitmapScan(ti1 ti1_multi)
3991 ---------------------------------------------------------------------------------------------------------------------------------------
3992 Bitmap Heap Scan on ti1
3993 Recheck Cond: ((c1 < 100) AND (c2 = 1))
3994 Filter: ((ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3995 -> Bitmap Index Scan on ti1_multi
3996 Index Cond: ((c1 < 100) AND (c2 = 1))
4000 /*+BitmapScan(ti1 ti1_ts)*/
4001 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)';
4002 LOG: available indexes for BitmapScan(ti1): ti1_ts
4005 BitmapScan(ti1 ti1_ts)
4011 -------------------------------------------------------------------------------------------
4012 Bitmap Heap Scan on ti1
4013 Recheck Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4014 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (lower(c4) = '1'::text))
4015 -> Bitmap Index Scan on ti1_ts
4016 Index Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4020 /*+BitmapScan(ti1 ti1_pkey)*/
4021 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)';
4022 LOG: available indexes for BitmapScan(ti1): ti1_pkey
4025 BitmapScan(ti1 ti1_pkey)
4031 ----------------------------------------------------------------------------------------------------------------------------------------------------
4032 Bitmap Heap Scan on ti1
4033 Recheck Cond: (c1 < 100)
4034 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
4035 -> Bitmap Index Scan on ti1_pkey
4036 Index Cond: (c1 < 100)
4040 /*+BitmapScan(ti1 ti1_c2_key)*/
4041 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)';
4042 LOG: available indexes for BitmapScan(ti1): ti1_c2_key
4045 BitmapScan(ti1 ti1_c2_key)
4051 ------------------------------------------------------------------------------------------------------------------------------------------------------
4052 Bitmap Heap Scan on ti1
4053 Recheck Cond: (c2 = 1)
4054 Filter: ((c1 < 100) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
4055 -> Bitmap Index Scan on ti1_c2_key
4056 Index Cond: (c2 = 1)
4060 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4062 ---------------------
4067 /*+IndexOnlyScan(ti1 ti1_btree)*/
4068 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4069 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_btree)"
4070 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4072 ---------------------
4078 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4080 ----------------------------------
4081 Index Scan using ti1_uniq on ti1
4082 Index Cond: (c1 = 1)
4085 /*+IndexOnlyScan(ti1 ti1_hash)*/
4086 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4087 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_hash)"
4088 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4090 ----------------------------------
4091 Index Scan using ti1_uniq on ti1
4092 Index Cond: (c1 = 1)
4096 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 1;
4098 ----------------------------------
4099 Index Scan using ti1_uniq on ti1
4100 Index Cond: (c1 < 1)
4103 /*+IndexOnlyScan(ti1 ti1_gist)*/
4104 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 1;
4105 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_gist)"
4106 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4108 ----------------------------------
4109 Index Scan using ti1_uniq on ti1
4110 Index Cond: (c1 < 1)
4114 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4116 ----------------------------------
4117 Index Scan using ti1_uniq on ti1
4118 Index Cond: (c1 = 1)
4121 /*+IndexOnlyScan(ti1 ti1_gin)*/
4122 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4123 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_gin)"
4124 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4126 ----------------------------------
4127 Index Scan using ti1_uniq on ti1
4128 Index Cond: (c1 = 1)
4132 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 100;
4134 ----------------------------------
4135 Index Scan using ti1_uniq on ti1
4136 Index Cond: (c1 < 100)
4139 /*+IndexOnlyScan(ti1 ti1_expr)*/
4140 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 100;
4141 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_expr)"
4142 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4144 ----------------------------------
4145 Index Scan using ti1_uniq on ti1
4146 Index Cond: (c1 < 100)
4150 EXPLAIN (COSTS false) SELECT c4 FROM s1.ti1 WHERE lower(c4) >= '1';
4152 ------------------------------------
4154 Filter: (lower(c4) >= '1'::text)
4157 /*+IndexOnlyScan(ti1 ti1_pred)*/
4158 EXPLAIN (COSTS false) SELECT c4 FROM s1.ti1 WHERE lower(c4) >= '1';
4159 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pred)"
4160 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4162 ------------------------------------
4164 Filter: (lower(c4) >= '1'::text)
4168 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4170 ---------------------
4175 /*+IndexOnlyScan(ti1 ti1_uniq)*/
4176 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4177 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_uniq)"
4178 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4180 ---------------------
4186 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4188 ---------------------
4193 /*+IndexOnlyScan(ti1 ti1_multi)*/
4194 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4195 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_multi)"
4196 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4198 ---------------------
4204 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE to_tsvector('english', c4) @@ 'a & b';
4206 -----------------------------------------------------------------------------------------
4207 Bitmap Heap Scan on ti1
4208 Recheck Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4209 -> Bitmap Index Scan on ti1_ts
4210 Index Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4213 /*+IndexOnlyScan(ti1 ti1_ts)*/
4214 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE to_tsvector('english', c4) @@ 'a & b';
4215 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_ts)"
4216 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4218 -----------------------------------------------------------------------------------------
4219 Bitmap Heap Scan on ti1
4220 Recheck Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4221 -> Bitmap Index Scan on ti1_ts
4222 Index Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4226 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4228 ---------------------
4233 /*+IndexOnlyScan(ti1 ti1_pkey)*/
4234 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4235 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pkey)"
4236 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4238 ---------------------
4244 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE c2 >= 1;
4246 ---------------------
4251 /*+IndexOnlyScan(ti1 ti1_c2_key)*/
4252 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE c2 >= 1;
4253 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_c2_key)"
4254 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4256 ---------------------
4262 ---- No. S-3-5 not used index
4265 /*+IndexScan(ti1 ti1_pred)*/
4266 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4267 LOG: available indexes for IndexScan(ti1): ti1_pred
4270 IndexScan(ti1 ti1_pred)
4276 ------------------------------------------------------------------------
4277 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4282 /*+BitmapScan(ti1 ti1_pred)*/
4283 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4284 LOG: available indexes for BitmapScan(ti1): ti1_pred
4287 BitmapScan(ti1 ti1_pred)
4293 ------------------------------------------------------------------------
4294 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4299 /*+IndexOnlyScan(ti1 ti1_pred)*/
4300 EXPLAIN (COSTS true) SELECT c1 FROM s1.ti1 WHERE c1 = 100;
4301 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pred)"
4302 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4304 --------------------------------------------------------------------
4305 Index Scan using ti1_uniq on ti1 (cost=0.00..8.27 rows=1 width=4)
4306 Index Cond: (c1 = 100)
4310 /*+IndexScan(ti1 not_exist)*/
4311 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4312 LOG: available indexes for IndexScan(ti1):
4315 IndexScan(ti1 not_exist)
4321 ------------------------------------------------------------------------
4322 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4327 /*+BitmapScan(ti1 not_exist)*/
4328 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4329 LOG: available indexes for BitmapScan(ti1):
4332 BitmapScan(ti1 not_exist)
4338 ------------------------------------------------------------------------
4339 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4344 /*+IndexOnlyScan(ti1 not_exist)*/
4345 EXPLAIN (COSTS true) SELECT c1 FROM s1.ti1 WHERE c1 = 100;
4346 INFO: hint syntax error at or near "IndexOnlyScan(ti1 not_exist)"
4347 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4349 --------------------------------------------------------------------
4350 Index Scan using ti1_uniq on ti1 (cost=0.00..8.27 rows=1 width=4)
4351 Index Cond: (c1 = 100)
4357 ---- No. S-3-6 query structure
4359 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4361 -----------------------------------------------
4363 Hash Cond: (t2.c1 = t1.c1)
4367 TID Cond: (ctid = '(1,1)'::tid)
4372 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE c1 = 100;
4381 ----------------------
4387 /*+SeqScan(t1)BitmapScan(t2)*/
4388 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4398 ----------------------------------------
4401 Filter: (ctid = '(1,1)'::tid)
4402 -> Bitmap Heap Scan on t2
4403 Recheck Cond: (c1 = t1.c1)
4404 -> Bitmap Index Scan on t2_i1
4405 Index Cond: (c1 = t1.c1)
4410 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4419 ---------------------------------------------
4421 Hash Cond: (t2.c1 = t1.c1)
4425 Filter: (ctid = '(1,1)'::tid)
4429 ---- No. S-3-7 query structure
4432 EXPLAIN (COSTS false)
4434 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.c1 = 1)
4435 SELECT max(b3t1.c1), (
4436 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4437 ) FROM s1.t1 b3t1 WHERE b3t1.c1 = (
4438 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4440 ---------------------------------------------------------------------
4442 InitPlan 2 (returns $1)
4444 InitPlan 1 (returns $0)
4446 -> Index Scan using t1_i1 on t1 b2t1
4447 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4448 InitPlan 4 (returns $3)
4450 InitPlan 3 (returns $2)
4452 -> Index Scan using t1_i1 on t1 b4t1
4453 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4454 InitPlan 5 (returns $4)
4456 -> Index Scan using t1_i1 on t1 b3t1
4457 Index Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4460 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4462 EXPLAIN (COSTS false)
4464 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.c1 = 1)
4465 SELECT max(b3t1.c1), (
4466 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4467 ) FROM s1.t1 b3t1 WHERE b3t1.c1 = (
4468 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4469 LOG: available indexes for IndexScan(b2t1): t1_pkey
4470 LOG: available indexes for IndexScan(b2t1): t1_pkey
4471 LOG: available indexes for BitmapScan(b3t1): t1_pkey
4472 LOG: available indexes for BitmapScan(b3t1): t1_pkey
4475 IndexScan(b2t1 t1_pkey)
4476 BitmapScan(b3t1 t1_pkey)
4484 ---------------------------------------------------------------------
4486 InitPlan 2 (returns $1)
4488 InitPlan 1 (returns $0)
4490 -> Index Scan using t1_pkey on t1 b2t1
4491 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4492 InitPlan 4 (returns $3)
4494 InitPlan 3 (returns $2)
4496 -> Seq Scan on t1 b4t1
4497 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
4498 InitPlan 5 (returns $4)
4500 -> Bitmap Heap Scan on t1 b3t1
4501 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4502 -> Bitmap Index Scan on t1_pkey
4503 Index Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4507 EXPLAIN (COSTS false)
4509 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4510 SELECT max(b3t1.c1), (
4511 SELECT max(b2t1.c1) FROM s1.t1 b2t1 JOIN s1.t2 b2t2 ON(b2t1.c1 = b2t2.c1) WHERE b2t1.c1 = 1
4512 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4513 SELECT max(b4t1.c1) FROM s1.t1 b4t1 JOIN s1.t2 b4t2 ON(b4t1.c1 = b4t2.c1) WHERE b4t1.c1 = 1);
4515 -------------------------------------------------------
4520 -> Index Scan using t1_i1 on t1 b1t1
4521 Index Cond: (c1 = 1)
4522 -> Seq Scan on t2 b1t2
4524 InitPlan 2 (returns $1)
4527 -> Index Scan using t1_i1 on t1 b2t1
4528 Index Cond: (c1 = 1)
4529 -> Seq Scan on t2 b2t2
4531 InitPlan 3 (returns $2)
4534 -> Index Scan using t1_i1 on t1 b4t1
4535 Index Cond: (c1 = 1)
4536 -> Seq Scan on t2 b4t2
4540 -> Index Scan using t1_i1 on t1 b3t1
4541 Index Cond: (c1 = $2)
4542 -> Seq Scan on t2 b3t2
4548 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4549 TidScan(b1t2)SeqScan(b2t2)IndexScan(b3t2 t2_pkey)BitmapScan(b4t2 t2_pkey)
4551 EXPLAIN (COSTS false)
4553 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4554 SELECT max(b3t1.c1), (
4555 SELECT max(b2t1.c1) FROM s1.t1 b2t1 JOIN s1.t2 b2t2 ON(b2t1.c1 = b2t2.c1) WHERE b2t1.c1 = 1
4556 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4557 SELECT max(b4t1.c1) FROM s1.t1 b4t1 JOIN s1.t2 b4t2 ON(b4t1.c1 = b4t2.c1) WHERE b4t1.c1 = 1);
4558 LOG: available indexes for IndexScan(b2t1): t1_pkey
4559 LOG: available indexes for BitmapScan(b4t2): t2_pkey
4560 LOG: available indexes for BitmapScan(b3t1): t1_pkey
4561 LOG: available indexes for IndexScan(b3t2): t2_pkey
4566 IndexScan(b2t1 t1_pkey)
4568 BitmapScan(b3t1 t1_pkey)
4569 IndexScan(b3t2 t2_pkey)
4571 BitmapScan(b4t2 t2_pkey)
4577 ---------------------------------------------------------
4582 -> Seq Scan on t1 b1t1
4584 -> Seq Scan on t2 b1t2
4586 InitPlan 2 (returns $1)
4589 -> Index Scan using t1_pkey on t1 b2t1
4590 Index Cond: (c1 = 1)
4591 -> Seq Scan on t2 b2t2
4593 InitPlan 3 (returns $2)
4596 -> Seq Scan on t1 b4t1
4598 -> Bitmap Heap Scan on t2 b4t2
4599 Recheck Cond: (c1 = 1)
4600 -> Bitmap Index Scan on t2_pkey
4601 Index Cond: (c1 = 1)
4604 -> Bitmap Heap Scan on t1 b3t1
4605 Recheck Cond: (c1 = $2)
4606 -> Bitmap Index Scan on t1_pkey
4607 Index Cond: (c1 = $2)
4610 -> Index Scan using t2_pkey on t2 b3t2
4611 Index Cond: (c1 = $2)
4615 EXPLAIN (COSTS false)
4617 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4618 SELECT max(b3t1.c1), (
4619 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4620 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4621 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4623 ---------------------------------------------------------------------
4628 -> Index Scan using t1_i1 on t1 b1t1
4629 Index Cond: (c1 = 1)
4630 -> Seq Scan on t2 b1t2
4632 InitPlan 3 (returns $2)
4634 InitPlan 2 (returns $1)
4636 -> Index Scan using t1_i1 on t1 b2t1
4637 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4638 InitPlan 5 (returns $4)
4640 InitPlan 4 (returns $3)
4642 -> Index Scan using t1_i1 on t1 b4t1
4643 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4646 -> Index Scan using t1_i1 on t1 b3t1
4647 Index Cond: (c1 = $4)
4648 -> Seq Scan on t2 b3t2
4654 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4655 TidScan(b1t2)IndexScan(b3t2 t2_pkey)
4657 EXPLAIN (COSTS false)
4659 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4660 SELECT max(b3t1.c1), (
4661 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4662 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4663 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4664 LOG: available indexes for IndexScan(b2t1): t1_pkey
4665 LOG: available indexes for IndexScan(b2t1): t1_pkey
4666 LOG: available indexes for BitmapScan(b3t1): t1_pkey
4667 LOG: available indexes for IndexScan(b3t2): t2_pkey
4672 IndexScan(b2t1 t1_pkey)
4673 BitmapScan(b3t1 t1_pkey)
4674 IndexScan(b3t2 t2_pkey)
4681 ---------------------------------------------------------------------
4686 -> Seq Scan on t1 b1t1
4688 -> Seq Scan on t2 b1t2
4690 InitPlan 3 (returns $2)
4692 InitPlan 2 (returns $1)
4694 -> Index Scan using t1_pkey on t1 b2t1
4695 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4696 InitPlan 5 (returns $4)
4698 InitPlan 4 (returns $3)
4700 -> Seq Scan on t1 b4t1
4701 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
4704 -> Bitmap Heap Scan on t1 b3t1
4705 Recheck Cond: (c1 = $4)
4706 -> Bitmap Index Scan on t1_pkey
4707 Index Cond: (c1 = $4)
4710 -> Index Scan using t2_pkey on t2 b3t2
4711 Index Cond: (c1 = $4)
4715 ---- No. S-3-8 inheritance table select type
4718 EXPLAIN (COSTS false) SELECT * FROM ONLY s1.p1 WHERE c1 = 1;
4720 --------------------
4726 EXPLAIN (COSTS false) SELECT * FROM ONLY s1.p1 WHERE c1 = 1;
4735 -----------------------------
4736 Index Scan using p1_i on p1
4737 Index Cond: (c1 = 1)
4741 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4743 ---------------------------------
4748 -> Seq Scan on p1c1 p1
4753 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4762 ------------------------------------------------
4765 -> Index Scan using p1_i on p1
4766 Index Cond: (c1 = 1)
4767 -> Index Scan using p1c1_i on p1c1 p1
4768 Index Cond: (c1 = 1)
4772 ---- No. S-3-9 inheritance table number
4775 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4777 ---------------------------------
4782 -> Seq Scan on p1c1 p1
4787 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4796 ------------------------------------------------
4799 -> Index Scan using p1_i on p1
4800 Index Cond: (c1 = 1)
4801 -> Index Scan using p1c1_i on p1c1 p1
4802 Index Cond: (c1 = 1)
4806 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4808 -----------------------------------
4813 -> Seq Scan on p2c1 p2
4815 -> Seq Scan on p2c1c1 p2
4820 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4829 ----------------------------------------------------
4832 -> Index Scan using p2_i on p2
4833 Index Cond: (c1 = 1)
4834 -> Index Scan using p2c1_i on p2c1 p2
4835 Index Cond: (c1 = 1)
4836 -> Index Scan using p2c1c1_i on p2c1c1 p2
4837 Index Cond: (c1 = 1)
4841 ---- No. S-3-10 inheritance table specified table
4843 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4845 -----------------------------------
4850 -> Seq Scan on p2c1 p2
4852 -> Seq Scan on p2c1c1 p2
4858 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4867 ----------------------------------------------------
4870 -> Index Scan using p2_i on p2
4871 Index Cond: (c1 = 1)
4872 -> Index Scan using p2c1_i on p2c1 p2
4873 Index Cond: (c1 = 1)
4874 -> Index Scan using p2c1c1_i on p2c1c1 p2
4875 Index Cond: (c1 = 1)
4879 /*+IndexScan(p2c1)*/
4880 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4889 -----------------------------------
4894 -> Seq Scan on p2c1 p2
4896 -> Seq Scan on p2c1c1 p2
4901 /*+IndexScan(p2 p2_pkey p2c1_pkey p2c1c1_pkey)*/
4902 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4903 LOG: available indexes for IndexScan(p2): p2_pkey
4904 LOG: available indexes for IndexScan(p2c1): p2c1_pkey
4905 LOG: available indexes for IndexScan(p2c2):
4906 LOG: available indexes for IndexScan(p2c3):
4907 LOG: available indexes for IndexScan(p2c1c1): p2c1c1_pkey
4908 LOG: available indexes for IndexScan(p2c1c2):
4909 LOG: available indexes for IndexScan(p2c2c1):
4910 LOG: available indexes for IndexScan(p2c2c2):
4911 LOG: available indexes for IndexScan(p2c3c1):
4912 LOG: available indexes for IndexScan(p2c3c2):
4915 IndexScan(p2 p2_pkey p2c1_pkey p2c1c1_pkey)
4921 -------------------------------------------------------
4924 -> Index Scan using p2_pkey on p2
4925 Index Cond: (c1 = 1)
4926 -> Index Scan using p2c1_pkey on p2c1 p2
4927 Index Cond: (c1 = 1)
4928 -> Index Scan using p2c1c1_pkey on p2c1c1 p2
4929 Index Cond: (c1 = 1)
4933 /*+IndexScan(p2 p2c1_pkey)*/
4934 EXPLAIN (COSTS true) SELECT * FROM s1.p2 WHERE c1 = 1;
4935 LOG: available indexes for IndexScan(p2):
4936 LOG: available indexes for IndexScan(p2c1): p2c1_pkey
4937 LOG: available indexes for IndexScan(p2c2):
4938 LOG: available indexes for IndexScan(p2c3):
4939 LOG: available indexes for IndexScan(p2c1c1):
4940 LOG: available indexes for IndexScan(p2c1c2):
4941 LOG: available indexes for IndexScan(p2c2c1):
4942 LOG: available indexes for IndexScan(p2c2c2):
4943 LOG: available indexes for IndexScan(p2c3c1):
4944 LOG: available indexes for IndexScan(p2c3c2):
4947 IndexScan(p2 p2c1_pkey)
4953 ------------------------------------------------------------------------------------------
4954 Result (cost=10000000000.00..20000000009.89 rows=3 width=34)
4955 -> Append (cost=10000000000.00..20000000009.89 rows=3 width=34)
4956 -> Seq Scan on p2 (cost=10000000000.00..10000000000.00 rows=1 width=44)
4958 -> Index Scan using p2c1_pkey on p2c1 p2 (cost=0.00..8.27 rows=1 width=44)
4959 Index Cond: (c1 = 1)
4960 -> Seq Scan on p2c1c1 p2 (cost=10000000000.00..10000000001.62 rows=1 width=14)
4967 ---- No. S-3-11 specified same table
4970 /*+IndexScan(ti1) BitmapScan(ti1)*/
4971 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4972 INFO: hint syntax error at or near "IndexScan(ti1) BitmapScan(ti1)"
4973 DETAIL: Conflict scan method hint.
4983 -------------------------------------
4984 Bitmap Heap Scan on ti1
4985 Recheck Cond: (c1 = 1)
4986 Filter: (ctid = '(1,1)'::tid)
4987 -> Bitmap Index Scan on ti1_uniq
4988 Index Cond: (c1 = 1)
4992 /*+IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)*/
4993 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4994 INFO: hint syntax error at or near "IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
4995 DETAIL: Conflict scan method hint.
4996 LOG: available indexes for BitmapScan(ti1): ti1_btree
4999 BitmapScan(ti1 ti1_btree)
5002 IndexScan(ti1 ti1_pkey)
5006 --------------------------------------
5007 Bitmap Heap Scan on ti1
5008 Recheck Cond: (c1 = 1)
5009 Filter: (ctid = '(1,1)'::tid)
5010 -> Bitmap Index Scan on ti1_btree
5011 Index Cond: (c1 = 1)
5015 /*+BitmapScan(ti1) IndexScan(ti1) BitmapScan(ti1)*/
5016 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5017 INFO: hint syntax error at or near "BitmapScan(ti1) IndexScan(ti1) BitmapScan(ti1)"
5018 DETAIL: Conflict scan method hint.
5019 INFO: hint syntax error at or near "IndexScan(ti1) BitmapScan(ti1)"
5020 DETAIL: Conflict scan method hint.
5031 -------------------------------------
5032 Bitmap Heap Scan on ti1
5033 Recheck Cond: (c1 = 1)
5034 Filter: (ctid = '(1,1)'::tid)
5035 -> Bitmap Index Scan on ti1_uniq
5036 Index Cond: (c1 = 1)
5040 /*+BitmapScan(ti1 ti1_hash) IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)*/
5041 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5042 INFO: hint syntax error at or near "BitmapScan(ti1 ti1_hash) IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
5043 DETAIL: Conflict scan method hint.
5044 INFO: hint syntax error at or near "IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
5045 DETAIL: Conflict scan method hint.
5046 LOG: available indexes for BitmapScan(ti1): ti1_btree
5049 BitmapScan(ti1 ti1_btree)
5052 BitmapScan(ti1 ti1_hash)
5053 IndexScan(ti1 ti1_pkey)
5057 --------------------------------------
5058 Bitmap Heap Scan on ti1
5059 Recheck Cond: (c1 = 1)
5060 Filter: (ctid = '(1,1)'::tid)
5061 -> Bitmap Index Scan on ti1_btree
5062 Index Cond: (c1 = 1)
5066 ---- No. S-3-12 message output
5070 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5079 ------------------------------------------------
5081 Filter: ((c1 = 1) AND (ctid = '(1,1)'::tid))
5085 /*+SeqScan(ti1 ti1_pkey)*/
5086 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5087 INFO: hint syntax error at or near ""
5088 DETAIL: SeqScan hint accepts only one relation.
5094 SeqScan(ti1 ti1_pkey)
5097 -----------------------------------
5099 TID Cond: (ctid = '(1,1)'::tid)
5104 /*+SeqScan(ti1 ti1_pkey ti1_btree)*/
5105 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5106 INFO: hint syntax error at or near ""
5107 DETAIL: SeqScan hint accepts only one relation.
5113 SeqScan(ti1 ti1_pkey ti1_btree)
5116 -----------------------------------
5118 TID Cond: (ctid = '(1,1)'::tid)
5124 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5133 ----------------------------------
5134 Index Scan using ti1_uniq on ti1
5135 Index Cond: (c1 = 1)
5136 Filter: (ctid = '(1,1)'::tid)
5140 /*+IndexScan(ti1 ti1_pkey)*/
5141 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5142 LOG: available indexes for IndexScan(ti1): ti1_pkey
5145 IndexScan(ti1 ti1_pkey)
5151 ----------------------------------
5152 Index Scan using ti1_pkey on ti1
5153 Index Cond: (c1 = 1)
5154 Filter: (ctid = '(1,1)'::tid)
5158 /*+IndexScan(ti1 ti1_pkey ti1_btree)*/
5159 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5160 LOG: available indexes for IndexScan(ti1): ti1_btree ti1_pkey
5163 IndexScan(ti1 ti1_pkey ti1_btree)
5169 -----------------------------------
5170 Index Scan using ti1_btree on ti1
5171 Index Cond: (c1 = 1)
5172 Filter: (ctid = '(1,1)'::tid)
5176 /*+BitmapScan(ti1)*/
5177 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5186 -------------------------------------
5187 Bitmap Heap Scan on ti1
5188 Recheck Cond: (c1 = 1)
5189 Filter: (ctid = '(1,1)'::tid)
5190 -> Bitmap Index Scan on ti1_uniq
5191 Index Cond: (c1 = 1)
5195 /*+BitmapScan(ti1 ti1_pkey)*/
5196 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5197 LOG: available indexes for BitmapScan(ti1): ti1_pkey
5200 BitmapScan(ti1 ti1_pkey)
5206 -------------------------------------
5207 Bitmap Heap Scan on ti1
5208 Recheck Cond: (c1 = 1)
5209 Filter: (ctid = '(1,1)'::tid)
5210 -> Bitmap Index Scan on ti1_pkey
5211 Index Cond: (c1 = 1)
5215 /*+BitmapScan(ti1 ti1_pkey ti1_btree)*/
5216 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5217 LOG: available indexes for BitmapScan(ti1): ti1_btree ti1_pkey
5220 BitmapScan(ti1 ti1_pkey ti1_btree)
5226 --------------------------------------
5227 Bitmap Heap Scan on ti1
5228 Recheck Cond: (c1 = 1)
5229 Filter: (ctid = '(1,1)'::tid)
5230 -> Bitmap Index Scan on ti1_btree
5231 Index Cond: (c1 = 1)
5236 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5245 -----------------------------------
5247 TID Cond: (ctid = '(1,1)'::tid)
5252 /*+TidScan(ti1 ti1_pkey)*/
5253 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5254 INFO: hint syntax error at or near ""
5255 DETAIL: TidScan hint accepts only one relation.
5261 TidScan(ti1 ti1_pkey)
5264 -----------------------------------
5266 TID Cond: (ctid = '(1,1)'::tid)
5271 /*+TidScan(ti1 ti1_pkey ti1_btree)*/
5272 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5273 INFO: hint syntax error at or near ""
5274 DETAIL: TidScan hint accepts only one relation.
5280 TidScan(ti1 ti1_pkey ti1_btree)
5283 -----------------------------------
5285 TID Cond: (ctid = '(1,1)'::tid)
5291 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5300 -----------------------------------
5302 TID Cond: (ctid = '(1,1)'::tid)
5307 /*+NoSeqScan(ti1 ti1_pkey)*/
5308 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5309 INFO: hint syntax error at or near ""
5310 DETAIL: NoSeqScan hint accepts only one relation.
5316 NoSeqScan(ti1 ti1_pkey)
5319 -----------------------------------
5321 TID Cond: (ctid = '(1,1)'::tid)
5326 /*+NoSeqScan(ti1 ti1_pkey ti1_btree)*/
5327 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5328 INFO: hint syntax error at or near ""
5329 DETAIL: NoSeqScan hint accepts only one relation.
5335 NoSeqScan(ti1 ti1_pkey ti1_btree)
5338 -----------------------------------
5340 TID Cond: (ctid = '(1,1)'::tid)
5345 /*+NoIndexScan(ti1)*/
5346 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5355 -----------------------------------
5357 TID Cond: (ctid = '(1,1)'::tid)
5362 /*+NoIndexScan(ti1 ti1_pkey)*/
5363 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5364 INFO: hint syntax error at or near ""
5365 DETAIL: NoIndexScan hint accepts only one relation.
5371 NoIndexScan(ti1 ti1_pkey)
5374 -----------------------------------
5376 TID Cond: (ctid = '(1,1)'::tid)
5381 /*+NoIndexScan(ti1 ti1_pkey ti1_btree)*/
5382 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5383 INFO: hint syntax error at or near ""
5384 DETAIL: NoIndexScan hint accepts only one relation.
5390 NoIndexScan(ti1 ti1_pkey ti1_btree)
5393 -----------------------------------
5395 TID Cond: (ctid = '(1,1)'::tid)
5400 /*+NoBitmapScan(ti1)*/
5401 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5410 -----------------------------------
5412 TID Cond: (ctid = '(1,1)'::tid)
5417 /*+NoBitmapScan(ti1 ti1_pkey)*/
5418 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5419 INFO: hint syntax error at or near ""
5420 DETAIL: NoBitmapScan hint accepts only one relation.
5426 NoBitmapScan(ti1 ti1_pkey)
5429 -----------------------------------
5431 TID Cond: (ctid = '(1,1)'::tid)
5436 /*+NoBitmapScan(ti1 ti1_pkey ti1_btree)*/
5437 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5438 INFO: hint syntax error at or near ""
5439 DETAIL: NoBitmapScan hint accepts only one relation.
5445 NoBitmapScan(ti1 ti1_pkey ti1_btree)
5448 -----------------------------------
5450 TID Cond: (ctid = '(1,1)'::tid)
5456 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5465 ----------------------------------
5466 Index Scan using ti1_uniq on ti1
5467 Index Cond: (c1 = 1)
5468 Filter: (ctid = '(1,1)'::tid)
5472 /*+NoTidScan(ti1 ti1_pkey)*/
5473 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5474 INFO: hint syntax error at or near ""
5475 DETAIL: NoTidScan hint accepts only one relation.
5481 NoTidScan(ti1 ti1_pkey)
5484 -----------------------------------
5486 TID Cond: (ctid = '(1,1)'::tid)
5491 /*+NoTidScan(ti1 ti1_pkey ti1_btree)*/
5492 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5493 INFO: hint syntax error at or near ""
5494 DETAIL: NoTidScan hint accepts only one relation.
5500 NoTidScan(ti1 ti1_pkey ti1_btree)
5503 -----------------------------------
5505 TID Cond: (ctid = '(1,1)'::tid)
5510 /*+IndexOnlyScan(ti1)*/
5511 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5512 INFO: hint syntax error at or near "IndexOnlyScan(ti1)"
5513 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
5515 ---------------------
5521 /*+IndexOnlyScan(ti1 ti1_pkey)*/
5522 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5523 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pkey)"
5524 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
5526 ---------------------
5532 /*+IndexOnlyScan(ti1 ti1_pkey ti1_btree)*/
5533 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5534 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pkey ti1_btree)"
5535 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
5537 ---------------------
5543 /*+NoIndexOnlyScan(ti1)*/
5544 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5545 INFO: hint syntax error at or near "NoIndexOnlyScan(ti1)"
5546 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
5548 ----------------------------------
5549 Index Scan using ti1_uniq on ti1
5550 Index Cond: (c1 = 1)
5554 /*+NoIndexOnlyScan(ti1 ti1_pkey)*/
5555 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5556 INFO: hint syntax error at or near "NoIndexOnlyScan(ti1 ti1_pkey)"
5557 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
5559 ----------------------------------
5560 Index Scan using ti1_uniq on ti1
5561 Index Cond: (c1 = 1)
5565 /*+NoIndexOnlyScan(ti1 ti1_pkey ti1_btree)*/
5566 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5567 INFO: hint syntax error at or near "NoIndexOnlyScan(ti1 ti1_pkey ti1_btree)"
5568 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
5570 ----------------------------------
5571 Index Scan using ti1_uniq on ti1
5572 Index Cond: (c1 = 1)