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 Only Scan using t1_i1 on t1
269 InitPlan 2 (returns $1)
271 InitPlan 1 (returns $0)
273 -> Index Only 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 Only 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 Only 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 Only 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 Only Scan using t1_i1 on t1
568 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
569 -> Index Scan using t1_i1 on t1
576 EXPLAIN (COSTS false) SELECT * FROM s1.v1 WHERE v1.c1 = 1;
578 -----------------------------------
579 Index Scan using t1_i1 on t1 v1t1
584 EXPLAIN (COSTS false) SELECT * FROM s1.v1 WHERE v1.c1 = 1;
593 -----------------------------------
594 Index Scan using t1_i1 on t1 v1t1
599 EXPLAIN (COSTS false) SELECT * FROM (SELECT * FROM s1.t1 WHERE t1.c1 = 1) AS s1 WHERE s1.c1 = 1;
601 ------------------------------
602 Index Scan using t1_i1 on t1
607 EXPLAIN (COSTS false) SELECT * FROM (SELECT * FROM s1.t1 WHERE t1.c1 = 1) AS s1 WHERE s1.c1 = 1;
616 ------------------------------
617 Index Scan using t1_i1 on t1
622 ---- No. S-2-1 complexity query block
625 EXPLAIN (COSTS false)
626 SELECT max(bmt1.c1), (
627 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
629 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
632 ------------------------------------------------------------------------
634 InitPlan 1 (returns $0)
637 Merge Cond: (b1t1.c1 = b1t2.c1)
639 Merge Cond: (b1t1.c1 = b1t4.c1)
641 Merge Cond: (b1t1.c1 = b1t3.c1)
642 -> Index Only Scan using t1_i1 on t1 b1t1
643 -> Index Only Scan using t3_i1 on t3 b1t3
644 -> Index Only 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 Only Scan using t1_i1 on t1 bmt1
655 -> Index Only Scan using t3_i1 on t3 bmt3
656 -> Index Only 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: candidate index for "b1t3": t3_pkey
672 LOG: candidate index for "b1t4": t4_pkey
673 LOG: candidate index for "bmt2": t2_pkey
674 LOG: candidate index for "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 $2)
695 Hash Cond: (b1t2.c1 = b1t1.c1)
697 Join Filter: (b1t2.c1 = b1t3.c1)
699 -> Seq Scan on t2 b1t2
700 -> Bitmap Heap Scan on t4 b1t4
701 Recheck Cond: (c1 = b1t2.c1)
702 -> Bitmap Index Scan on t4_pkey
703 Index Cond: (c1 = b1t2.c1)
704 -> Index Scan using t3_pkey on t3 b1t3
705 Index Cond: (c1 = b1t4.c1)
707 -> Seq Scan on t1 b1t1
709 Hash Cond: (bmt1.c1 = bmt4.c1)
712 Hash Cond: (bmt1.c1 = bmt2.c1)
713 -> Seq Scan on t1 bmt1
715 -> Index Scan using t2_pkey on t2 bmt2
716 -> Bitmap Heap Scan on t3 bmt3
717 Recheck Cond: (c1 = bmt1.c1)
718 -> Bitmap Index Scan on t3_pkey
719 Index Cond: (c1 = bmt1.c1)
721 -> Seq Scan on t4 bmt4
725 EXPLAIN (COSTS false)
726 SELECT max(bmt1.c1), (
727 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
729 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
731 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
734 ------------------------------------------------------------------------
736 InitPlan 1 (returns $0)
739 Merge Cond: (b1t1.c1 = b1t2.c1)
741 Merge Cond: (b1t1.c1 = b1t4.c1)
743 Merge Cond: (b1t1.c1 = b1t3.c1)
744 -> Index Only Scan using t1_i1 on t1 b1t1
745 -> Index Only Scan using t3_i1 on t3 b1t3
746 -> Index Only Scan using t4_i1 on t4 b1t4
749 -> Seq Scan on t2 b1t2
750 InitPlan 2 (returns $1)
753 Merge Cond: (b2t1.c1 = b2t2.c1)
755 Merge Cond: (b2t1.c1 = b2t4.c1)
757 Merge Cond: (b2t1.c1 = b2t3.c1)
758 -> Index Only Scan using t1_i1 on t1 b2t1
759 -> Index Only Scan using t3_i1 on t3 b2t3
760 -> Index Only Scan using t4_i1 on t4 b2t4
763 -> Seq Scan on t2 b2t2
765 Merge Cond: (bmt1.c1 = bmt2.c1)
767 Merge Cond: (bmt1.c1 = bmt4.c1)
769 Merge Cond: (bmt1.c1 = bmt3.c1)
770 -> Index Only Scan using t1_i1 on t1 bmt1
771 -> Index Only Scan using t3_i1 on t3 bmt3
772 -> Index Only Scan using t4_i1 on t4 bmt4
775 -> Seq Scan on t2 bmt2
778 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
779 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
780 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
782 EXPLAIN (COSTS false)
783 SELECT max(bmt1.c1), (
784 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
786 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
788 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
790 LOG: candidate index for "b1t3": t3_pkey
791 LOG: candidate index for "b1t4": t4_pkey
792 LOG: candidate index for "b2t1": t1_pkey
793 LOG: candidate index for "b2t4": t4_pkey
794 LOG: candidate index for "bmt2": t2_pkey
795 LOG: candidate index for "bmt3": t3_pkey
800 IndexScan(b1t3 t3_pkey)
801 BitmapScan(b1t4 t4_pkey)
802 BitmapScan(b2t1 t1_pkey)
805 IndexScan(b2t4 t4_pkey)
807 IndexScan(bmt2 t2_pkey)
808 BitmapScan(bmt3 t3_pkey)
815 ---------------------------------------------------------------------
817 InitPlan 1 (returns $2)
820 Hash Cond: (b1t2.c1 = b1t1.c1)
822 Join Filter: (b1t2.c1 = b1t3.c1)
824 -> Seq Scan on t2 b1t2
825 -> Bitmap Heap Scan on t4 b1t4
826 Recheck Cond: (c1 = b1t2.c1)
827 -> Bitmap Index Scan on t4_pkey
828 Index Cond: (c1 = b1t2.c1)
829 -> Index Scan using t3_pkey on t3 b1t3
830 Index Cond: (c1 = b1t4.c1)
832 -> Seq Scan on t1 b1t1
833 InitPlan 2 (returns $4)
836 Hash Cond: (b2t1.c1 = b2t3.c1)
838 Merge Cond: (b2t1.c1 = b2t2.c1)
840 -> Index Scan using t4_pkey on t4 b2t4
841 -> Bitmap Heap Scan on t1 b2t1
842 Recheck Cond: (c1 = b2t4.c1)
843 -> Bitmap Index Scan on t1_pkey
844 Index Cond: (c1 = b2t4.c1)
847 -> Seq Scan on t2 b2t2
849 -> Seq Scan on t3 b2t3
851 Hash Cond: (bmt1.c1 = bmt4.c1)
854 Hash Cond: (bmt1.c1 = bmt2.c1)
855 -> Seq Scan on t1 bmt1
857 -> Index Scan using t2_pkey on t2 bmt2
858 -> Bitmap Heap Scan on t3 bmt3
859 Recheck Cond: (c1 = bmt1.c1)
860 -> Bitmap Index Scan on t3_pkey
861 Index Cond: (c1 = bmt1.c1)
863 -> Seq Scan on t4 bmt4
867 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;
869 ----------------------------------------------------------------
872 Merge Cond: (bmt1.c1 = bmt2.c1)
874 Merge Cond: (bmt1.c1 = bmt4.c1)
876 Merge Cond: (bmt1.c1 = bmt3.c1)
877 -> Index Only Scan using t1_i1 on t1 bmt1
878 -> Index Only Scan using t3_i1 on t3 bmt3
879 -> Index Only Scan using t4_i1 on t4 bmt4
882 -> Seq Scan on t2 bmt2
885 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
887 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;
888 LOG: candidate index for "bmt2": t2_pkey
889 LOG: candidate index for "bmt3": t3_pkey
893 IndexScan(bmt2 t2_pkey)
894 BitmapScan(bmt3 t3_pkey)
901 -------------------------------------------------------------------
904 Hash Cond: (bmt1.c1 = bmt4.c1)
907 Hash Cond: (bmt1.c1 = bmt2.c1)
908 -> Seq Scan on t1 bmt1
910 -> Index Scan using t2_pkey on t2 bmt2
911 -> Bitmap Heap Scan on t3 bmt3
912 Recheck Cond: (c1 = bmt1.c1)
913 -> Bitmap Index Scan on t3_pkey
914 Index Cond: (c1 = bmt1.c1)
916 -> Seq Scan on t4 bmt4
920 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;
922 ----------------------------------------------------------------
925 Merge Cond: (bmt1.c1 = bmt2.c1)
927 Merge Cond: (bmt1.c1 = bmt4.c1)
929 Merge Cond: (bmt1.c1 = bmt3.c1)
930 -> Index Only Scan using t1_i1 on t1 bmt1
931 -> Index Only Scan using t3_i1 on t3 bmt3
932 -> Index Only Scan using t4_i1 on t4 bmt4
935 -> Seq Scan on t2 bmt2
938 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
940 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;
941 LOG: candidate index for "bmt2": t2_pkey
942 LOG: candidate index for "bmt3": t3_pkey
946 IndexScan(bmt2 t2_pkey)
947 BitmapScan(bmt3 t3_pkey)
954 -------------------------------------------------------------------
957 Hash Cond: (bmt1.c1 = bmt4.c1)
960 Hash Cond: (bmt1.c1 = bmt2.c1)
961 -> Seq Scan on t1 bmt1
963 -> Index Scan using t2_pkey on t2 bmt2
964 -> Bitmap Heap Scan on t3 bmt3
965 Recheck Cond: (c1 = bmt1.c1)
966 -> Bitmap Index Scan on t3_pkey
967 Index Cond: (c1 = bmt1.c1)
969 -> Seq Scan on t4 bmt4
973 EXPLAIN (COSTS false)
974 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
976 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
980 ------------------------------------------------------------------------
982 InitPlan 1 (returns $0)
985 Merge Cond: (b1t1.c1 = b1t2.c1)
987 Merge Cond: (b1t1.c1 = b1t4.c1)
989 Merge Cond: (b1t1.c1 = b1t3.c1)
990 -> Index Only Scan using t1_i1 on t1 b1t1
991 -> Index Only Scan using t3_i1 on t3 b1t3
992 -> Index Only Scan using t4_i1 on t4 b1t4
995 -> Seq Scan on t2 b1t2
997 Merge Cond: (bmt1.c1 = bmt2.c1)
999 Merge Cond: (bmt1.c1 = bmt4.c1)
1001 Merge Cond: (bmt1.c1 = bmt3.c1)
1002 -> Index Only Scan using t1_i1 on t1 bmt1
1004 -> Index Only Scan using t3_i1 on t3 bmt3
1005 -> Index Only Scan using t4_i1 on t4 bmt4
1008 -> Seq Scan on t2 bmt2
1011 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1012 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1014 EXPLAIN (COSTS false)
1015 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
1017 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
1020 LOG: candidate index for "b1t3": t3_pkey
1021 LOG: candidate index for "b1t4": t4_pkey
1022 LOG: candidate index for "bmt2": t2_pkey
1023 LOG: candidate index for "bmt3": t3_pkey
1028 IndexScan(b1t3 t3_pkey)
1029 BitmapScan(b1t4 t4_pkey)
1031 IndexScan(bmt2 t2_pkey)
1032 BitmapScan(bmt3 t3_pkey)
1039 --------------------------------------------------------------------
1041 InitPlan 1 (returns $2)
1044 Hash Cond: (b1t2.c1 = b1t1.c1)
1046 Join Filter: (b1t2.c1 = b1t3.c1)
1048 -> Seq Scan on t2 b1t2
1049 -> Bitmap Heap Scan on t4 b1t4
1050 Recheck Cond: (c1 = b1t2.c1)
1051 -> Bitmap Index Scan on t4_pkey
1052 Index Cond: (c1 = b1t2.c1)
1053 -> Index Scan using t3_pkey on t3 b1t3
1054 Index Cond: (c1 = b1t4.c1)
1056 -> Seq Scan on t1 b1t1
1058 Hash Cond: (bmt1.c1 = bmt4.c1)
1061 Hash Cond: (bmt1.c1 = bmt2.c1)
1062 -> Seq Scan on t1 bmt1
1065 -> Index Scan using t2_pkey on t2 bmt2
1066 -> Bitmap Heap Scan on t3 bmt3
1067 Recheck Cond: (c1 = bmt1.c1)
1068 -> Bitmap Index Scan on t3_pkey
1069 Index Cond: (c1 = bmt1.c1)
1071 -> Seq Scan on t4 bmt4
1075 EXPLAIN (COSTS false)
1076 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
1078 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
1080 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
1084 ------------------------------------------------------------------------
1086 InitPlan 1 (returns $0)
1089 Merge Cond: (b1t1.c1 = b1t2.c1)
1091 Merge Cond: (b1t1.c1 = b1t4.c1)
1093 Merge Cond: (b1t1.c1 = b1t3.c1)
1094 -> Index Only Scan using t1_i1 on t1 b1t1
1095 -> Index Only Scan using t3_i1 on t3 b1t3
1096 -> Index Only Scan using t4_i1 on t4 b1t4
1099 -> Seq Scan on t2 b1t2
1100 InitPlan 2 (returns $1)
1103 Merge Cond: (b2t1.c1 = b2t2.c1)
1105 Merge Cond: (b2t1.c1 = b2t4.c1)
1107 Merge Cond: (b2t1.c1 = b2t3.c1)
1108 -> Index Only Scan using t1_i1 on t1 b2t1
1109 -> Index Only Scan using t3_i1 on t3 b2t3
1110 -> Index Only Scan using t4_i1 on t4 b2t4
1113 -> Seq Scan on t2 b2t2
1115 Merge Cond: (bmt1.c1 = bmt2.c1)
1117 Merge Cond: (bmt1.c1 = bmt4.c1)
1119 Merge Cond: (bmt1.c1 = bmt3.c1)
1120 -> Index Only Scan using t1_i1 on t1 bmt1
1121 Filter: ((c1 <> $0) AND (c1 <> $1))
1122 -> Index Only Scan using t3_i1 on t3 bmt3
1123 -> Index Only Scan using t4_i1 on t4 bmt4
1126 -> Seq Scan on t2 bmt2
1129 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1130 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1131 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
1133 EXPLAIN (COSTS false)
1134 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
1136 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
1138 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
1141 LOG: candidate index for "b1t3": t3_pkey
1142 LOG: candidate index for "b1t4": t4_pkey
1143 LOG: candidate index for "b2t1": t1_pkey
1144 LOG: candidate index for "b2t4": t4_pkey
1145 LOG: candidate index for "bmt2": t2_pkey
1146 LOG: candidate index for "bmt3": t3_pkey
1151 IndexScan(b1t3 t3_pkey)
1152 BitmapScan(b1t4 t4_pkey)
1153 BitmapScan(b2t1 t1_pkey)
1156 IndexScan(b2t4 t4_pkey)
1158 IndexScan(bmt2 t2_pkey)
1159 BitmapScan(bmt3 t3_pkey)
1166 ---------------------------------------------------------------------
1168 InitPlan 1 (returns $2)
1171 Hash Cond: (b1t2.c1 = b1t1.c1)
1173 Join Filter: (b1t2.c1 = b1t3.c1)
1175 -> Seq Scan on t2 b1t2
1176 -> Bitmap Heap Scan on t4 b1t4
1177 Recheck Cond: (c1 = b1t2.c1)
1178 -> Bitmap Index Scan on t4_pkey
1179 Index Cond: (c1 = b1t2.c1)
1180 -> Index Scan using t3_pkey on t3 b1t3
1181 Index Cond: (c1 = b1t4.c1)
1183 -> Seq Scan on t1 b1t1
1184 InitPlan 2 (returns $4)
1187 Hash Cond: (b2t1.c1 = b2t3.c1)
1189 Merge Cond: (b2t1.c1 = b2t2.c1)
1191 -> Index Scan using t4_pkey on t4 b2t4
1192 -> Bitmap Heap Scan on t1 b2t1
1193 Recheck Cond: (c1 = b2t4.c1)
1194 -> Bitmap Index Scan on t1_pkey
1195 Index Cond: (c1 = b2t4.c1)
1198 -> Seq Scan on t2 b2t2
1200 -> Seq Scan on t3 b2t3
1202 Hash Cond: (bmt1.c1 = bmt4.c1)
1205 Hash Cond: (bmt1.c1 = bmt2.c1)
1206 -> Seq Scan on t1 bmt1
1207 Filter: ((c1 <> $2) AND (c1 <> $4))
1209 -> Index Scan using t2_pkey on t2 bmt2
1210 -> Bitmap Heap Scan on t3 bmt3
1211 Recheck Cond: (c1 = bmt1.c1)
1212 -> Bitmap Index Scan on t3_pkey
1213 Index Cond: (c1 = bmt1.c1)
1215 -> Seq Scan on t4 bmt4
1219 EXPLAIN (COSTS false)
1221 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
1223 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1225 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1229 ------------------------------------------------------------------------
1234 Merge Cond: (b1t1.c1 = b1t2.c1)
1236 Merge Cond: (b1t1.c1 = b1t4.c1)
1238 Merge Cond: (b1t1.c1 = b1t3.c1)
1239 -> Index Only Scan using t1_i1 on t1 b1t1
1240 -> Index Only Scan using t3_i1 on t3 b1t3
1241 -> Index Only Scan using t4_i1 on t4 b1t4
1244 -> Seq Scan on t2 b1t2
1246 Join Filter: (bmt1.c1 = bmt4.c1)
1248 Join Filter: (bmt2.c1 = bmt1.c1)
1251 Hash Cond: (bmt2.c1 = c1.c1)
1252 -> Seq Scan on t2 bmt2
1255 -> Index Only Scan using t3_i1 on t3 bmt3
1256 Index Cond: (c1 = bmt2.c1)
1257 -> Index Only Scan using t1_i1 on t1 bmt1
1258 Index Cond: (c1 = bmt3.c1)
1259 -> Index Only Scan using t4_i1 on t4 bmt4
1260 Index Cond: (c1 = bmt3.c1)
1263 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1264 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1266 EXPLAIN (COSTS false)
1268 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
1270 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1272 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1275 LOG: candidate index for "b1t3": t3_pkey
1276 LOG: candidate index for "b1t4": t4_pkey
1277 LOG: candidate index for "bmt2": t2_pkey
1278 LOG: candidate index for "bmt3": t3_pkey
1283 IndexScan(b1t3 t3_pkey)
1284 BitmapScan(b1t4 t4_pkey)
1286 IndexScan(bmt2 t2_pkey)
1287 BitmapScan(bmt3 t3_pkey)
1294 --------------------------------------------------------------------
1299 Hash Cond: (b1t2.c1 = b1t1.c1)
1301 Join Filter: (b1t2.c1 = b1t3.c1)
1303 -> Seq Scan on t2 b1t2
1304 -> Bitmap Heap Scan on t4 b1t4
1305 Recheck Cond: (c1 = b1t2.c1)
1306 -> Bitmap Index Scan on t4_pkey
1307 Index Cond: (c1 = b1t2.c1)
1308 -> Index Scan using t3_pkey on t3 b1t3
1309 Index Cond: (c1 = b1t4.c1)
1311 -> Seq Scan on t1 b1t1
1313 Join Filter: (bmt1.c1 = bmt4.c1)
1317 Hash Cond: (bmt1.c1 = c1.c1)
1318 -> Seq Scan on t1 bmt1
1321 -> Index Scan using t2_pkey on t2 bmt2
1322 Index Cond: (c1 = bmt1.c1)
1323 -> Bitmap Heap Scan on t3 bmt3
1324 Recheck Cond: (c1 = bmt1.c1)
1325 -> Bitmap Index Scan on t3_pkey
1326 Index Cond: (c1 = bmt1.c1)
1327 -> Seq Scan on t4 bmt4
1331 EXPLAIN (COSTS false)
1333 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
1336 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
1338 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1340 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1345 ------------------------------------------------------------------------
1350 Merge Cond: (b1t1.c1 = b1t2.c1)
1352 Merge Cond: (b1t1.c1 = b1t4.c1)
1354 Merge Cond: (b1t1.c1 = b1t3.c1)
1355 -> Index Only Scan using t1_i1 on t1 b1t1
1356 -> Index Only Scan using t3_i1 on t3 b1t3
1357 -> Index Only Scan using t4_i1 on t4 b1t4
1360 -> Seq Scan on t2 b1t2
1364 Merge Cond: (b2t1.c1 = b2t2.c1)
1366 Merge Cond: (b2t1.c1 = b2t4.c1)
1368 Merge Cond: (b2t1.c1 = b2t3.c1)
1369 -> Index Only Scan using t1_i1 on t1 b2t1
1370 -> Index Only Scan using t3_i1 on t3 b2t3
1371 -> Index Only Scan using t4_i1 on t4 b2t4
1374 -> Seq Scan on t2 b2t2
1376 Join Filter: (bmt1.c1 = c2.c1)
1378 Join Filter: (bmt1.c1 = bmt4.c1)
1380 Join Filter: (bmt2.c1 = bmt1.c1)
1383 Hash Cond: (bmt2.c1 = c1.c1)
1384 -> Seq Scan on t2 bmt2
1387 -> Index Only Scan using t3_i1 on t3 bmt3
1388 Index Cond: (c1 = bmt2.c1)
1389 -> Index Only Scan using t1_i1 on t1 bmt1
1390 Index Cond: (c1 = bmt3.c1)
1391 -> Index Only Scan using t4_i1 on t4 bmt4
1392 Index Cond: (c1 = bmt3.c1)
1396 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1397 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1398 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
1400 EXPLAIN (COSTS false)
1402 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
1405 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
1407 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1409 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1413 LOG: candidate index for "b1t3": t3_pkey
1414 LOG: candidate index for "b1t4": t4_pkey
1415 LOG: candidate index for "b2t1": t1_pkey
1416 LOG: candidate index for "b2t4": t4_pkey
1417 LOG: candidate index for "bmt2": t2_pkey
1418 LOG: candidate index for "bmt3": t3_pkey
1423 IndexScan(b1t3 t3_pkey)
1424 BitmapScan(b1t4 t4_pkey)
1425 BitmapScan(b2t1 t1_pkey)
1428 IndexScan(b2t4 t4_pkey)
1430 IndexScan(bmt2 t2_pkey)
1431 BitmapScan(bmt3 t3_pkey)
1438 ---------------------------------------------------------------------
1443 Hash Cond: (b1t2.c1 = b1t1.c1)
1445 Join Filter: (b1t2.c1 = b1t3.c1)
1447 -> Seq Scan on t2 b1t2
1448 -> Bitmap Heap Scan on t4 b1t4
1449 Recheck Cond: (c1 = b1t2.c1)
1450 -> Bitmap Index Scan on t4_pkey
1451 Index Cond: (c1 = b1t2.c1)
1452 -> Index Scan using t3_pkey on t3 b1t3
1453 Index Cond: (c1 = b1t4.c1)
1455 -> Seq Scan on t1 b1t1
1459 Hash Cond: (b2t1.c1 = b2t3.c1)
1461 Merge Cond: (b2t1.c1 = b2t2.c1)
1463 -> Index Scan using t4_pkey on t4 b2t4
1464 -> Bitmap Heap Scan on t1 b2t1
1465 Recheck Cond: (c1 = b2t4.c1)
1466 -> Bitmap Index Scan on t1_pkey
1467 Index Cond: (c1 = b2t4.c1)
1470 -> Seq Scan on t2 b2t2
1472 -> Seq Scan on t3 b2t3
1474 Join Filter: (bmt1.c1 = bmt4.c1)
1476 Join Filter: (bmt1.c1 = c2.c1)
1480 Hash Cond: (bmt1.c1 = c1.c1)
1481 -> Seq Scan on t1 bmt1
1484 -> Index Scan using t2_pkey on t2 bmt2
1485 Index Cond: (c1 = bmt1.c1)
1486 -> Bitmap Heap Scan on t3 bmt3
1487 Recheck Cond: (c1 = bmt1.c1)
1488 -> Bitmap Index Scan on t3_pkey
1489 Index Cond: (c1 = bmt1.c1)
1491 -> Seq Scan on t4 bmt4
1495 ---- No. S-2-2 the number of the tables per quiry block
1498 EXPLAIN (COSTS false)
1500 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = 1
1502 SELECT max(bmt1.c1), (
1503 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
1505 FROM s1.t1 bmt1, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = 1
1507 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = 1
1511 -----------------------------------------------------------------
1515 InitPlan 1 (returns $0)
1517 -> Tid Scan on t1 b1t1
1518 TID Cond: (ctid = '(1,1)'::tid)
1519 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1520 InitPlan 4 (returns $3)
1522 InitPlan 3 (returns $2)
1524 -> Tid Scan on t1 b2t1
1525 TID Cond: (ctid = '(1,1)'::tid)
1526 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1527 InitPlan 6 (returns $5)
1529 InitPlan 5 (returns $4)
1531 -> Tid Scan on t1 b3t1
1532 TID Cond: (ctid = '(1,1)'::tid)
1533 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1535 -> Tid Scan on t1 bmt1
1536 TID Cond: (ctid = '(1,1)'::tid)
1537 Filter: ((c1 <> $5) AND (c1 = 1))
1543 BitmapScan(b2t1 t1_pkey)
1544 IndexScan(b3t1 t1_pkey)
1546 EXPLAIN (COSTS false)
1548 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = 1
1550 SELECT max(bmt1.c1), (
1551 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
1553 FROM s1.t1 bmt1, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = 1
1555 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = 1
1558 LOG: candidate index for "b2t1": t1_pkey
1559 LOG: candidate index for "b2t1": t1_pkey
1560 LOG: candidate index for "b3t1": t1_pkey
1561 LOG: candidate index for "b3t1": t1_pkey
1565 BitmapScan(b2t1 t1_pkey)
1566 IndexScan(b3t1 t1_pkey)
1573 ---------------------------------------------------------------------------
1577 InitPlan 1 (returns $0)
1579 -> Tid Scan on t1 b1t1
1580 TID Cond: (ctid = '(1,1)'::tid)
1581 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1582 InitPlan 4 (returns $3)
1584 InitPlan 3 (returns $2)
1586 -> Bitmap Heap Scan on t1 b2t1
1587 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = 1))
1588 Filter: (ctid = '(1,1)'::tid)
1589 -> Bitmap Index Scan on t1_pkey
1590 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
1591 InitPlan 6 (returns $5)
1593 InitPlan 5 (returns $4)
1595 -> Index Scan using t1_pkey on t1 b3t1
1596 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
1597 Filter: (ctid = '(1,1)'::tid)
1599 -> Seq Scan on t1 bmt1
1600 Filter: ((c1 <> $5) AND (ctid = '(1,1)'::tid) AND (c1 = 1))
1605 EXPLAIN (COSTS false)
1607 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)'
1609 SELECT max(bmt1.c1), (
1610 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)'
1612 FROM s1.t1 bmt1, s1.t2 bmt2, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)'
1614 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)'
1618 -------------------------------------------------------
1623 Join Filter: (b1t1.c1 = b1t2.c1)
1624 -> Tid Scan on t1 b1t1
1625 TID Cond: (ctid = '(1,1)'::tid)
1626 -> Seq Scan on t2 b1t2
1627 Filter: (ctid = '(1,1)'::tid)
1628 InitPlan 2 (returns $1)
1631 Join Filter: (b2t1.c1 = b2t2.c1)
1632 -> Tid Scan on t1 b2t1
1633 TID Cond: (ctid = '(1,1)'::tid)
1634 -> Seq Scan on t2 b2t2
1635 Filter: (ctid = '(1,1)'::tid)
1636 InitPlan 3 (returns $2)
1639 Join Filter: (b3t1.c1 = b3t2.c1)
1640 -> Tid Scan on t1 b3t1
1641 TID Cond: (ctid = '(1,1)'::tid)
1642 -> Seq Scan on t2 b3t2
1643 Filter: (ctid = '(1,1)'::tid)
1646 Join Filter: (bmt1.c1 = bmt2.c1)
1647 -> Tid Scan on t1 bmt1
1648 TID Cond: (ctid = '(1,1)'::tid)
1650 -> Seq Scan on t2 bmt2
1651 Filter: (ctid = '(1,1)'::tid)
1655 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)
1656 TidScan(b1t1)SeqScan(b1t2)
1657 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)
1658 IndexScan(b3t1 t1_pkey)BitmapScan(b3t2 t2_pkey)
1660 EXPLAIN (COSTS false)
1662 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)'
1664 SELECT max(bmt1.c1), (
1665 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)'
1667 FROM s1.t1 bmt1, s1.t2 bmt2, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)'
1669 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)'
1672 LOG: candidate index for "b2t1": t1_pkey
1673 LOG: candidate index for "b3t1": t1_pkey
1674 LOG: candidate index for "b3t2": t2_pkey
1675 LOG: candidate index for "bmt2": t2_pkey
1680 BitmapScan(b2t1 t1_pkey)
1682 IndexScan(b3t1 t1_pkey)
1683 BitmapScan(b3t2 t2_pkey)
1685 IndexScan(bmt2 t2_pkey)
1691 --------------------------------------------------------------------
1696 Join Filter: (b1t1.c1 = b1t2.c1)
1697 -> Tid Scan on t1 b1t1
1698 TID Cond: (ctid = '(1,1)'::tid)
1699 -> Seq Scan on t2 b1t2
1700 Filter: (ctid = '(1,1)'::tid)
1701 InitPlan 2 (returns $2)
1704 -> Tid Scan on t2 b2t2
1705 TID Cond: (ctid = '(1,1)'::tid)
1706 -> Bitmap Heap Scan on t1 b2t1
1707 Recheck Cond: (c1 = b2t2.c1)
1708 Filter: (ctid = '(1,1)'::tid)
1709 -> Bitmap Index Scan on t1_pkey
1710 Index Cond: (c1 = b2t2.c1)
1711 InitPlan 3 (returns $4)
1714 -> Index Scan using t1_pkey on t1 b3t1
1715 Filter: (ctid = '(1,1)'::tid)
1716 -> Bitmap Heap Scan on t2 b3t2
1717 Recheck Cond: (c1 = b3t1.c1)
1718 Filter: (ctid = '(1,1)'::tid)
1719 -> Bitmap Index Scan on t2_pkey
1720 Index Cond: (c1 = b3t1.c1)
1723 -> Seq Scan on t1 bmt1
1724 Filter: ((c1 <> $4) AND (ctid = '(1,1)'::tid))
1725 -> Index Scan using t2_pkey on t2 bmt2
1726 Index Cond: (c1 = bmt1.c1)
1727 Filter: (ctid = '(1,1)'::tid)
1732 EXPLAIN (COSTS false)
1734 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)'
1736 SELECT max(bmt1.c1), (
1737 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)'
1739 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
1741 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)'
1745 -------------------------------------------------------------------
1750 Join Filter: (b1t1.c1 = b1t4.c1)
1752 Join Filter: (b1t1.c1 = b1t3.c1)
1754 Join Filter: (b1t1.c1 = b1t2.c1)
1755 -> Tid Scan on t1 b1t1
1756 TID Cond: (ctid = '(1,1)'::tid)
1757 -> Seq Scan on t2 b1t2
1758 Filter: (ctid = '(1,1)'::tid)
1759 -> Tid Scan on t3 b1t3
1760 TID Cond: (ctid = '(1,1)'::tid)
1761 -> Tid Scan on t4 b1t4
1762 TID Cond: (ctid = '(1,1)'::tid)
1763 InitPlan 2 (returns $1)
1766 Join Filter: (b2t1.c1 = b2t4.c1)
1768 Join Filter: (b2t1.c1 = b2t3.c1)
1770 Join Filter: (b2t1.c1 = b2t2.c1)
1771 -> Tid Scan on t1 b2t1
1772 TID Cond: (ctid = '(1,1)'::tid)
1773 -> Seq Scan on t2 b2t2
1774 Filter: (ctid = '(1,1)'::tid)
1775 -> Tid Scan on t3 b2t3
1776 TID Cond: (ctid = '(1,1)'::tid)
1777 -> Tid Scan on t4 b2t4
1778 TID Cond: (ctid = '(1,1)'::tid)
1779 InitPlan 3 (returns $2)
1782 Join Filter: (b3t1.c1 = b3t4.c1)
1784 Join Filter: (b3t1.c1 = b3t3.c1)
1786 Join Filter: (b3t1.c1 = b3t2.c1)
1787 -> Tid Scan on t1 b3t1
1788 TID Cond: (ctid = '(1,1)'::tid)
1789 -> Seq Scan on t2 b3t2
1790 Filter: (ctid = '(1,1)'::tid)
1791 -> Tid Scan on t3 b3t3
1792 TID Cond: (ctid = '(1,1)'::tid)
1793 -> Tid Scan on t4 b3t4
1794 TID Cond: (ctid = '(1,1)'::tid)
1796 Join Filter: (bmt1.c1 = c1.c1)
1798 Join Filter: (bmt1.c1 = bmt4.c1)
1800 Join Filter: (bmt1.c1 = bmt3.c1)
1802 Join Filter: (bmt1.c1 = bmt2.c1)
1803 -> Tid Scan on t1 bmt1
1804 TID Cond: (ctid = '(1,1)'::tid)
1806 -> Seq Scan on t2 bmt2
1807 Filter: (ctid = '(1,1)'::tid)
1808 -> Tid Scan on t3 bmt3
1809 TID Cond: (ctid = '(1,1)'::tid)
1810 -> Tid Scan on t4 bmt4
1811 TID Cond: (ctid = '(1,1)'::tid)
1815 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1816 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1817 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
1818 IndexScan(b3t1 t1_pkey)BitmapScan(b3t2 t2_pkey)TidScan(b3t3)SeqScan(b3t4)
1820 EXPLAIN (COSTS false)
1822 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)'
1824 SELECT max(bmt1.c1), (
1825 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)'
1827 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
1829 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)'
1832 LOG: candidate index for "b1t3": t3_pkey
1833 LOG: candidate index for "b1t4": t4_pkey
1834 LOG: candidate index for "b2t1": t1_pkey
1835 LOG: candidate index for "b2t4": t4_pkey
1836 LOG: candidate index for "b3t1": t1_pkey
1837 LOG: candidate index for "b3t2": t2_pkey
1838 LOG: candidate index for "bmt2": t2_pkey
1839 LOG: candidate index for "bmt3": t3_pkey
1844 IndexScan(b1t3 t3_pkey)
1845 BitmapScan(b1t4 t4_pkey)
1846 BitmapScan(b2t1 t1_pkey)
1849 IndexScan(b2t4 t4_pkey)
1850 IndexScan(b3t1 t1_pkey)
1851 BitmapScan(b3t2 t2_pkey)
1855 IndexScan(bmt2 t2_pkey)
1856 BitmapScan(bmt3 t3_pkey)
1863 --------------------------------------------------------------------------------
1870 Join Filter: (b1t1.c1 = b1t2.c1)
1871 -> Tid Scan on t1 b1t1
1872 TID Cond: (ctid = '(1,1)'::tid)
1873 -> Seq Scan on t2 b1t2
1874 Filter: (ctid = '(1,1)'::tid)
1875 -> Index Scan using t3_pkey on t3 b1t3
1876 Index Cond: (c1 = b1t1.c1)
1877 Filter: (ctid = '(1,1)'::tid)
1878 -> Bitmap Heap Scan on t4 b1t4
1879 Recheck Cond: (c1 = b1t1.c1)
1880 Filter: (ctid = '(1,1)'::tid)
1881 -> Bitmap Index Scan on t4_pkey
1882 Index Cond: (c1 = b1t1.c1)
1883 InitPlan 2 (returns $4)
1887 Join Filter: (b2t1.c1 = b2t3.c1)
1889 -> Tid Scan on t2 b2t2
1890 TID Cond: (ctid = '(1,1)'::tid)
1891 -> Bitmap Heap Scan on t1 b2t1
1892 Recheck Cond: (c1 = b2t2.c1)
1893 Filter: (ctid = '(1,1)'::tid)
1894 -> Bitmap Index Scan on t1_pkey
1895 Index Cond: (c1 = b2t2.c1)
1896 -> Seq Scan on t3 b2t3
1897 Filter: (ctid = '(1,1)'::tid)
1898 -> Index Scan using t4_pkey on t4 b2t4
1899 Index Cond: (c1 = b2t1.c1)
1900 Filter: (ctid = '(1,1)'::tid)
1901 InitPlan 3 (returns $7)
1904 Join Filter: (b3t1.c1 = b3t4.c1)
1907 -> Tid Scan on t3 b3t3
1908 TID Cond: (ctid = '(1,1)'::tid)
1909 -> Index Scan using t1_pkey on t1 b3t1
1910 Index Cond: (c1 = b3t3.c1)
1911 Filter: (ctid = '(1,1)'::tid)
1912 -> Bitmap Heap Scan on t2 b3t2
1913 Recheck Cond: (c1 = b3t1.c1)
1914 Filter: (ctid = '(1,1)'::tid)
1915 -> Bitmap Index Scan on t2_pkey
1916 Index Cond: (c1 = b3t1.c1)
1917 -> Seq Scan on t4 b3t4
1918 Filter: (ctid = '(1,1)'::tid)
1920 Join Filter: (bmt1.c1 = c1.c1)
1922 Join Filter: (bmt1.c1 = bmt4.c1)
1925 -> Seq Scan on t1 bmt1
1926 Filter: ((c1 <> $7) AND (ctid = '(1,1)'::tid))
1927 -> Index Scan using t2_pkey on t2 bmt2
1928 Index Cond: (c1 = bmt1.c1)
1929 Filter: (ctid = '(1,1)'::tid)
1930 -> Bitmap Heap Scan on t3 bmt3
1931 Recheck Cond: (c1 = bmt1.c1)
1932 Filter: (ctid = '(1,1)'::tid)
1933 -> Bitmap Index Scan on t3_pkey
1934 Index Cond: (c1 = bmt1.c1)
1935 -> Tid Scan on t4 bmt4
1936 TID Cond: (ctid = '(1,1)'::tid)
1941 EXPLAIN (COSTS false)
1943 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)'
1945 SELECT max(bmt1.c1), (
1946 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
1948 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
1950 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)'
1954 -------------------------------------------------------------------
1959 Join Filter: (b1t1.c1 = b1t4.c1)
1961 Join Filter: (b1t1.c1 = b1t3.c1)
1963 Join Filter: (b1t1.c1 = b1t2.c1)
1964 -> Tid Scan on t1 b1t1
1965 TID Cond: (ctid = '(1,1)'::tid)
1966 -> Seq Scan on t2 b1t2
1967 Filter: (ctid = '(1,1)'::tid)
1968 -> Tid Scan on t3 b1t3
1969 TID Cond: (ctid = '(1,1)'::tid)
1970 -> Tid Scan on t4 b1t4
1971 TID Cond: (ctid = '(1,1)'::tid)
1972 InitPlan 3 (returns $2)
1974 InitPlan 2 (returns $1)
1976 -> Tid Scan on t1 b2t1
1977 TID Cond: (ctid = '(1,1)'::tid)
1978 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1979 InitPlan 4 (returns $3)
1981 -> Tid Scan on t1 b3t1
1982 TID Cond: (ctid = '(1,1)'::tid)
1984 Join Filter: (bmt1.c1 = c1.c1)
1986 Join Filter: (bmt1.c1 = bmt4.c1)
1988 Join Filter: (bmt1.c1 = bmt3.c1)
1990 Join Filter: (bmt1.c1 = bmt2.c1)
1991 -> Tid Scan on t1 bmt1
1992 TID Cond: (ctid = '(1,1)'::tid)
1994 -> Seq Scan on t2 bmt2
1995 Filter: (ctid = '(1,1)'::tid)
1996 -> Tid Scan on t3 bmt3
1997 TID Cond: (ctid = '(1,1)'::tid)
1998 -> Tid Scan on t4 bmt4
1999 TID Cond: (ctid = '(1,1)'::tid)
2003 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
2004 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
2005 BitmapScan(b2t1 t1_pkey)
2006 IndexScan(b3t1 t1_pkey)
2008 EXPLAIN (COSTS false)
2010 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)'
2012 SELECT max(bmt1.c1), (
2013 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
2015 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
2017 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)'
2020 LOG: candidate index for "b1t3": t3_pkey
2021 LOG: candidate index for "b1t4": t4_pkey
2022 LOG: candidate index for "b2t1": t1_pkey
2023 LOG: candidate index for "b2t1": t1_pkey
2024 LOG: candidate index for "b3t1": t1_pkey
2025 LOG: candidate index for "b3t1": t1_pkey
2026 LOG: candidate index for "bmt2": t2_pkey
2027 LOG: candidate index for "bmt3": t3_pkey
2032 IndexScan(b1t3 t3_pkey)
2033 BitmapScan(b1t4 t4_pkey)
2034 BitmapScan(b2t1 t1_pkey)
2035 IndexScan(b3t1 t1_pkey)
2037 IndexScan(bmt2 t2_pkey)
2038 BitmapScan(bmt3 t3_pkey)
2045 --------------------------------------------------------------------------------
2052 Join Filter: (b1t1.c1 = b1t2.c1)
2053 -> Tid Scan on t1 b1t1
2054 TID Cond: (ctid = '(1,1)'::tid)
2055 -> Seq Scan on t2 b1t2
2056 Filter: (ctid = '(1,1)'::tid)
2057 -> Index Scan using t3_pkey on t3 b1t3
2058 Index Cond: (c1 = b1t1.c1)
2059 Filter: (ctid = '(1,1)'::tid)
2060 -> Bitmap Heap Scan on t4 b1t4
2061 Recheck Cond: (c1 = b1t1.c1)
2062 Filter: (ctid = '(1,1)'::tid)
2063 -> Bitmap Index Scan on t4_pkey
2064 Index Cond: (c1 = b1t1.c1)
2065 InitPlan 3 (returns $3)
2067 InitPlan 2 (returns $2)
2069 -> Bitmap Heap Scan on t1 b2t1
2070 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = 1))
2071 Filter: (ctid = '(1,1)'::tid)
2072 -> Bitmap Index Scan on t1_pkey
2073 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
2074 InitPlan 5 (returns $5)
2076 InitPlan 4 (returns $4)
2078 -> Index Scan Backward using t1_pkey on t1 b3t1
2079 Index Cond: (c1 IS NOT NULL)
2080 Filter: (ctid = '(1,1)'::tid)
2082 Join Filter: (bmt1.c1 = c1.c1)
2084 Join Filter: (bmt1.c1 = bmt4.c1)
2087 -> Seq Scan on t1 bmt1
2088 Filter: ((c1 <> $5) AND (ctid = '(1,1)'::tid))
2089 -> Index Scan using t2_pkey on t2 bmt2
2090 Index Cond: (c1 = bmt1.c1)
2091 Filter: (ctid = '(1,1)'::tid)
2092 -> Bitmap Heap Scan on t3 bmt3
2093 Recheck Cond: (c1 = bmt1.c1)
2094 Filter: (ctid = '(1,1)'::tid)
2095 -> Bitmap Index Scan on t3_pkey
2096 Index Cond: (c1 = bmt1.c1)
2097 -> Tid Scan on t4 bmt4
2098 TID Cond: (ctid = '(1,1)'::tid)
2103 ---- No. S-2-3 RULE definition table
2106 EXPLAIN (COSTS false) UPDATE s1.r1 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2108 -----------------------------------------------------------------
2111 Join Filter: (t1.c1 = t4.c1)
2113 Join Filter: (t1.c1 = t3.c1)
2115 Join Filter: (t1.c1 = t2.c1)
2118 TID Cond: (ctid = '(1,1)'::tid)
2121 TID Cond: (ctid = '(1,1)'::tid)
2123 Filter: (ctid = '(1,1)'::tid)
2125 TID Cond: (ctid = '(1,1)'::tid)
2127 TID Cond: (ctid = '(1,1)'::tid)
2130 /*+TidScan(t1)SeqScan(t2)IndexScan(t3 t3_pkey)BitmapScan(t4 t4_pkey)
2132 EXPLAIN (COSTS false) UPDATE s1.r1 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2133 LOG: candidate index for "t3": t3_pkey
2134 LOG: candidate index for "t4": t4_pkey
2140 IndexScan(t3 t3_pkey)
2141 BitmapScan(t4 t4_pkey)
2147 ------------------------------------------------------------------------------
2152 Join Filter: (t1.c1 = t2.c1)
2155 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2157 TID Cond: (ctid = '(1,1)'::tid)
2159 Filter: (ctid = '(1,1)'::tid)
2160 -> Index Scan using t3_pkey on t3
2161 Index Cond: (c1 = t1.c1)
2162 Filter: (ctid = '(1,1)'::tid)
2163 -> Bitmap Heap Scan on t4
2164 Recheck Cond: (c1 = t1.c1)
2165 Filter: (ctid = '(1,1)'::tid)
2166 -> Bitmap Index Scan on t4_pkey
2167 Index Cond: (c1 = t1.c1)
2170 EXPLAIN (COSTS false) UPDATE s1.r1_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2172 -----------------------------------------------------------------
2175 Join Filter: (b1t1.c1 = b1t4.c1)
2177 Join Filter: (b1t1.c1 = b1t3.c1)
2179 Join Filter: (b1t1.c1 = b1t2.c1)
2182 TID Cond: (ctid = '(1,1)'::tid)
2184 -> Tid Scan on t1 b1t1
2185 TID Cond: (ctid = '(1,1)'::tid)
2186 -> Seq Scan on t2 b1t2
2187 Filter: (ctid = '(1,1)'::tid)
2188 -> Tid Scan on t3 b1t3
2189 TID Cond: (ctid = '(1,1)'::tid)
2190 -> Tid Scan on t4 b1t4
2191 TID Cond: (ctid = '(1,1)'::tid)
2194 /*+TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
2196 EXPLAIN (COSTS false) UPDATE s1.r1_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2197 LOG: candidate index for "b1t3": t3_pkey
2198 LOG: candidate index for "b1t4": t4_pkey
2203 IndexScan(b1t3 t3_pkey)
2204 BitmapScan(b1t4 t4_pkey)
2211 ------------------------------------------------------------------------------
2216 Join Filter: (b1t1.c1 = b1t2.c1)
2219 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2220 -> Tid Scan on t1 b1t1
2221 TID Cond: (ctid = '(1,1)'::tid)
2222 -> Seq Scan on t2 b1t2
2223 Filter: (ctid = '(1,1)'::tid)
2224 -> Index Scan using t3_pkey on t3 b1t3
2225 Index Cond: (c1 = b1t1.c1)
2226 Filter: (ctid = '(1,1)'::tid)
2227 -> Bitmap Heap Scan on t4 b1t4
2228 Recheck Cond: (c1 = b1t1.c1)
2229 Filter: (ctid = '(1,1)'::tid)
2230 -> Bitmap Index Scan on t4_pkey
2231 Index Cond: (c1 = b1t1.c1)
2235 EXPLAIN (COSTS false) UPDATE s1.r2 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2237 -----------------------------------------------------------------
2240 Join Filter: (t1.c1 = t4.c1)
2242 Join Filter: (t1.c1 = t3.c1)
2244 Join Filter: (t1.c1 = t2.c1)
2247 TID Cond: (ctid = '(1,1)'::tid)
2250 TID Cond: (ctid = '(1,1)'::tid)
2252 Filter: (ctid = '(1,1)'::tid)
2254 TID Cond: (ctid = '(1,1)'::tid)
2256 TID Cond: (ctid = '(1,1)'::tid)
2260 Join Filter: (t1.c1 = t4.c1)
2262 Join Filter: (t1.c1 = t3.c1)
2264 Join Filter: (t1.c1 = t2.c1)
2267 TID Cond: (ctid = '(1,1)'::tid)
2270 TID Cond: (ctid = '(1,1)'::tid)
2272 Filter: (ctid = '(1,1)'::tid)
2274 TID Cond: (ctid = '(1,1)'::tid)
2276 TID Cond: (ctid = '(1,1)'::tid)
2279 /*+TidScan(t1)SeqScan(t2)IndexScan(t3 t3_pkey)BitmapScan(t4 t4_pkey)
2281 EXPLAIN (COSTS false) UPDATE s1.r2 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2282 LOG: candidate index for "t3": t3_pkey
2283 LOG: candidate index for "t4": t4_pkey
2289 IndexScan(t3 t3_pkey)
2290 BitmapScan(t4 t4_pkey)
2295 LOG: candidate index for "t3": t3_pkey
2296 LOG: candidate index for "t4": t4_pkey
2302 IndexScan(t3 t3_pkey)
2303 BitmapScan(t4 t4_pkey)
2309 ------------------------------------------------------------------------------
2314 Join Filter: (t1.c1 = t2.c1)
2317 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2319 TID Cond: (ctid = '(1,1)'::tid)
2321 Filter: (ctid = '(1,1)'::tid)
2322 -> Index Scan using t3_pkey on t3
2323 Index Cond: (c1 = t1.c1)
2324 Filter: (ctid = '(1,1)'::tid)
2325 -> Bitmap Heap Scan on t4
2326 Recheck Cond: (c1 = t1.c1)
2327 Filter: (ctid = '(1,1)'::tid)
2328 -> Bitmap Index Scan on t4_pkey
2329 Index Cond: (c1 = t1.c1)
2335 Join Filter: (t1.c1 = t2.c1)
2338 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2340 TID Cond: (ctid = '(1,1)'::tid)
2342 Filter: (ctid = '(1,1)'::tid)
2343 -> Index Scan using t3_pkey on t3
2344 Index Cond: (c1 = t1.c1)
2345 Filter: (ctid = '(1,1)'::tid)
2346 -> Bitmap Heap Scan on t4
2347 Recheck Cond: (c1 = t1.c1)
2348 Filter: (ctid = '(1,1)'::tid)
2349 -> Bitmap Index Scan on t4_pkey
2350 Index Cond: (c1 = t1.c1)
2353 EXPLAIN (COSTS false) UPDATE s1.r2_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2355 -----------------------------------------------------------------
2358 Join Filter: (b1t1.c1 = b1t4.c1)
2360 Join Filter: (b1t1.c1 = b1t3.c1)
2362 Join Filter: (b1t1.c1 = b1t2.c1)
2365 TID Cond: (ctid = '(1,1)'::tid)
2367 -> Tid Scan on t1 b1t1
2368 TID Cond: (ctid = '(1,1)'::tid)
2369 -> Seq Scan on t2 b1t2
2370 Filter: (ctid = '(1,1)'::tid)
2371 -> Tid Scan on t3 b1t3
2372 TID Cond: (ctid = '(1,1)'::tid)
2373 -> Tid Scan on t4 b1t4
2374 TID Cond: (ctid = '(1,1)'::tid)
2378 Join Filter: (b2t1.c1 = b2t4.c1)
2380 Join Filter: (b2t1.c1 = b2t3.c1)
2382 Join Filter: (b2t1.c1 = b2t2.c1)
2385 TID Cond: (ctid = '(1,1)'::tid)
2387 -> Tid Scan on t1 b2t1
2388 TID Cond: (ctid = '(1,1)'::tid)
2389 -> Seq Scan on t2 b2t2
2390 Filter: (ctid = '(1,1)'::tid)
2391 -> Tid Scan on t3 b2t3
2392 TID Cond: (ctid = '(1,1)'::tid)
2393 -> Tid Scan on t4 b2t4
2394 TID Cond: (ctid = '(1,1)'::tid)
2397 /*+TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
2398 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
2400 EXPLAIN (COSTS false) UPDATE s1.r2_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2401 LOG: candidate index for "b1t3": t3_pkey
2402 LOG: candidate index for "b1t4": t4_pkey
2407 IndexScan(b1t3 t3_pkey)
2408 BitmapScan(b1t4 t4_pkey)
2411 BitmapScan(b2t1 t1_pkey)
2414 IndexScan(b2t4 t4_pkey)
2418 LOG: candidate index for "b2t1": t1_pkey
2419 LOG: candidate index for "b2t4": t4_pkey
2422 BitmapScan(b2t1 t1_pkey)
2425 IndexScan(b2t4 t4_pkey)
2430 IndexScan(b1t3 t3_pkey)
2431 BitmapScan(b1t4 t4_pkey)
2436 ------------------------------------------------------------------------------
2441 Join Filter: (b1t1.c1 = b1t2.c1)
2444 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2445 -> Tid Scan on t1 b1t1
2446 TID Cond: (ctid = '(1,1)'::tid)
2447 -> Seq Scan on t2 b1t2
2448 Filter: (ctid = '(1,1)'::tid)
2449 -> Index Scan using t3_pkey on t3 b1t3
2450 Index Cond: (c1 = b1t1.c1)
2451 Filter: (ctid = '(1,1)'::tid)
2452 -> Bitmap Heap Scan on t4 b1t4
2453 Recheck Cond: (c1 = b1t1.c1)
2454 Filter: (ctid = '(1,1)'::tid)
2455 -> Bitmap Index Scan on t4_pkey
2456 Index Cond: (c1 = b1t1.c1)
2461 Join Filter: (b2t1.c1 = b2t3.c1)
2465 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2466 -> Tid Scan on t2 b2t2
2467 TID Cond: (ctid = '(1,1)'::tid)
2468 -> Bitmap Heap Scan on t1 b2t1
2469 Recheck Cond: (c1 = b2t2.c1)
2470 Filter: (ctid = '(1,1)'::tid)
2471 -> Bitmap Index Scan on t1_pkey
2472 Index Cond: (c1 = b2t2.c1)
2473 -> Seq Scan on t3 b2t3
2474 Filter: (ctid = '(1,1)'::tid)
2475 -> Index Scan using t4_pkey on t4 b2t4
2476 Index Cond: (c1 = b2t1.c1)
2477 Filter: (ctid = '(1,1)'::tid)
2481 EXPLAIN (COSTS false) UPDATE s1.r3 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2483 -----------------------------------------------------------------
2486 Join Filter: (t1.c1 = t4.c1)
2488 Join Filter: (t1.c1 = t3.c1)
2490 Join Filter: (t1.c1 = t2.c1)
2493 TID Cond: (ctid = '(1,1)'::tid)
2496 TID Cond: (ctid = '(1,1)'::tid)
2498 Filter: (ctid = '(1,1)'::tid)
2500 TID Cond: (ctid = '(1,1)'::tid)
2502 TID Cond: (ctid = '(1,1)'::tid)
2506 Join Filter: (t1.c1 = t4.c1)
2508 Join Filter: (t1.c1 = t3.c1)
2510 Join Filter: (t1.c1 = t2.c1)
2513 TID Cond: (ctid = '(1,1)'::tid)
2516 TID Cond: (ctid = '(1,1)'::tid)
2518 Filter: (ctid = '(1,1)'::tid)
2520 TID Cond: (ctid = '(1,1)'::tid)
2522 TID Cond: (ctid = '(1,1)'::tid)
2526 Join Filter: (t1.c1 = t4.c1)
2528 Join Filter: (t1.c1 = t3.c1)
2530 Join Filter: (t1.c1 = t2.c1)
2533 TID Cond: (ctid = '(1,1)'::tid)
2536 TID Cond: (ctid = '(1,1)'::tid)
2538 Filter: (ctid = '(1,1)'::tid)
2540 TID Cond: (ctid = '(1,1)'::tid)
2542 TID Cond: (ctid = '(1,1)'::tid)
2545 /*+TidScan(t1)SeqScan(t2)IndexScan(t3 t3_pkey)BitmapScan(t4 t4_pkey)
2547 EXPLAIN (COSTS false) UPDATE s1.r3 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2548 LOG: candidate index for "t3": t3_pkey
2549 LOG: candidate index for "t4": t4_pkey
2555 IndexScan(t3 t3_pkey)
2556 BitmapScan(t4 t4_pkey)
2561 LOG: candidate index for "t3": t3_pkey
2562 LOG: candidate index for "t4": t4_pkey
2568 IndexScan(t3 t3_pkey)
2569 BitmapScan(t4 t4_pkey)
2574 LOG: candidate index for "t3": t3_pkey
2575 LOG: candidate index for "t4": t4_pkey
2581 IndexScan(t3 t3_pkey)
2582 BitmapScan(t4 t4_pkey)
2588 ------------------------------------------------------------------------------
2593 Join Filter: (t1.c1 = t2.c1)
2596 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2598 TID Cond: (ctid = '(1,1)'::tid)
2600 Filter: (ctid = '(1,1)'::tid)
2601 -> Index Scan using t3_pkey on t3
2602 Index Cond: (c1 = t1.c1)
2603 Filter: (ctid = '(1,1)'::tid)
2604 -> Bitmap Heap Scan on t4
2605 Recheck Cond: (c1 = t1.c1)
2606 Filter: (ctid = '(1,1)'::tid)
2607 -> Bitmap Index Scan on t4_pkey
2608 Index Cond: (c1 = t1.c1)
2614 Join Filter: (t1.c1 = t2.c1)
2617 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2619 TID Cond: (ctid = '(1,1)'::tid)
2621 Filter: (ctid = '(1,1)'::tid)
2622 -> Index Scan using t3_pkey on t3
2623 Index Cond: (c1 = t1.c1)
2624 Filter: (ctid = '(1,1)'::tid)
2625 -> Bitmap Heap Scan on t4
2626 Recheck Cond: (c1 = t1.c1)
2627 Filter: (ctid = '(1,1)'::tid)
2628 -> Bitmap Index Scan on t4_pkey
2629 Index Cond: (c1 = t1.c1)
2635 Join Filter: (t1.c1 = t2.c1)
2638 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2640 TID Cond: (ctid = '(1,1)'::tid)
2642 Filter: (ctid = '(1,1)'::tid)
2643 -> Index Scan using t3_pkey on t3
2644 Index Cond: (c1 = t1.c1)
2645 Filter: (ctid = '(1,1)'::tid)
2646 -> Bitmap Heap Scan on t4
2647 Recheck Cond: (c1 = t1.c1)
2648 Filter: (ctid = '(1,1)'::tid)
2649 -> Bitmap Index Scan on t4_pkey
2650 Index Cond: (c1 = t1.c1)
2653 EXPLAIN (COSTS false) UPDATE s1.r3_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2655 -----------------------------------------------------------------
2658 Join Filter: (b1t1.c1 = b1t4.c1)
2660 Join Filter: (b1t1.c1 = b1t3.c1)
2662 Join Filter: (b1t1.c1 = b1t2.c1)
2665 TID Cond: (ctid = '(1,1)'::tid)
2667 -> Tid Scan on t1 b1t1
2668 TID Cond: (ctid = '(1,1)'::tid)
2669 -> Seq Scan on t2 b1t2
2670 Filter: (ctid = '(1,1)'::tid)
2671 -> Tid Scan on t3 b1t3
2672 TID Cond: (ctid = '(1,1)'::tid)
2673 -> Tid Scan on t4 b1t4
2674 TID Cond: (ctid = '(1,1)'::tid)
2678 Join Filter: (b2t1.c1 = b2t4.c1)
2680 Join Filter: (b2t1.c1 = b2t3.c1)
2682 Join Filter: (b2t1.c1 = b2t2.c1)
2685 TID Cond: (ctid = '(1,1)'::tid)
2687 -> Tid Scan on t1 b2t1
2688 TID Cond: (ctid = '(1,1)'::tid)
2689 -> Seq Scan on t2 b2t2
2690 Filter: (ctid = '(1,1)'::tid)
2691 -> Tid Scan on t3 b2t3
2692 TID Cond: (ctid = '(1,1)'::tid)
2693 -> Tid Scan on t4 b2t4
2694 TID Cond: (ctid = '(1,1)'::tid)
2698 Join Filter: (b3t1.c1 = b3t4.c1)
2700 Join Filter: (b3t1.c1 = b3t3.c1)
2702 Join Filter: (b3t1.c1 = b3t2.c1)
2705 TID Cond: (ctid = '(1,1)'::tid)
2707 -> Tid Scan on t1 b3t1
2708 TID Cond: (ctid = '(1,1)'::tid)
2709 -> Seq Scan on t2 b3t2
2710 Filter: (ctid = '(1,1)'::tid)
2711 -> Tid Scan on t3 b3t3
2712 TID Cond: (ctid = '(1,1)'::tid)
2713 -> Tid Scan on t4 b3t4
2714 TID Cond: (ctid = '(1,1)'::tid)
2717 /*+TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
2718 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
2719 IndexScan(b3t1 t1_pkey)BitmapScan(b3t2 t2_pkey)TidScan(b3t3)SeqScan(b3t4)
2721 EXPLAIN (COSTS false) UPDATE s1.r3_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2722 LOG: candidate index for "b1t3": t3_pkey
2723 LOG: candidate index for "b1t4": t4_pkey
2728 IndexScan(b1t3 t3_pkey)
2729 BitmapScan(b1t4 t4_pkey)
2732 BitmapScan(b2t1 t1_pkey)
2735 IndexScan(b2t4 t4_pkey)
2736 IndexScan(b3t1 t1_pkey)
2737 BitmapScan(b3t2 t2_pkey)
2743 LOG: candidate index for "b2t1": t1_pkey
2744 LOG: candidate index for "b2t4": t4_pkey
2747 BitmapScan(b2t1 t1_pkey)
2750 IndexScan(b2t4 t4_pkey)
2755 IndexScan(b1t3 t3_pkey)
2756 BitmapScan(b1t4 t4_pkey)
2757 IndexScan(b3t1 t1_pkey)
2758 BitmapScan(b3t2 t2_pkey)
2764 LOG: candidate index for "b3t1": t1_pkey
2765 LOG: candidate index for "b3t2": t2_pkey
2768 IndexScan(b3t1 t1_pkey)
2769 BitmapScan(b3t2 t2_pkey)
2776 IndexScan(b1t3 t3_pkey)
2777 BitmapScan(b1t4 t4_pkey)
2778 BitmapScan(b2t1 t1_pkey)
2781 IndexScan(b2t4 t4_pkey)
2786 ------------------------------------------------------------------------------
2791 Join Filter: (b1t1.c1 = b1t2.c1)
2794 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2795 -> Tid Scan on t1 b1t1
2796 TID Cond: (ctid = '(1,1)'::tid)
2797 -> Seq Scan on t2 b1t2
2798 Filter: (ctid = '(1,1)'::tid)
2799 -> Index Scan using t3_pkey on t3 b1t3
2800 Index Cond: (c1 = b1t1.c1)
2801 Filter: (ctid = '(1,1)'::tid)
2802 -> Bitmap Heap Scan on t4 b1t4
2803 Recheck Cond: (c1 = b1t1.c1)
2804 Filter: (ctid = '(1,1)'::tid)
2805 -> Bitmap Index Scan on t4_pkey
2806 Index Cond: (c1 = b1t1.c1)
2811 Join Filter: (b2t1.c1 = b2t3.c1)
2815 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2816 -> Tid Scan on t2 b2t2
2817 TID Cond: (ctid = '(1,1)'::tid)
2818 -> Bitmap Heap Scan on t1 b2t1
2819 Recheck Cond: (c1 = b2t2.c1)
2820 Filter: (ctid = '(1,1)'::tid)
2821 -> Bitmap Index Scan on t1_pkey
2822 Index Cond: (c1 = b2t2.c1)
2823 -> Seq Scan on t3 b2t3
2824 Filter: (ctid = '(1,1)'::tid)
2825 -> Index Scan using t4_pkey on t4 b2t4
2826 Index Cond: (c1 = b2t1.c1)
2827 Filter: (ctid = '(1,1)'::tid)
2831 Join Filter: (b3t1.c1 = b3t4.c1)
2836 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2837 -> Tid Scan on t3 b3t3
2838 TID Cond: (ctid = '(1,1)'::tid)
2839 -> Index Scan using t1_pkey on t1 b3t1
2840 Index Cond: (c1 = b3t3.c1)
2841 Filter: (ctid = '(1,1)'::tid)
2842 -> Bitmap Heap Scan on t2 b3t2
2843 Recheck Cond: (c1 = b3t1.c1)
2844 Filter: (ctid = '(1,1)'::tid)
2845 -> Bitmap Index Scan on t2_pkey
2846 Index Cond: (c1 = b3t1.c1)
2847 -> Seq Scan on t4 b3t4
2848 Filter: (ctid = '(1,1)'::tid)
2852 ---- No. S-2-4 VALUES clause
2855 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2857 ---------------------------
2858 Values Scan on "*VALUES*"
2859 Filter: (column1 = 1)
2863 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2872 ---------------------------
2873 Values Scan on "*VALUES*"
2874 Filter: (column1 = 1)
2877 /*+SeqScan(*VALUES*)*/
2878 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2887 ---------------------------
2888 Values Scan on "*VALUES*"
2889 Filter: (column1 = 1)
2893 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;
2895 ----------------------------------------------------------
2897 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2898 -> Values Scan on "*VALUES*"
2899 -> Values Scan on "*VALUES*"
2903 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;
2904 INFO: hint syntax error at or near ""
2905 DETAIL: SeqScan hint accepts only one relation.
2914 ----------------------------------------------------------
2916 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2917 -> Values Scan on "*VALUES*"
2918 -> Values Scan on "*VALUES*"
2921 /*+SeqScan(*VALUES*)*/
2922 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;
2931 ----------------------------------------------------------
2933 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2934 -> Values Scan on "*VALUES*"
2935 -> Values Scan on "*VALUES*"
2939 ---- No. S-3-1 scan method hint
2942 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
2944 ---------------------
2950 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
2959 ---------------------
2965 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
2967 ------------------------------
2968 Index Scan using t1_i1 on t1
2969 Index Cond: (c1 = 1)
2973 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
2982 --------------------
2988 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
2990 ------------------------------
2991 Index Scan using t1_i1 on t1
2992 Index Cond: (c1 = 1)
2996 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3005 ------------------------------
3006 Index Scan using t1_i1 on t1
3007 Index Cond: (c1 = 1)
3011 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3013 ---------------------
3019 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3028 ------------------------------
3029 Index Scan using t1_i1 on t1
3030 Index Cond: (c1 >= 1)
3034 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3036 ---------------------------------
3037 Bitmap Heap Scan on t1
3038 Recheck Cond: (c3 < 10)
3039 -> Bitmap Index Scan on t1_i
3040 Index Cond: (c3 < 10)
3044 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3053 ---------------------------------
3054 Bitmap Heap Scan on t1
3055 Recheck Cond: (c3 < 10)
3056 -> Bitmap Index Scan on t1_i
3057 Index Cond: (c3 < 10)
3061 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3063 ------------------------------
3064 Index Scan using t1_i1 on t1
3065 Index Cond: (c1 = 1)
3069 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3078 ----------------------------------
3079 Bitmap Heap Scan on t1
3080 Recheck Cond: (c1 = 1)
3081 -> Bitmap Index Scan on t1_i1
3082 Index Cond: (c1 = 1)
3086 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3088 -----------------------------------
3090 TID Cond: (ctid = '(1,1)'::tid)
3095 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3104 -----------------------------------
3106 TID Cond: (ctid = '(1,1)'::tid)
3111 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid IN ('(1,1)', '(2,2)', '(3,3)');
3113 -------------------------------------------------------------
3114 Index Scan using t1_i1 on t1
3115 Index Cond: (c1 = 1)
3116 Filter: (ctid = ANY ('{"(1,1)","(2,2)","(3,3)"}'::tid[]))
3120 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid IN ('(1,1)', '(2,2)', '(3,3)');
3129 ---------------------------------------------------------------
3131 TID Cond: (ctid = ANY ('{"(1,1)","(2,2)","(3,3)"}'::tid[]))
3136 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3138 ---------------------
3144 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3153 ------------------------------
3154 Index Scan using t1_i1 on t1
3155 Index Cond: (c1 >= 1)
3159 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3161 ------------------------------
3162 Index Scan using t1_i1 on t1
3163 Index Cond: (c1 = 1)
3167 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3176 ------------------------------
3177 Index Scan using t1_i1 on t1
3178 Index Cond: (c1 = 1)
3182 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3184 ------------------------------
3185 Index Scan using t1_i1 on t1
3186 Index Cond: (c1 = 1)
3189 /*+NoIndexScan(t1)*/
3190 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3199 ----------------------------------
3200 Bitmap Heap Scan on t1
3201 Recheck Cond: (c1 = 1)
3202 -> Bitmap Index Scan on t1_i1
3203 Index Cond: (c1 = 1)
3207 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3209 ---------------------
3214 /*+NoIndexScan(t1)*/
3215 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3224 ---------------------
3230 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3232 ---------------------------------
3233 Bitmap Heap Scan on t1
3234 Recheck Cond: (c3 < 10)
3235 -> Bitmap Index Scan on t1_i
3236 Index Cond: (c3 < 10)
3239 /*+NoBitmapScan(t1)*/
3240 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3249 ---------------------
3255 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3257 ------------------------------
3258 Index Scan using t1_i1 on t1
3259 Index Cond: (c1 = 1)
3262 /*+NoBitmapScan(t1)*/
3263 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3272 ------------------------------
3273 Index Scan using t1_i1 on t1
3274 Index Cond: (c1 = 1)
3278 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3280 -----------------------------------
3282 TID Cond: (ctid = '(1,1)'::tid)
3287 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3296 ---------------------------------
3297 Index Scan using t1_i1 on t1
3298 Index Cond: (c1 = 1)
3299 Filter: (ctid = '(1,1)'::tid)
3303 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3305 ------------------------------
3306 Index Scan using t1_i1 on t1
3307 Index Cond: (c1 = 1)
3311 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3320 ------------------------------
3321 Index Scan using t1_i1 on t1
3322 Index Cond: (c1 = 1)
3326 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3328 -----------------------------------
3329 Index Only Scan using t1_i1 on t1
3330 Index Cond: (c1 = 1)
3333 /*+IndexOnlyScan(t1)*/
3334 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3343 -----------------------------------
3344 Index Only Scan using t1_i1 on t1
3345 Index Cond: (c1 = 1)
3349 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3351 ---------------------
3356 /*+IndexOnlyScan(t1)*/
3357 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3366 -----------------------------------
3367 Index Only Scan using t1_i1 on t1
3368 Index Cond: (c1 >= 1)
3372 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3374 -----------------------------------
3375 Index Only Scan using t1_i1 on t1
3376 Index Cond: (c1 = 1)
3379 /*+NoIndexOnlyScan(t1)*/
3380 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3389 ------------------------------
3390 Index Scan using t1_i1 on t1
3391 Index Cond: (c1 = 1)
3395 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3397 ---------------------
3402 /*+NoIndexOnlyScan(t1)*/
3403 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3412 ---------------------
3418 ---- No. S-3-3 index name specified
3420 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3422 -----------------------------------
3424 TID Cond: (ctid = '(1,1)'::tid)
3428 SET enable_tidscan TO off;
3429 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3431 ---------------------------------
3432 Index Scan using ti1_i2 on ti1
3433 Index Cond: (c2 = 1)
3434 Filter: (ctid = '(1,1)'::tid)
3437 SET enable_indexscan TO off;
3438 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3440 -----------------------------------
3441 Bitmap Heap Scan on ti1
3442 Recheck Cond: (c2 = 1)
3443 Filter: (ctid = '(1,1)'::tid)
3444 -> Bitmap Index Scan on ti1_i2
3445 Index Cond: (c2 = 1)
3448 RESET enable_tidscan;
3449 RESET enable_indexscan;
3450 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3452 ---------------------
3458 /*+IndexScan(ti1 ti1_i3)*/
3459 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3460 LOG: candidate index for "ti1": ti1_i3
3463 IndexScan(ti1 ti1_i3)
3469 ---------------------------------
3470 Index Scan using ti1_i3 on ti1
3471 Index Cond: (c2 = 1)
3472 Filter: (ctid = '(1,1)'::tid)
3476 /*+IndexScan(ti1 ti1_i3 ti1_i2)*/
3477 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3478 LOG: candidate index for "ti1": ti1_i3 ti1_i2
3481 IndexScan(ti1 ti1_i3 ti1_i2)
3487 ---------------------------------
3488 Index Scan using ti1_i2 on ti1
3489 Index Cond: (c2 = 1)
3490 Filter: (ctid = '(1,1)'::tid)
3494 /*+IndexScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3495 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3496 LOG: candidate index for "ti1": ti1_i4 ti1_i3 ti1_i2 ti1_i1
3499 IndexScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)
3505 ---------------------------------
3506 Index Scan using ti1_i2 on ti1
3507 Index Cond: (c2 = 1)
3508 Filter: (ctid = '(1,1)'::tid)
3512 /*+BitmapScan(ti1 ti1_i3)*/
3513 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3514 LOG: candidate index for "ti1": ti1_i3
3517 BitmapScan(ti1 ti1_i3)
3523 -----------------------------------
3524 Bitmap Heap Scan on ti1
3525 Recheck Cond: (c2 = 1)
3526 Filter: (ctid = '(1,1)'::tid)
3527 -> Bitmap Index Scan on ti1_i3
3528 Index Cond: (c2 = 1)
3532 /*+BitmapScan(ti1 ti1_i3 ti1_i2)*/
3533 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3534 LOG: candidate index for "ti1": ti1_i3 ti1_i2
3537 BitmapScan(ti1 ti1_i3 ti1_i2)
3543 -----------------------------------
3544 Bitmap Heap Scan on ti1
3545 Recheck Cond: (c2 = 1)
3546 Filter: (ctid = '(1,1)'::tid)
3547 -> Bitmap Index Scan on ti1_i2
3548 Index Cond: (c2 = 1)
3552 /*+BitmapScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3553 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3554 LOG: candidate index for "ti1": ti1_i4 ti1_i3 ti1_i2 ti1_i1
3557 BitmapScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)
3563 -----------------------------------
3564 Bitmap Heap Scan on ti1
3565 Recheck Cond: (c2 = 1)
3566 Filter: (ctid = '(1,1)'::tid)
3567 -> Bitmap Index Scan on ti1_i2
3568 Index Cond: (c2 = 1)
3572 /*+IndexOnlyScan(ti1 ti1_i3)*/
3573 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3574 LOG: candidate index for "ti1": ti1_i3
3577 IndexOnlyScan(ti1 ti1_i3)
3583 -------------------------------------
3584 Index Only Scan using ti1_i3 on ti1
3585 Index Cond: (c2 >= 1)
3589 /*+IndexOnlyScan(ti1 ti1_i3 ti1_i2)*/
3590 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3591 LOG: candidate index for "ti1": ti1_i3 ti1_i2
3594 IndexOnlyScan(ti1 ti1_i3 ti1_i2)
3600 -------------------------------------
3601 Index Only Scan using ti1_i2 on ti1
3602 Index Cond: (c2 >= 1)
3606 /*+IndexOnlyScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3607 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3608 LOG: candidate index for "ti1": ti1_i4 ti1_i3 ti1_i2 ti1_i1
3611 IndexOnlyScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)
3617 -------------------------------------
3618 Index Only Scan using ti1_i1 on ti1
3619 Index Cond: (c2 >= 1)
3623 ---- No. S-3-4 index type
3627 Column | Type | Modifiers
3628 --------+---------+-----------
3629 c1 | integer | not null
3634 "ti1_pkey" PRIMARY KEY, btree (c1)
3635 "ti1_c2_key" UNIQUE CONSTRAINT, btree (c2)
3636 "ti1_uniq" UNIQUE, btree (c1)
3637 "ti1_btree" btree (c1)
3638 "ti1_expr" btree ((c1 < 100))
3640 "ti1_gist" gist (c1)
3641 "ti1_hash" hash (c1)
3643 "ti1_i2" btree (c2, c4)
3644 "ti1_i3" btree (c2, c4, c4)
3645 "ti1_i4" btree (c2, c4, c4, c4)
3646 "ti1_multi" btree (c1, c2, c3, c4)
3647 "ti1_pred" btree (lower(c4))
3648 "ti1_ts" gin (to_tsvector('english'::regconfig, c4))
3650 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)';
3652 -----------------------------------------------------------------------------------------------------------------------------------------
3654 TID Cond: (ctid = '(1,1)'::tid)
3655 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3659 /*+IndexScan(ti1 ti1_btree)*/
3660 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)';
3661 LOG: candidate index for "ti1": ti1_btree
3664 IndexScan(ti1 ti1_btree)
3670 ----------------------------------------------------------------------------------------------------------------------------------------------------
3671 Index Scan using ti1_btree on ti1
3672 Index Cond: (c1 < 100)
3673 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3677 /*+IndexScan(ti1 ti1_hash)*/
3678 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)';
3679 LOG: candidate index for "ti1": ti1_hash
3682 IndexScan(ti1 ti1_hash)
3688 ----------------------------------------------------------------------------------------------------------------------------------------------------
3689 Index Scan using ti1_hash on ti1
3690 Index Cond: (c1 = 100)
3691 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3695 /*+IndexScan(ti1 ti1_gist)*/
3696 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)';
3697 LOG: candidate index for "ti1": ti1_gist
3700 IndexScan(ti1 ti1_gist)
3706 ----------------------------------------------------------------------------------------------------------------------------------------------------
3707 Index Scan using ti1_gist on ti1
3708 Index Cond: (c1 < 100)
3709 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3713 /*+IndexScan(ti1 ti1_gin)*/
3714 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)';
3715 LOG: candidate index for "ti1": ti1_gin
3718 IndexScan(ti1 ti1_gin)
3724 -----------------------------------------------------------------------------------------------------------------------------------------
3726 TID Cond: (ctid = '(1,1)'::tid)
3727 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3731 /*+IndexScan(ti1 ti1_expr)*/
3732 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)';
3733 LOG: candidate index for "ti1": ti1_expr
3736 IndexScan(ti1 ti1_expr)
3742 -------------------------------------------------------------------------------------------------------------------------------------------------------------------
3743 Index Scan using ti1_expr on ti1
3744 Index Cond: ((c1 < 100) = true)
3745 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))
3749 /*+IndexScan(ti1 ti1_pred)*/
3750 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)';
3751 LOG: candidate index for "ti1": ti1_pred
3754 IndexScan(ti1 ti1_pred)
3760 ---------------------------------------------------------------------------------------------------------------------------------------
3761 Index Scan using ti1_pred on ti1
3762 Index Cond: (lower(c4) = '1'::text)
3763 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery))
3767 /*+IndexScan(ti1 ti1_uniq)*/
3768 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)';
3769 LOG: candidate index for "ti1": ti1_uniq
3772 IndexScan(ti1 ti1_uniq)
3778 ----------------------------------------------------------------------------------------------------------------------------------------------------
3779 Index Scan using ti1_uniq on ti1
3780 Index Cond: (c1 < 100)
3781 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3785 /*+IndexScan(ti1 ti1_multi)*/
3786 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)';
3787 LOG: candidate index for "ti1": ti1_multi
3790 IndexScan(ti1 ti1_multi)
3796 ---------------------------------------------------------------------------------------------------------------------------------------
3797 Index Scan using ti1_multi on ti1
3798 Index Cond: ((c1 < 100) AND (c2 = 1))
3799 Filter: ((ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3803 /*+IndexScan(ti1 ti1_ts)*/
3804 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)';
3805 LOG: candidate index for "ti1": ti1_ts
3808 IndexScan(ti1 ti1_ts)
3814 -----------------------------------------------------------------------------------------------------------------------------------------
3816 TID Cond: (ctid = '(1,1)'::tid)
3817 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3821 /*+IndexScan(ti1 ti1_pkey)*/
3822 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)';
3823 LOG: candidate index for "ti1": ti1_pkey
3826 IndexScan(ti1 ti1_pkey)
3832 ----------------------------------------------------------------------------------------------------------------------------------------------------
3833 Index Scan using ti1_pkey on ti1
3834 Index Cond: (c1 < 100)
3835 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3839 /*+IndexScan(ti1 ti1_c2_key)*/
3840 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)';
3841 LOG: candidate index for "ti1": ti1_c2_key
3844 IndexScan(ti1 ti1_c2_key)
3850 ------------------------------------------------------------------------------------------------------------------------------------------------------
3851 Index Scan using ti1_c2_key on ti1
3852 Index Cond: (c2 = 1)
3853 Filter: ((c1 < 100) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3857 /*+BitmapScan(ti1 ti1_btree)*/
3858 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)';
3859 LOG: candidate index for "ti1": ti1_btree
3862 BitmapScan(ti1 ti1_btree)
3868 ----------------------------------------------------------------------------------------------------------------------------------------------------
3869 Bitmap Heap Scan on ti1
3870 Recheck Cond: (c1 < 100)
3871 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3872 -> Bitmap Index Scan on ti1_btree
3873 Index Cond: (c1 < 100)
3877 /*+BitmapScan(ti1 ti1_hash)*/
3878 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)';
3879 LOG: candidate index for "ti1": ti1_hash
3882 BitmapScan(ti1 ti1_hash)
3888 ----------------------------------------------------------------------------------------------------------------------------------------------------
3889 Bitmap Heap Scan on ti1
3890 Recheck Cond: (c1 = 100)
3891 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3892 -> Bitmap Index Scan on ti1_hash
3893 Index Cond: (c1 = 100)
3897 /*+BitmapScan(ti1 ti1_gist)*/
3898 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)';
3899 LOG: candidate index for "ti1": ti1_gist
3902 BitmapScan(ti1 ti1_gist)
3908 ----------------------------------------------------------------------------------------------------------------------------------------------------
3909 Bitmap Heap Scan on ti1
3910 Recheck Cond: (c1 < 100)
3911 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3912 -> Bitmap Index Scan on ti1_gist
3913 Index Cond: (c1 < 100)
3917 /*+BitmapScan(ti1 ti1_gin)*/
3918 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)';
3919 LOG: candidate index for "ti1": ti1_gin
3922 BitmapScan(ti1 ti1_gin)
3928 ----------------------------------------------------------------------------------------------------------------------------------------------------
3929 Bitmap Heap Scan on ti1
3930 Recheck Cond: (c1 < 100)
3931 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3932 -> Bitmap Index Scan on ti1_gin
3933 Index Cond: (c1 < 100)
3937 /*+BitmapScan(ti1 ti1_expr)*/
3938 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)';
3939 LOG: candidate index for "ti1": ti1_expr
3942 BitmapScan(ti1 ti1_expr)
3948 -------------------------------------------------------------------------------------------------------------------------------------------------------------------
3949 Bitmap Heap Scan on ti1
3950 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))
3951 -> Bitmap Index Scan on ti1_expr
3952 Index Cond: ((c1 < 100) = true)
3956 /*+BitmapScan(ti1 ti1_pred)*/
3957 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)';
3958 LOG: candidate index for "ti1": ti1_pred
3961 BitmapScan(ti1 ti1_pred)
3967 ---------------------------------------------------------------------------------------------------------------------------------------
3968 Bitmap Heap Scan on ti1
3969 Recheck Cond: (lower(c4) = '1'::text)
3970 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery))
3971 -> Bitmap Index Scan on ti1_pred
3972 Index Cond: (lower(c4) = '1'::text)
3976 /*+BitmapScan(ti1 ti1_uniq)*/
3977 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)';
3978 LOG: candidate index for "ti1": ti1_uniq
3981 BitmapScan(ti1 ti1_uniq)
3987 ----------------------------------------------------------------------------------------------------------------------------------------------------
3988 Bitmap Heap Scan on ti1
3989 Recheck Cond: (c1 < 100)
3990 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3991 -> Bitmap Index Scan on ti1_uniq
3992 Index Cond: (c1 < 100)
3996 /*+BitmapScan(ti1 ti1_multi)*/
3997 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)';
3998 LOG: candidate index for "ti1": ti1_multi
4001 BitmapScan(ti1 ti1_multi)
4007 ---------------------------------------------------------------------------------------------------------------------------------------
4008 Bitmap Heap Scan on ti1
4009 Recheck Cond: ((c1 < 100) AND (c2 = 1))
4010 Filter: ((ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
4011 -> Bitmap Index Scan on ti1_multi
4012 Index Cond: ((c1 < 100) AND (c2 = 1))
4016 /*+BitmapScan(ti1 ti1_ts)*/
4017 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)';
4018 LOG: candidate index for "ti1": ti1_ts
4021 BitmapScan(ti1 ti1_ts)
4027 -------------------------------------------------------------------------------------------
4028 Bitmap Heap Scan on ti1
4029 Recheck Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4030 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (lower(c4) = '1'::text))
4031 -> Bitmap Index Scan on ti1_ts
4032 Index Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4036 /*+BitmapScan(ti1 ti1_pkey)*/
4037 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)';
4038 LOG: candidate index for "ti1": ti1_pkey
4041 BitmapScan(ti1 ti1_pkey)
4047 ----------------------------------------------------------------------------------------------------------------------------------------------------
4048 Bitmap Heap Scan on ti1
4049 Recheck Cond: (c1 < 100)
4050 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
4051 -> Bitmap Index Scan on ti1_pkey
4052 Index Cond: (c1 < 100)
4056 /*+BitmapScan(ti1 ti1_c2_key)*/
4057 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)';
4058 LOG: candidate index for "ti1": ti1_c2_key
4061 BitmapScan(ti1 ti1_c2_key)
4067 ------------------------------------------------------------------------------------------------------------------------------------------------------
4068 Bitmap Heap Scan on ti1
4069 Recheck Cond: (c2 = 1)
4070 Filter: ((c1 < 100) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
4071 -> Bitmap Index Scan on ti1_c2_key
4072 Index Cond: (c2 = 1)
4076 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4078 ---------------------
4083 /*+IndexOnlyScan(ti1 ti1_btree)*/
4084 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4085 LOG: candidate index for "ti1": ti1_btree
4088 IndexOnlyScan(ti1 ti1_btree)
4094 ----------------------------------------
4095 Index Only Scan using ti1_btree on ti1
4096 Index Cond: (c1 >= 1)
4100 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4102 ---------------------------------------
4103 Index Only Scan using ti1_uniq on ti1
4104 Index Cond: (c1 = 1)
4107 /*+IndexOnlyScan(ti1 ti1_hash)*/
4108 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4109 LOG: candidate index for "ti1": ti1_hash
4112 IndexOnlyScan(ti1 ti1_hash)
4118 ----------------------------------
4119 Index Scan using ti1_hash on ti1
4120 Index Cond: (c1 = 1)
4124 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 1;
4126 ---------------------------------------
4127 Index Only Scan using ti1_uniq on ti1
4128 Index Cond: (c1 < 1)
4131 /*+IndexOnlyScan(ti1 ti1_gist)*/
4132 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 1;
4133 LOG: candidate index for "ti1": ti1_gist
4136 IndexOnlyScan(ti1 ti1_gist)
4142 ----------------------------------
4143 Index Scan using ti1_gist on ti1
4144 Index Cond: (c1 < 1)
4148 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4150 ---------------------------------------
4151 Index Only Scan using ti1_uniq on ti1
4152 Index Cond: (c1 = 1)
4155 /*+IndexOnlyScan(ti1 ti1_gin)*/
4156 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
4157 LOG: candidate index for "ti1": ti1_gin
4160 IndexOnlyScan(ti1 ti1_gin)
4166 --------------------
4172 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 100;
4174 ---------------------------------------
4175 Index Only Scan using ti1_uniq on ti1
4176 Index Cond: (c1 < 100)
4179 /*+IndexOnlyScan(ti1 ti1_expr)*/
4180 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 100;
4181 LOG: candidate index for "ti1": ti1_expr
4184 IndexOnlyScan(ti1 ti1_expr)
4190 -----------------------------------
4191 Index Scan using ti1_expr on ti1
4192 Index Cond: ((c1 < 100) = true)
4197 EXPLAIN (COSTS false) SELECT c4 FROM s1.ti1 WHERE lower(c4) >= '1';
4199 ------------------------------------
4201 Filter: (lower(c4) >= '1'::text)
4204 /*+IndexOnlyScan(ti1 ti1_pred)*/
4205 EXPLAIN (COSTS false) SELECT c4 FROM s1.ti1 WHERE lower(c4) >= '1';
4206 LOG: candidate index for "ti1": ti1_pred
4209 IndexOnlyScan(ti1 ti1_pred)
4215 ----------------------------------------
4216 Index Scan using ti1_pred on ti1
4217 Index Cond: (lower(c4) >= '1'::text)
4221 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4223 ---------------------
4228 /*+IndexOnlyScan(ti1 ti1_uniq)*/
4229 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4230 LOG: candidate index for "ti1": ti1_uniq
4233 IndexOnlyScan(ti1 ti1_uniq)
4239 ---------------------------------------
4240 Index Only Scan using ti1_uniq on ti1
4241 Index Cond: (c1 >= 1)
4245 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4247 ---------------------
4252 /*+IndexOnlyScan(ti1 ti1_multi)*/
4253 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4254 LOG: candidate index for "ti1": ti1_multi
4257 IndexOnlyScan(ti1 ti1_multi)
4263 ----------------------------------------
4264 Index Only Scan using ti1_multi on ti1
4265 Index Cond: (c1 >= 1)
4269 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE to_tsvector('english', c4) @@ 'a & b';
4271 -----------------------------------------------------------------------------------------
4272 Bitmap Heap Scan on ti1
4273 Recheck Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4274 -> Bitmap Index Scan on ti1_ts
4275 Index Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4278 /*+IndexOnlyScan(ti1 ti1_ts)*/
4279 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE to_tsvector('english', c4) @@ 'a & b';
4280 LOG: candidate index for "ti1": ti1_ts
4283 IndexOnlyScan(ti1 ti1_ts)
4289 -------------------------------------------------------------------------------
4291 Filter: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4295 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4297 ---------------------
4302 /*+IndexOnlyScan(ti1 ti1_pkey)*/
4303 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4304 LOG: candidate index for "ti1": ti1_pkey
4307 IndexOnlyScan(ti1 ti1_pkey)
4313 ---------------------------------------
4314 Index Only Scan using ti1_pkey on ti1
4315 Index Cond: (c1 >= 1)
4319 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE c2 >= 1;
4321 ---------------------
4326 /*+IndexOnlyScan(ti1 ti1_c2_key)*/
4327 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE c2 >= 1;
4328 LOG: candidate index for "ti1": ti1_c2_key
4331 IndexOnlyScan(ti1 ti1_c2_key)
4337 -----------------------------------------
4338 Index Only Scan using ti1_c2_key on ti1
4339 Index Cond: (c2 >= 1)
4343 ---- No. S-3-5 not used index
4346 /*+IndexScan(ti1 ti1_pred)*/
4347 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4348 LOG: candidate index for "ti1": ti1_pred
4351 IndexScan(ti1 ti1_pred)
4357 ------------------------------------------------------------------------
4358 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4363 /*+BitmapScan(ti1 ti1_pred)*/
4364 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4365 LOG: candidate index for "ti1": ti1_pred
4368 BitmapScan(ti1 ti1_pred)
4374 ------------------------------------------------------------------------
4375 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4380 /*+IndexOnlyScan(ti1 ti1_pred)*/
4381 EXPLAIN (COSTS true) SELECT c1 FROM s1.ti1 WHERE c1 = 100;
4382 LOG: candidate index for "ti1": ti1_pred
4385 IndexOnlyScan(ti1 ti1_pred)
4391 -----------------------------------------------------------------------
4392 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=4)
4397 ---- No. S-3-6 not exist index
4400 /*+IndexScan(ti1 not_exist)*/
4401 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4402 LOG: candidate index for "ti1":
4405 IndexScan(ti1 not_exist)
4411 ------------------------------------------------------------------------
4412 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4417 /*+BitmapScan(ti1 not_exist)*/
4418 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4419 LOG: candidate index for "ti1":
4422 BitmapScan(ti1 not_exist)
4428 ------------------------------------------------------------------------
4429 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4434 /*+IndexOnlyScan(ti1 not_exist)*/
4435 EXPLAIN (COSTS true) SELECT c1 FROM s1.ti1 WHERE c1 = 100;
4436 LOG: candidate index for "ti1":
4439 IndexOnlyScan(ti1 not_exist)
4445 -----------------------------------------------------------------------
4446 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=4)
4451 ---- No. S-3-7 query structure
4453 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4455 -----------------------------------------------
4457 Hash Cond: (t2.c1 = t1.c1)
4461 TID Cond: (ctid = '(1,1)'::tid)
4466 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE c1 = 100;
4475 ----------------------
4481 /*+SeqScan(t1)BitmapScan(t2)*/
4482 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4492 ----------------------------------------
4495 Filter: (ctid = '(1,1)'::tid)
4496 -> Bitmap Heap Scan on t2
4497 Recheck Cond: (c1 = t1.c1)
4498 -> Bitmap Index Scan on t2_i1
4499 Index Cond: (c1 = t1.c1)
4504 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4513 ---------------------------------------------
4515 Hash Cond: (t2.c1 = t1.c1)
4519 Filter: (ctid = '(1,1)'::tid)
4523 ---- No. S-3-8 query structure
4526 EXPLAIN (COSTS false)
4528 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.c1 = 1)
4529 SELECT max(b3t1.c1), (
4530 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4531 ) FROM s1.t1 b3t1 WHERE b3t1.c1 = (
4532 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4534 ---------------------------------------------------------------------
4536 InitPlan 2 (returns $1)
4538 InitPlan 1 (returns $0)
4540 -> Index Only Scan using t1_i1 on t1 b2t1
4541 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4542 InitPlan 4 (returns $3)
4544 InitPlan 3 (returns $2)
4546 -> Index Only Scan using t1_i1 on t1 b4t1
4547 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4548 InitPlan 5 (returns $4)
4550 -> Index Only Scan using t1_i1 on t1 b3t1
4551 Index Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4554 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4556 EXPLAIN (COSTS false)
4558 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.c1 = 1)
4559 SELECT max(b3t1.c1), (
4560 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4561 ) FROM s1.t1 b3t1 WHERE b3t1.c1 = (
4562 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4563 LOG: candidate index for "b2t1": t1_pkey
4564 LOG: candidate index for "b2t1": t1_pkey
4565 LOG: candidate index for "b3t1": t1_pkey
4566 LOG: candidate index for "b3t1": t1_pkey
4569 IndexScan(b2t1 t1_pkey)
4570 BitmapScan(b3t1 t1_pkey)
4578 ---------------------------------------------------------------------
4580 InitPlan 2 (returns $1)
4582 InitPlan 1 (returns $0)
4584 -> Index Scan using t1_pkey on t1 b2t1
4585 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4586 InitPlan 4 (returns $3)
4588 InitPlan 3 (returns $2)
4590 -> Seq Scan on t1 b4t1
4591 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
4592 InitPlan 5 (returns $4)
4594 -> Bitmap Heap Scan on t1 b3t1
4595 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4596 -> Bitmap Index Scan on t1_pkey
4597 Index Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4601 EXPLAIN (COSTS false)
4603 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4604 SELECT max(b3t1.c1), (
4605 SELECT max(b2t1.c1) FROM s1.t1 b2t1 JOIN s1.t2 b2t2 ON(b2t1.c1 = b2t2.c1) WHERE b2t1.c1 = 1
4606 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4607 SELECT max(b4t1.c1) FROM s1.t1 b4t1 JOIN s1.t2 b4t2 ON(b4t1.c1 = b4t2.c1) WHERE b4t1.c1 = 1);
4609 ------------------------------------------------------------
4614 -> Index Only Scan using t1_i1 on t1 b1t1
4615 Index Cond: (c1 = 1)
4616 -> Seq Scan on t2 b1t2
4618 InitPlan 2 (returns $1)
4621 -> Index Only Scan using t1_i1 on t1 b2t1
4622 Index Cond: (c1 = 1)
4623 -> Seq Scan on t2 b2t2
4625 InitPlan 3 (returns $2)
4628 -> Index Only Scan using t1_i1 on t1 b4t1
4629 Index Cond: (c1 = 1)
4630 -> Seq Scan on t2 b4t2
4634 -> Index Only Scan using t1_i1 on t1 b3t1
4635 Index Cond: (c1 = $2)
4636 -> Seq Scan on t2 b3t2
4642 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4643 TidScan(b1t2)SeqScan(b2t2)IndexScan(b3t2 t2_pkey)BitmapScan(b4t2 t2_pkey)
4645 EXPLAIN (COSTS false)
4647 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4648 SELECT max(b3t1.c1), (
4649 SELECT max(b2t1.c1) FROM s1.t1 b2t1 JOIN s1.t2 b2t2 ON(b2t1.c1 = b2t2.c1) WHERE b2t1.c1 = 1
4650 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4651 SELECT max(b4t1.c1) FROM s1.t1 b4t1 JOIN s1.t2 b4t2 ON(b4t1.c1 = b4t2.c1) WHERE b4t1.c1 = 1);
4652 LOG: candidate index for "b2t1": t1_pkey
4653 LOG: candidate index for "b4t2": t2_pkey
4654 LOG: candidate index for "b3t1": t1_pkey
4655 LOG: candidate index for "b3t2": t2_pkey
4660 IndexScan(b2t1 t1_pkey)
4662 BitmapScan(b3t1 t1_pkey)
4663 IndexScan(b3t2 t2_pkey)
4665 BitmapScan(b4t2 t2_pkey)
4671 ---------------------------------------------------------
4676 -> Seq Scan on t1 b1t1
4678 -> Seq Scan on t2 b1t2
4680 InitPlan 2 (returns $1)
4683 -> Index Scan using t1_pkey on t1 b2t1
4684 Index Cond: (c1 = 1)
4685 -> Seq Scan on t2 b2t2
4687 InitPlan 3 (returns $2)
4690 -> Seq Scan on t1 b4t1
4692 -> Bitmap Heap Scan on t2 b4t2
4693 Recheck Cond: (c1 = 1)
4694 -> Bitmap Index Scan on t2_pkey
4695 Index Cond: (c1 = 1)
4698 -> Bitmap Heap Scan on t1 b3t1
4699 Recheck Cond: (c1 = $2)
4700 -> Bitmap Index Scan on t1_pkey
4701 Index Cond: (c1 = $2)
4702 -> Index Scan using t2_pkey on t2 b3t2
4703 Index Cond: (c1 = $2)
4709 EXPLAIN (COSTS false)
4711 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4712 SELECT max(b3t1.c1), (
4713 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4714 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4715 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4717 ---------------------------------------------------------------------
4722 -> Index Only Scan using t1_i1 on t1 b1t1
4723 Index Cond: (c1 = 1)
4724 -> Seq Scan on t2 b1t2
4726 InitPlan 3 (returns $2)
4728 InitPlan 2 (returns $1)
4730 -> Index Only Scan using t1_i1 on t1 b2t1
4731 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4732 InitPlan 5 (returns $4)
4734 InitPlan 4 (returns $3)
4736 -> Index Only Scan using t1_i1 on t1 b4t1
4737 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4740 -> Index Only Scan using t1_i1 on t1 b3t1
4741 Index Cond: (c1 = $4)
4742 -> Seq Scan on t2 b3t2
4748 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4749 TidScan(b1t2)IndexScan(b3t2 t2_pkey)
4751 EXPLAIN (COSTS false)
4753 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4754 SELECT max(b3t1.c1), (
4755 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4756 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4757 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4758 LOG: candidate index for "b2t1": t1_pkey
4759 LOG: candidate index for "b2t1": t1_pkey
4760 LOG: candidate index for "b3t1": t1_pkey
4761 LOG: candidate index for "b3t2": t2_pkey
4766 IndexScan(b2t1 t1_pkey)
4767 BitmapScan(b3t1 t1_pkey)
4768 IndexScan(b3t2 t2_pkey)
4775 ---------------------------------------------------------------------
4780 -> Seq Scan on t1 b1t1
4782 -> Seq Scan on t2 b1t2
4784 InitPlan 3 (returns $2)
4786 InitPlan 2 (returns $1)
4788 -> Index Scan using t1_pkey on t1 b2t1
4789 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4790 InitPlan 5 (returns $4)
4792 InitPlan 4 (returns $3)
4794 -> Seq Scan on t1 b4t1
4795 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
4798 -> Bitmap Heap Scan on t1 b3t1
4799 Recheck Cond: (c1 = $4)
4800 -> Bitmap Index Scan on t1_pkey
4801 Index Cond: (c1 = $4)
4802 -> Index Scan using t2_pkey on t2 b3t2
4803 Index Cond: (c1 = $4)
4809 ---- No. S-3-9 inheritance table select type
4812 EXPLAIN (COSTS false) SELECT * FROM ONLY s1.p1 WHERE c1 = 1;
4814 --------------------
4820 EXPLAIN (COSTS false) SELECT * FROM ONLY s1.p1 WHERE c1 = 1;
4829 -----------------------------
4830 Index Scan using p1_i on p1
4831 Index Cond: (c1 = 1)
4835 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4837 ---------------------------------
4842 -> Seq Scan on p1c1 p1
4847 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4856 ------------------------------------------------
4859 -> Index Scan using p1_i on p1
4860 Index Cond: (c1 = 1)
4861 -> Index Scan using p1c1_i on p1c1 p1
4862 Index Cond: (c1 = 1)
4866 ---- No. S-3-10 inheritance table number
4869 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4871 ---------------------------------
4876 -> Seq Scan on p1c1 p1
4881 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4890 ------------------------------------------------
4893 -> Index Scan using p1_i on p1
4894 Index Cond: (c1 = 1)
4895 -> Index Scan using p1c1_i on p1c1 p1
4896 Index Cond: (c1 = 1)
4900 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4902 -----------------------------------
4907 -> Seq Scan on p2c1 p2
4909 -> Seq Scan on p2c1c1 p2
4914 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4923 ----------------------------------------------------
4926 -> Index Scan using p2_i on p2
4927 Index Cond: (c1 = 1)
4928 -> Index Scan using p2c1_i on p2c1 p2
4929 Index Cond: (c1 = 1)
4930 -> Index Scan using p2c1c1_i on p2c1c1 p2
4931 Index Cond: (c1 = 1)
4935 ---- No. S-3-11 inheritance table specified table
4937 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4939 -----------------------------------
4944 -> Seq Scan on p2c1 p2
4946 -> Seq Scan on p2c1c1 p2
4952 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4961 ----------------------------------------------------
4964 -> Index Scan using p2_i on p2
4965 Index Cond: (c1 = 1)
4966 -> Index Scan using p2c1_i on p2c1 p2
4967 Index Cond: (c1 = 1)
4968 -> Index Scan using p2c1c1_i on p2c1c1 p2
4969 Index Cond: (c1 = 1)
4973 /*+IndexScan(p2c1)*/
4974 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4983 -----------------------------------
4988 -> Seq Scan on p2c1 p2
4990 -> Seq Scan on p2c1c1 p2
4995 /*+IndexScan(p2 p2_pkey p2c1_pkey p2c1c1_pkey)*/
4996 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4997 LOG: candidate index for "p2":
4998 LOG: candidate index for "p2": p2_pkey
4999 LOG: candidate index for "p2c1": p2c1_pkey
5000 LOG: candidate index for "p2c2":
5001 LOG: candidate index for "p2c3":
5002 LOG: candidate index for "p2c1c1": p2c1c1_pkey
5003 LOG: candidate index for "p2c1c2":
5004 LOG: candidate index for "p2c2c1":
5005 LOG: candidate index for "p2c2c2":
5006 LOG: candidate index for "p2c3c1":
5007 LOG: candidate index for "p2c3c2":
5010 IndexScan(p2 p2_pkey p2c1_pkey p2c1c1_pkey)
5016 -------------------------------------------------------
5019 -> Index Scan using p2_pkey on p2
5020 Index Cond: (c1 = 1)
5021 -> Index Scan using p2c1_pkey on p2c1 p2
5022 Index Cond: (c1 = 1)
5023 -> Index Scan using p2c1c1_pkey on p2c1c1 p2
5024 Index Cond: (c1 = 1)
5028 /*+IndexScan(p2 p2c1_pkey)*/
5029 EXPLAIN (COSTS true) SELECT * FROM s1.p2 WHERE c1 = 1;
5030 LOG: candidate index for "p2":
5031 LOG: candidate index for "p2":
5032 LOG: candidate index for "p2c1": p2c1_pkey
5033 LOG: candidate index for "p2c2":
5034 LOG: candidate index for "p2c3":
5035 LOG: candidate index for "p2c1c1":
5036 LOG: candidate index for "p2c1c2":
5037 LOG: candidate index for "p2c2c1":
5038 LOG: candidate index for "p2c2c2":
5039 LOG: candidate index for "p2c3c1":
5040 LOG: candidate index for "p2c3c2":
5043 IndexScan(p2 p2c1_pkey)
5049 ------------------------------------------------------------------------------------------
5050 Result (cost=10000000000.00..20000000009.89 rows=3 width=34)
5051 -> Append (cost=10000000000.00..20000000009.89 rows=3 width=34)
5052 -> Seq Scan on p2 (cost=10000000000.00..10000000000.00 rows=1 width=44)
5054 -> Index Scan using p2c1_pkey on p2c1 p2 (cost=0.00..8.27 rows=1 width=44)
5055 Index Cond: (c1 = 1)
5056 -> Seq Scan on p2c1c1 p2 (cost=10000000000.00..10000000001.62 rows=1 width=14)
5061 ---- No. S-3-12 specified same table
5064 /*+IndexScan(ti1) BitmapScan(ti1)*/
5065 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5066 INFO: hint syntax error at or near "IndexScan(ti1) BitmapScan(ti1)"
5067 DETAIL: Conflict scan method hint.
5077 -------------------------------------
5078 Bitmap Heap Scan on ti1
5079 Recheck Cond: (c1 = 1)
5080 Filter: (ctid = '(1,1)'::tid)
5081 -> Bitmap Index Scan on ti1_uniq
5082 Index Cond: (c1 = 1)
5086 /*+IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)*/
5087 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5088 INFO: hint syntax error at or near "IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
5089 DETAIL: Conflict scan method hint.
5090 LOG: candidate index for "ti1": ti1_btree
5093 BitmapScan(ti1 ti1_btree)
5096 IndexScan(ti1 ti1_pkey)
5100 --------------------------------------
5101 Bitmap Heap Scan on ti1
5102 Recheck Cond: (c1 = 1)
5103 Filter: (ctid = '(1,1)'::tid)
5104 -> Bitmap Index Scan on ti1_btree
5105 Index Cond: (c1 = 1)
5109 /*+BitmapScan(ti1) IndexScan(ti1) BitmapScan(ti1)*/
5110 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5111 INFO: hint syntax error at or near "BitmapScan(ti1) IndexScan(ti1) BitmapScan(ti1)"
5112 DETAIL: Conflict scan method hint.
5113 INFO: hint syntax error at or near "IndexScan(ti1) BitmapScan(ti1)"
5114 DETAIL: Conflict scan method hint.
5125 -------------------------------------
5126 Bitmap Heap Scan on ti1
5127 Recheck Cond: (c1 = 1)
5128 Filter: (ctid = '(1,1)'::tid)
5129 -> Bitmap Index Scan on ti1_uniq
5130 Index Cond: (c1 = 1)
5134 /*+BitmapScan(ti1 ti1_hash) IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)*/
5135 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5136 INFO: hint syntax error at or near "BitmapScan(ti1 ti1_hash) IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
5137 DETAIL: Conflict scan method hint.
5138 INFO: hint syntax error at or near "IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
5139 DETAIL: Conflict scan method hint.
5140 LOG: candidate index for "ti1": ti1_btree
5143 BitmapScan(ti1 ti1_btree)
5146 BitmapScan(ti1 ti1_hash)
5147 IndexScan(ti1 ti1_pkey)
5151 --------------------------------------
5152 Bitmap Heap Scan on ti1
5153 Recheck Cond: (c1 = 1)
5154 Filter: (ctid = '(1,1)'::tid)
5155 -> Bitmap Index Scan on ti1_btree
5156 Index Cond: (c1 = 1)
5160 ---- No. S-3-13 message output
5164 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5173 ------------------------------------------------
5175 Filter: ((c1 = 1) AND (ctid = '(1,1)'::tid))
5179 /*+SeqScan(ti1 ti1_pkey)*/
5180 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5181 INFO: hint syntax error at or near ""
5182 DETAIL: SeqScan hint accepts only one relation.
5188 SeqScan(ti1 ti1_pkey)
5191 -----------------------------------
5193 TID Cond: (ctid = '(1,1)'::tid)
5198 /*+SeqScan(ti1 ti1_pkey ti1_btree)*/
5199 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5200 INFO: hint syntax error at or near ""
5201 DETAIL: SeqScan hint accepts only one relation.
5207 SeqScan(ti1 ti1_pkey ti1_btree)
5210 -----------------------------------
5212 TID Cond: (ctid = '(1,1)'::tid)
5218 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5227 ----------------------------------
5228 Index Scan using ti1_uniq on ti1
5229 Index Cond: (c1 = 1)
5230 Filter: (ctid = '(1,1)'::tid)
5234 /*+IndexScan(ti1 ti1_pkey)*/
5235 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5236 LOG: candidate index for "ti1": ti1_pkey
5239 IndexScan(ti1 ti1_pkey)
5245 ----------------------------------
5246 Index Scan using ti1_pkey on ti1
5247 Index Cond: (c1 = 1)
5248 Filter: (ctid = '(1,1)'::tid)
5252 /*+IndexScan(ti1 ti1_pkey ti1_btree)*/
5253 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5254 LOG: candidate index for "ti1": ti1_btree ti1_pkey
5257 IndexScan(ti1 ti1_pkey ti1_btree)
5263 -----------------------------------
5264 Index Scan using ti1_btree on ti1
5265 Index Cond: (c1 = 1)
5266 Filter: (ctid = '(1,1)'::tid)
5270 /*+BitmapScan(ti1)*/
5271 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5280 -------------------------------------
5281 Bitmap Heap Scan on ti1
5282 Recheck Cond: (c1 = 1)
5283 Filter: (ctid = '(1,1)'::tid)
5284 -> Bitmap Index Scan on ti1_uniq
5285 Index Cond: (c1 = 1)
5289 /*+BitmapScan(ti1 ti1_pkey)*/
5290 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5291 LOG: candidate index for "ti1": ti1_pkey
5294 BitmapScan(ti1 ti1_pkey)
5300 -------------------------------------
5301 Bitmap Heap Scan on ti1
5302 Recheck Cond: (c1 = 1)
5303 Filter: (ctid = '(1,1)'::tid)
5304 -> Bitmap Index Scan on ti1_pkey
5305 Index Cond: (c1 = 1)
5309 /*+BitmapScan(ti1 ti1_pkey ti1_btree)*/
5310 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5311 LOG: candidate index for "ti1": ti1_btree ti1_pkey
5314 BitmapScan(ti1 ti1_pkey ti1_btree)
5320 --------------------------------------
5321 Bitmap Heap Scan on ti1
5322 Recheck Cond: (c1 = 1)
5323 Filter: (ctid = '(1,1)'::tid)
5324 -> Bitmap Index Scan on ti1_btree
5325 Index Cond: (c1 = 1)
5330 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5339 -----------------------------------
5341 TID Cond: (ctid = '(1,1)'::tid)
5346 /*+TidScan(ti1 ti1_pkey)*/
5347 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5348 INFO: hint syntax error at or near ""
5349 DETAIL: TidScan hint accepts only one relation.
5355 TidScan(ti1 ti1_pkey)
5358 -----------------------------------
5360 TID Cond: (ctid = '(1,1)'::tid)
5365 /*+TidScan(ti1 ti1_pkey ti1_btree)*/
5366 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5367 INFO: hint syntax error at or near ""
5368 DETAIL: TidScan hint accepts only one relation.
5374 TidScan(ti1 ti1_pkey ti1_btree)
5377 -----------------------------------
5379 TID Cond: (ctid = '(1,1)'::tid)
5385 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5394 -----------------------------------
5396 TID Cond: (ctid = '(1,1)'::tid)
5401 /*+NoSeqScan(ti1 ti1_pkey)*/
5402 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5403 INFO: hint syntax error at or near ""
5404 DETAIL: NoSeqScan hint accepts only one relation.
5410 NoSeqScan(ti1 ti1_pkey)
5413 -----------------------------------
5415 TID Cond: (ctid = '(1,1)'::tid)
5420 /*+NoSeqScan(ti1 ti1_pkey ti1_btree)*/
5421 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5422 INFO: hint syntax error at or near ""
5423 DETAIL: NoSeqScan hint accepts only one relation.
5429 NoSeqScan(ti1 ti1_pkey ti1_btree)
5432 -----------------------------------
5434 TID Cond: (ctid = '(1,1)'::tid)
5439 /*+NoIndexScan(ti1)*/
5440 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5449 -----------------------------------
5451 TID Cond: (ctid = '(1,1)'::tid)
5456 /*+NoIndexScan(ti1 ti1_pkey)*/
5457 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5458 INFO: hint syntax error at or near ""
5459 DETAIL: NoIndexScan hint accepts only one relation.
5465 NoIndexScan(ti1 ti1_pkey)
5468 -----------------------------------
5470 TID Cond: (ctid = '(1,1)'::tid)
5475 /*+NoIndexScan(ti1 ti1_pkey ti1_btree)*/
5476 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5477 INFO: hint syntax error at or near ""
5478 DETAIL: NoIndexScan hint accepts only one relation.
5484 NoIndexScan(ti1 ti1_pkey ti1_btree)
5487 -----------------------------------
5489 TID Cond: (ctid = '(1,1)'::tid)
5494 /*+NoBitmapScan(ti1)*/
5495 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5504 -----------------------------------
5506 TID Cond: (ctid = '(1,1)'::tid)
5511 /*+NoBitmapScan(ti1 ti1_pkey)*/
5512 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5513 INFO: hint syntax error at or near ""
5514 DETAIL: NoBitmapScan hint accepts only one relation.
5520 NoBitmapScan(ti1 ti1_pkey)
5523 -----------------------------------
5525 TID Cond: (ctid = '(1,1)'::tid)
5530 /*+NoBitmapScan(ti1 ti1_pkey ti1_btree)*/
5531 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5532 INFO: hint syntax error at or near ""
5533 DETAIL: NoBitmapScan hint accepts only one relation.
5539 NoBitmapScan(ti1 ti1_pkey ti1_btree)
5542 -----------------------------------
5544 TID Cond: (ctid = '(1,1)'::tid)
5550 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5559 ----------------------------------
5560 Index Scan using ti1_uniq on ti1
5561 Index Cond: (c1 = 1)
5562 Filter: (ctid = '(1,1)'::tid)
5566 /*+NoTidScan(ti1 ti1_pkey)*/
5567 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5568 INFO: hint syntax error at or near ""
5569 DETAIL: NoTidScan hint accepts only one relation.
5575 NoTidScan(ti1 ti1_pkey)
5578 -----------------------------------
5580 TID Cond: (ctid = '(1,1)'::tid)
5585 /*+NoTidScan(ti1 ti1_pkey ti1_btree)*/
5586 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5587 INFO: hint syntax error at or near ""
5588 DETAIL: NoTidScan hint accepts only one relation.
5594 NoTidScan(ti1 ti1_pkey ti1_btree)
5597 -----------------------------------
5599 TID Cond: (ctid = '(1,1)'::tid)
5604 /*+IndexOnlyScan(ti1)*/
5605 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5614 ---------------------------------------
5615 Index Only Scan using ti1_uniq on ti1
5616 Index Cond: (c1 >= 1)
5620 /*+IndexOnlyScan(ti1 ti1_pkey)*/
5621 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5622 LOG: candidate index for "ti1": ti1_pkey
5625 IndexOnlyScan(ti1 ti1_pkey)
5631 ---------------------------------------
5632 Index Only Scan using ti1_pkey on ti1
5633 Index Cond: (c1 >= 1)
5637 /*+IndexOnlyScan(ti1 ti1_pkey ti1_btree)*/
5638 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5639 LOG: candidate index for "ti1": ti1_btree ti1_pkey
5642 IndexOnlyScan(ti1 ti1_pkey ti1_btree)
5648 ----------------------------------------
5649 Index Only Scan using ti1_btree on ti1
5650 Index Cond: (c1 >= 1)
5654 /*+NoIndexOnlyScan(ti1)*/
5655 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5658 NoIndexOnlyScan(ti1)
5664 ----------------------------------
5665 Index Scan using ti1_uniq on ti1
5666 Index Cond: (c1 = 1)
5670 /*+NoIndexOnlyScan(ti1 ti1_pkey)*/
5671 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5672 INFO: hint syntax error at or near ""
5673 DETAIL: NoIndexOnlyScan hint accepts only one relation.
5679 NoIndexOnlyScan(ti1 ti1_pkey)
5682 ---------------------------------------
5683 Index Only Scan using ti1_uniq on ti1
5684 Index Cond: (c1 = 1)
5688 /*+NoIndexOnlyScan(ti1 ti1_pkey ti1_btree)*/
5689 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5690 INFO: hint syntax error at or near ""
5691 DETAIL: NoIndexOnlyScan hint accepts only one relation.
5697 NoIndexOnlyScan(ti1 ti1_pkey ti1_btree)
5700 ---------------------------------------
5701 Index Only Scan using ti1_uniq on ti1
5702 Index Cond: (c1 = 1)