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;
8 ---- No. G-1-1 RULE definition table
12 EXPLAIN (COSTS false) UPDATE s1.r1 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
14 Set(enable_tidscan off)Set(enable_nestloop off)
16 EXPLAIN (COSTS false) UPDATE s1.r1 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
17 EXPLAIN (COSTS false) UPDATE s1.r1_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
19 Set(enable_tidscan off)Set(enable_nestloop off)
21 EXPLAIN (COSTS false) UPDATE s1.r1_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
24 EXPLAIN (COSTS false) UPDATE s1.r2 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
26 Set(enable_tidscan off)Set(enable_nestloop off)
28 EXPLAIN (COSTS false) UPDATE s1.r2 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
29 EXPLAIN (COSTS false) UPDATE s1.r2_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
31 Set(enable_tidscan off)Set(enable_nestloop off)
33 EXPLAIN (COSTS false) UPDATE s1.r2_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
36 EXPLAIN (COSTS false) UPDATE s1.r3 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
38 Set(enable_tidscan off)Set(enable_nestloop off)
40 EXPLAIN (COSTS false) UPDATE s1.r3 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
41 EXPLAIN (COSTS false) UPDATE s1.r3_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
43 Set(enable_tidscan off)Set(enable_nestloop off)
45 EXPLAIN (COSTS false) UPDATE s1.r3_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
47 RESET client_min_messages;
50 ---- No. G-2-2 category of GUC parameter and role
55 /*+Set(block_size 16384)*/
56 SELECT * FROM s1.t1 WHERE t1.c1 = 1;
59 /*+Set(archive_mode off)*/
60 SELECT * FROM s1.t1 WHERE t1.c1 = 1;
63 /*+Set(archive_timeout 0)*/
64 SELECT * FROM s1.t1 WHERE t1.c1 = 1;
67 /*+Set(log_connections off)*/
68 SELECT * FROM s1.t1 WHERE t1.c1 = 1;
71 /*+Set(log_min_messages WARNING)*/
72 SELECT * FROM s1.t1 WHERE t1.c1 = 1;
76 GRANT ALL ON SCHEMA s1 TO PUBLIC;
77 GRANT SELECT ON ALL TABLES IN SCHEMA s1 TO normal_user;
79 /*+Set(log_min_messages WARNING)*/
80 SELECT * FROM s1.t1 WHERE t1.c1 = 1;
83 /*+Set(enable_seqscan on)*/
84 SELECT * FROM s1.t1 WHERE t1.c1 = 1;
87 REVOKE SELECT ON ALL TABLES IN SCHEMA s1 FROM normal_user;
88 REVOKE ALL ON SCHEMA s1 FROM PUBLIC;
91 ---- No. G-2-3 conflict set hint
94 SET client_min_messages TO LOG;
96 /*+Set(enable_indexscan on)Set(enable_indexscan off)*/
97 SELECT * FROM s1.t1 WHERE false;
100 /*+Set(client_min_messages DEBUG5)Set(client_min_messages WARNING)Set(client_min_messages DEBUG2)*/
101 SELECT * FROM s1.t1 WHERE false;
104 /*+Set(enable_indexscan on)Set(enable_indexscan o)*/
105 SELECT * FROM s1.t1 WHERE false;
108 /*+Set(client_min_messages DEBUG5)Set(client_min_messages WARNING)Set(client_min_messages DEBU)*/
109 SELECT * FROM s1.t1 WHERE false;
112 ---- No. G-2-4 debug message
116 /*+SeqScan(a)IndexScan(a)SeqScan(c)NestLoop(a) */
117 SELECT * FROM s1.t1 a, s1.t2 b WHERE false;