On Wed, Aug 07, 2019 at 10:17:25AM -0400, Tom Lane wrote: > Not objecting to the patch, exactly, just feeling like there's > more here than meets the eye. Not quite sure if it's worth > investigating closer, or what we'd even need to do to do so.
Yes, something's weird here. I'd think that the index only scan ensures a proper ordering in this case, so it could be possible that a different plan got selected here? That would mean that the plan selected would not be an index-only scan or an index scan. So perhaps that was a bitmap scan? > BTW, I realize from looking at the plan that LIKE is interpreting the > underscores as wildcards. Maybe it's worth s/_/\_/ while you're Right. Looking around there are much more tests which have the same problem. This could become a problem if other tests running in parallel use relation names with the same pattern, which is not a issue as of HEAD, so I'd rather just back-patch the ORDER BY part of it (temp.sql is the only test missing that). What do you think about the attached? -- Michael
diff --git a/src/test/regress/expected/alter_table.out b/src/test/regress/expected/alter_table.out
index e5407bbf0f..577210e1ad 100644
--- a/src/test/regress/expected/alter_table.out
+++ b/src/test/regress/expected/alter_table.out
@@ -2067,7 +2067,7 @@ insert into at_partitioned values(1, 'foo');
insert into at_partitioned values(3, 'bar');
create temp table old_oids as
select relname, oid as oldoid, relfilenode as oldfilenode
- from pg_class where relname like 'at_partitioned%';
+ from pg_class where relname like 'at\_partitioned%';
select relname,
c.oid = oldoid as orig_oid,
case relfilenode
@@ -2078,7 +2078,7 @@ select relname,
end as storage,
obj_description(c.oid, 'pg_class') as desc
from pg_class c left join old_oids using (relname)
- where relname like 'at_partitioned%'
+ where relname like 'at\_partitioned%'
order by relname;
relname | orig_oid | storage | desc
------------------------------+----------+---------+---------------
@@ -2091,7 +2091,7 @@ select relname,
(6 rows)
select conname, obj_description(oid, 'pg_constraint') as desc
- from pg_constraint where conname like 'at_partitioned%'
+ from pg_constraint where conname like 'at\_partitioned%'
order by conname;
conname | desc
------------------------------+--------------------
@@ -2112,7 +2112,7 @@ select relname,
end as storage,
obj_description(c.oid, 'pg_class') as desc
from pg_class c left join old_oids using (relname)
- where relname like 'at_partitioned%'
+ where relname like 'at\_partitioned%'
order by relname;
relname | orig_oid | storage | desc
------------------------------+----------+---------+--------------
@@ -2125,7 +2125,7 @@ select relname,
(6 rows)
select conname, obj_description(oid, 'pg_constraint') as desc
- from pg_constraint where conname like 'at_partitioned%'
+ from pg_constraint where conname like 'at\_partitioned%'
order by conname;
conname | desc
------------------------------+-------------------
@@ -2189,7 +2189,7 @@ Inherits: test_inh_check
select relname, conname, coninhcount, conislocal, connoinherit
from pg_constraint c, pg_class r
- where relname like 'test_inh_check%' and c.conrelid = r.oid
+ where relname like 'test\_inh\_check%' and c.conrelid = r.oid
order by 1, 2;
relname | conname | coninhcount | conislocal | connoinherit
----------------------+------------------------+-------------+------------+--------------
@@ -2220,7 +2220,7 @@ Inherits: test_inh_check
select relname, conname, coninhcount, conislocal, connoinherit
from pg_constraint c, pg_class r
- where relname like 'test_inh_check%' and c.conrelid = r.oid
+ where relname like 'test\_inh\_check%' and c.conrelid = r.oid
order by 1, 2;
relname | conname | coninhcount | conislocal | connoinherit
----------------------+------------------------+-------------+------------+--------------
@@ -2260,7 +2260,7 @@ Inherits: test_inh_check
select relname, conname, coninhcount, conislocal, connoinherit
from pg_constraint c, pg_class r
- where relname like 'test_inh_check%' and c.conrelid = r.oid
+ where relname like 'test\_inh\_check%' and c.conrelid = r.oid
order by 1, 2;
relname | conname | coninhcount | conislocal | connoinherit
----------------------+------------------------+-------------+------------+--------------
@@ -2300,7 +2300,7 @@ Inherits: test_inh_check
select relname, conname, coninhcount, conislocal, connoinherit
from pg_constraint c, pg_class r
- where relname like 'test_inh_check%' and c.conrelid = r.oid
+ where relname like 'test\_inh\_check%' and c.conrelid = r.oid
order by 1, 2;
relname | conname | coninhcount | conislocal | connoinherit
----------------------+------------------------+-------------+------------+--------------
@@ -2455,7 +2455,7 @@ create type lockmodes as enum (
drop view my_locks;
ERROR: view "my_locks" does not exist
create or replace view my_locks as
-select case when c.relname like 'pg_toast%' then 'pg_toast' else c.relname end, max(mode::lockmodes) as max_lockmode
+select case when c.relname like 'pg\_toast%' then 'pg_toast' else c.relname end, max(mode::lockmodes) as max_lockmode
from pg_locks l join pg_class c on l.relation = c.oid
where virtualtransaction = (
select virtualtransaction
@@ -2618,7 +2618,7 @@ select * from my_locks order by 1;
rollback;
create or replace view my_locks as
-select case when c.relname like 'pg_toast%' then 'pg_toast' else c.relname end, max(mode::lockmodes) as max_lockmode
+select case when c.relname like 'pg\_toast%' then 'pg_toast' else c.relname end, max(mode::lockmodes) as max_lockmode
from pg_locks l join pg_class c on l.relation = c.oid
where virtualtransaction = (
select virtualtransaction
diff --git a/src/test/regress/expected/cluster.out b/src/test/regress/expected/cluster.out
index 2bb62212ea..7263b3008e 100644
--- a/src/test/regress/expected/cluster.out
+++ b/src/test/regress/expected/cluster.out
@@ -255,7 +255,7 @@ ORDER BY 1;
SELECT relname, relkind,
EXISTS(SELECT 1 FROM pg_class WHERE oid = c.reltoastrelid) AS hastoast
-FROM pg_class c WHERE relname LIKE 'clstr_tst%' ORDER BY relname;
+FROM pg_class c WHERE relname LIKE 'clstr\_tst%' ORDER BY relname;
relname | relkind | hastoast
----------------------+---------+----------
clstr_tst | r | t
diff --git a/src/test/regress/expected/collate.out b/src/test/regress/expected/collate.out
index 0dee7d783a..247a20130f 100644
--- a/src/test/regress/expected/collate.out
+++ b/src/test/regress/expected/collate.out
@@ -586,7 +586,7 @@ CREATE INDEX collate_test1_idx6 ON collate_test1 ((a COLLATE "POSIX")); -- fail
ERROR: collations are not supported by type integer
LINE 1: ...ATE INDEX collate_test1_idx6 ON collate_test1 ((a COLLATE "P...
^
-SELECT relname, pg_get_indexdef(oid) FROM pg_class WHERE relname LIKE 'collate_test%_idx%' ORDER BY 1;
+SELECT relname, pg_get_indexdef(oid) FROM pg_class WHERE relname LIKE 'collate\_test%\_idx%' ORDER BY 1;
relname | pg_get_indexdef
--------------------+-------------------------------------------------------------------------------------------------------------------
collate_test1_idx1 | CREATE INDEX collate_test1_idx1 ON collate_tests.collate_test1 USING btree (b)
diff --git a/src/test/regress/expected/create_am.out b/src/test/regress/expected/create_am.out
index 84da403afc..04a109756a 100644
--- a/src/test/regress/expected/create_am.out
+++ b/src/test/regress/expected/create_am.out
@@ -256,7 +256,7 @@ SELECT
END COLLATE "C" AS relname
FROM pg_class AS pc
LEFT JOIN pg_am AS pa ON (pa.oid = pc.relam)
-WHERE pc.relname LIKE 'tableam_%_heapx'
+WHERE pc.relname LIKE 'tableam\_%\_heapx'
ORDER BY 3, 1, 2;
relkind | amname | relname
---------+--------+-----------------------------
diff --git a/src/test/regress/expected/create_view.out b/src/test/regress/expected/create_view.out
index 2fd36ca9a1..9d0c52224c 100644
--- a/src/test/regress/expected/create_view.out
+++ b/src/test/regress/expected/create_view.out
@@ -161,7 +161,7 @@ SELECT relname FROM pg_class
SELECT relname FROM pg_class
WHERE relname LIKE 'v%'
- AND relnamespace IN (SELECT oid FROM pg_namespace WHERE nspname LIKE 'pg_temp%')
+ AND relnamespace IN (SELECT oid FROM pg_namespace WHERE nspname LIKE 'pg\_temp%')
ORDER BY relname;
relname
----------
@@ -210,7 +210,7 @@ SELECT relname FROM pg_class
SELECT relname FROM pg_class
WHERE relname LIKE 'temporal%'
- AND relnamespace IN (SELECT oid FROM pg_namespace WHERE nspname LIKE 'pg_temp%')
+ AND relnamespace IN (SELECT oid FROM pg_namespace WHERE nspname LIKE 'pg\_temp%')
ORDER BY relname;
relname
-----------
@@ -243,7 +243,7 @@ AND EXISTS (SELECT g FROM tbl4 LEFT JOIN tbl3 ON tbl4.h = tbl3.f)
AND NOT EXISTS (SELECT g FROM tbl4 LEFT JOIN tmptbl ON tbl4.h = tmptbl.j);
NOTICE: view "mytempview" will be a temporary view
SELECT count(*) FROM pg_class where relname LIKE 'mytempview'
-And relnamespace IN (SELECT OID FROM pg_namespace WHERE nspname LIKE 'pg_temp%');
+And relnamespace IN (SELECT OID FROM pg_namespace WHERE nspname LIKE 'pg\_temp%');
count
-------
1
diff --git a/src/test/regress/expected/lock.out b/src/test/regress/expected/lock.out
index 185fd2f879..3ed90dd57a 100644
--- a/src/test/regress/expected/lock.out
+++ b/src/test/regress/expected/lock.out
@@ -42,7 +42,7 @@ BEGIN TRANSACTION;
LOCK TABLE lock_view1 IN EXCLUSIVE MODE;
-- lock_view1 and lock_tbl1 are locked.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
relname
------------
@@ -55,7 +55,7 @@ BEGIN TRANSACTION;
LOCK TABLE lock_view2 IN EXCLUSIVE MODE;
-- lock_view1, lock_tbl1, and lock_tbl1a are locked.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
relname
------------
@@ -69,7 +69,7 @@ BEGIN TRANSACTION;
LOCK TABLE lock_view3 IN EXCLUSIVE MODE;
-- lock_view3, lock_view2, lock_tbl1, and lock_tbl1a are locked recursively.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
relname
------------
@@ -84,7 +84,7 @@ BEGIN TRANSACTION;
LOCK TABLE lock_view4 IN EXCLUSIVE MODE;
-- lock_view4, lock_tbl1, and lock_tbl1a are locked.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
relname
------------
@@ -98,7 +98,7 @@ BEGIN TRANSACTION;
LOCK TABLE lock_view5 IN EXCLUSIVE MODE;
-- lock_view5, lock_tbl1, and lock_tbl1a are locked.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
relname
------------
@@ -112,7 +112,7 @@ BEGIN TRANSACTION;
LOCK TABLE lock_view6 IN EXCLUSIVE MODE;
-- lock_view6 an lock_tbl1 are locked.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
relname
------------
diff --git a/src/test/regress/expected/stats.out b/src/test/regress/expected/stats.out
index 61fbf7e41e..fb44f1dcd3 100644
--- a/src/test/regress/expected/stats.out
+++ b/src/test/regress/expected/stats.out
@@ -162,7 +162,7 @@ SELECT wait_for_stats();
-- check effects
SELECT relname, n_tup_ins, n_tup_upd, n_tup_del, n_live_tup, n_dead_tup
FROM pg_stat_user_tables
- WHERE relname like 'trunc_stats_test%' order by relname;
+ WHERE relname like 'trunc\_stats\_test%' order by relname;
relname | n_tup_ins | n_tup_upd | n_tup_del | n_live_tup | n_dead_tup
-------------------+-----------+-----------+-----------+------------+------------
trunc_stats_test | 3 | 0 | 0 | 0 | 0
diff --git a/src/test/regress/expected/temp.out b/src/test/regress/expected/temp.out
index eab75dbe2c..515c6b1b95 100644
--- a/src/test/regress/expected/temp.out
+++ b/src/test/regress/expected/temp.out
@@ -246,7 +246,7 @@ create temp table temp_parted_oncommit_test2
insert into temp_parted_oncommit_test values (1), (2);
commit;
-- no relations remain in this case.
-select relname from pg_class where relname like 'temp_parted_oncommit_test%';
+select relname from pg_class where relname like 'temp\_parted\_oncommit\_test%';
relname
---------
(0 rows)
@@ -273,7 +273,8 @@ select * from temp_parted_oncommit_test;
(1 row)
-- two relations remain in this case.
-select relname from pg_class where relname like 'temp_parted_oncommit_test%';
+select relname from pg_class where relname like 'temp\_parted\_oncommit\_test%'
+ order by relname;
relname
----------------------------
temp_parted_oncommit_test
@@ -290,7 +291,7 @@ create temp table temp_inh_oncommit_test1 ()
insert into temp_inh_oncommit_test1 values (1);
commit;
-- no relations remain in this case
-select relname from pg_class where relname like 'temp_inh_oncommit_test%';
+select relname from pg_class where relname like 'temp\_inh\_oncommit\_test%';
relname
---------
(0 rows)
@@ -309,7 +310,7 @@ select * from temp_inh_oncommit_test;
(0 rows)
-- one relation remains
-select relname from pg_class where relname like 'temp_inh_oncommit_test%';
+select relname from pg_class where relname like 'temp\_inh\_oncommit\_test%';
relname
------------------------
temp_inh_oncommit_test
diff --git a/src/test/regress/sql/alter_table.sql b/src/test/regress/sql/alter_table.sql
index 99af0b851b..0e734520e7 100644
--- a/src/test/regress/sql/alter_table.sql
+++ b/src/test/regress/sql/alter_table.sql
@@ -1399,7 +1399,7 @@ insert into at_partitioned values(3, 'bar');
create temp table old_oids as
select relname, oid as oldoid, relfilenode as oldfilenode
- from pg_class where relname like 'at_partitioned%';
+ from pg_class where relname like 'at\_partitioned%';
select relname,
c.oid = oldoid as orig_oid,
@@ -1411,11 +1411,11 @@ select relname,
end as storage,
obj_description(c.oid, 'pg_class') as desc
from pg_class c left join old_oids using (relname)
- where relname like 'at_partitioned%'
+ where relname like 'at\_partitioned%'
order by relname;
select conname, obj_description(oid, 'pg_constraint') as desc
- from pg_constraint where conname like 'at_partitioned%'
+ from pg_constraint where conname like 'at\_partitioned%'
order by conname;
alter table at_partitioned alter column name type varchar(127);
@@ -1432,11 +1432,11 @@ select relname,
end as storage,
obj_description(c.oid, 'pg_class') as desc
from pg_class c left join old_oids using (relname)
- where relname like 'at_partitioned%'
+ where relname like 'at\_partitioned%'
order by relname;
select conname, obj_description(oid, 'pg_constraint') as desc
- from pg_constraint where conname like 'at_partitioned%'
+ from pg_constraint where conname like 'at\_partitioned%'
order by conname;
-- Don't remove this DROP, it exposes bug #15672
@@ -1470,14 +1470,14 @@ CREATE TABLE test_inh_check_child() INHERITS(test_inh_check);
\d test_inh_check_child
select relname, conname, coninhcount, conislocal, connoinherit
from pg_constraint c, pg_class r
- where relname like 'test_inh_check%' and c.conrelid = r.oid
+ where relname like 'test\_inh\_check%' and c.conrelid = r.oid
order by 1, 2;
ALTER TABLE test_inh_check ALTER COLUMN a TYPE numeric;
\d test_inh_check
\d test_inh_check_child
select relname, conname, coninhcount, conislocal, connoinherit
from pg_constraint c, pg_class r
- where relname like 'test_inh_check%' and c.conrelid = r.oid
+ where relname like 'test\_inh\_check%' and c.conrelid = r.oid
order by 1, 2;
-- also try noinherit, local, and local+inherited cases
ALTER TABLE test_inh_check ADD CONSTRAINT bnoinherit CHECK (b > 100) NO INHERIT;
@@ -1488,14 +1488,14 @@ ALTER TABLE test_inh_check ADD CONSTRAINT bmerged CHECK (b > 1);
\d test_inh_check_child
select relname, conname, coninhcount, conislocal, connoinherit
from pg_constraint c, pg_class r
- where relname like 'test_inh_check%' and c.conrelid = r.oid
+ where relname like 'test\_inh\_check%' and c.conrelid = r.oid
order by 1, 2;
ALTER TABLE test_inh_check ALTER COLUMN b TYPE numeric;
\d test_inh_check
\d test_inh_check_child
select relname, conname, coninhcount, conislocal, connoinherit
from pg_constraint c, pg_class r
- where relname like 'test_inh_check%' and c.conrelid = r.oid
+ where relname like 'test\_inh\_check%' and c.conrelid = r.oid
order by 1, 2;
-- ALTER COLUMN TYPE with different schema in children
@@ -1568,7 +1568,7 @@ create type lockmodes as enum (
drop view my_locks;
create or replace view my_locks as
-select case when c.relname like 'pg_toast%' then 'pg_toast' else c.relname end, max(mode::lockmodes) as max_lockmode
+select case when c.relname like 'pg\_toast%' then 'pg_toast' else c.relname end, max(mode::lockmodes) as max_lockmode
from pg_locks l join pg_class c on l.relation = c.oid
where virtualtransaction = (
select virtualtransaction
@@ -1655,7 +1655,7 @@ select * from my_locks order by 1;
rollback;
create or replace view my_locks as
-select case when c.relname like 'pg_toast%' then 'pg_toast' else c.relname end, max(mode::lockmodes) as max_lockmode
+select case when c.relname like 'pg\_toast%' then 'pg_toast' else c.relname end, max(mode::lockmodes) as max_lockmode
from pg_locks l join pg_class c on l.relation = c.oid
where virtualtransaction = (
select virtualtransaction
diff --git a/src/test/regress/sql/cluster.sql b/src/test/regress/sql/cluster.sql
index 522bfeead4..d20d136708 100644
--- a/src/test/regress/sql/cluster.sql
+++ b/src/test/regress/sql/cluster.sql
@@ -79,7 +79,7 @@ ORDER BY 1;
SELECT relname, relkind,
EXISTS(SELECT 1 FROM pg_class WHERE oid = c.reltoastrelid) AS hastoast
-FROM pg_class c WHERE relname LIKE 'clstr_tst%' ORDER BY relname;
+FROM pg_class c WHERE relname LIKE 'clstr\_tst%' ORDER BY relname;
-- Verify that indisclustered is correctly set
SELECT pg_class.relname FROM pg_index, pg_class, pg_class AS pg_class_2
diff --git a/src/test/regress/sql/collate.sql b/src/test/regress/sql/collate.sql
index 89de26a227..056c8fbf20 100644
--- a/src/test/regress/sql/collate.sql
+++ b/src/test/regress/sql/collate.sql
@@ -199,7 +199,7 @@ CREATE INDEX collate_test1_idx4 ON collate_test1 (((b||'foo') COLLATE "POSIX"));
CREATE INDEX collate_test1_idx5 ON collate_test1 (a COLLATE "POSIX"); -- fail
CREATE INDEX collate_test1_idx6 ON collate_test1 ((a COLLATE "POSIX")); -- fail
-SELECT relname, pg_get_indexdef(oid) FROM pg_class WHERE relname LIKE 'collate_test%_idx%' ORDER BY 1;
+SELECT relname, pg_get_indexdef(oid) FROM pg_class WHERE relname LIKE 'collate\_test%\_idx%' ORDER BY 1;
-- foreign keys
diff --git a/src/test/regress/sql/create_am.sql b/src/test/regress/sql/create_am.sql
index a7f6de7e9b..e9e1deae01 100644
--- a/src/test/regress/sql/create_am.sql
+++ b/src/test/regress/sql/create_am.sql
@@ -192,7 +192,7 @@ SELECT
END COLLATE "C" AS relname
FROM pg_class AS pc
LEFT JOIN pg_am AS pa ON (pa.oid = pc.relam)
-WHERE pc.relname LIKE 'tableam_%_heapx'
+WHERE pc.relname LIKE 'tableam\_%\_heapx'
ORDER BY 3, 1, 2;
-- don't want to keep those tables, nor the default
diff --git a/src/test/regress/sql/create_view.sql b/src/test/regress/sql/create_view.sql
index 8c0f45cc52..9ca5875318 100644
--- a/src/test/regress/sql/create_view.sql
+++ b/src/test/regress/sql/create_view.sql
@@ -152,7 +152,7 @@ SELECT relname FROM pg_class
ORDER BY relname;
SELECT relname FROM pg_class
WHERE relname LIKE 'v%'
- AND relnamespace IN (SELECT oid FROM pg_namespace WHERE nspname LIKE 'pg_temp%')
+ AND relnamespace IN (SELECT oid FROM pg_namespace WHERE nspname LIKE 'pg\_temp%')
ORDER BY relname;
CREATE SCHEMA testviewschm2;
@@ -177,7 +177,7 @@ SELECT relname FROM pg_class
ORDER BY relname;
SELECT relname FROM pg_class
WHERE relname LIKE 'temporal%'
- AND relnamespace IN (SELECT oid FROM pg_namespace WHERE nspname LIKE 'pg_temp%')
+ AND relnamespace IN (SELECT oid FROM pg_namespace WHERE nspname LIKE 'pg\_temp%')
ORDER BY relname;
CREATE TABLE tbl1 ( a int, b int);
@@ -201,7 +201,7 @@ AND EXISTS (SELECT g FROM tbl4 LEFT JOIN tbl3 ON tbl4.h = tbl3.f)
AND NOT EXISTS (SELECT g FROM tbl4 LEFT JOIN tmptbl ON tbl4.h = tmptbl.j);
SELECT count(*) FROM pg_class where relname LIKE 'mytempview'
-And relnamespace IN (SELECT OID FROM pg_namespace WHERE nspname LIKE 'pg_temp%');
+And relnamespace IN (SELECT OID FROM pg_namespace WHERE nspname LIKE 'pg\_temp%');
--
-- CREATE VIEW and WITH(...) clause
diff --git a/src/test/regress/sql/lock.sql b/src/test/regress/sql/lock.sql
index 26a7e59a13..a486fb3085 100644
--- a/src/test/regress/sql/lock.sql
+++ b/src/test/regress/sql/lock.sql
@@ -46,42 +46,42 @@ BEGIN TRANSACTION;
LOCK TABLE lock_view1 IN EXCLUSIVE MODE;
-- lock_view1 and lock_tbl1 are locked.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
ROLLBACK;
BEGIN TRANSACTION;
LOCK TABLE lock_view2 IN EXCLUSIVE MODE;
-- lock_view1, lock_tbl1, and lock_tbl1a are locked.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
ROLLBACK;
BEGIN TRANSACTION;
LOCK TABLE lock_view3 IN EXCLUSIVE MODE;
-- lock_view3, lock_view2, lock_tbl1, and lock_tbl1a are locked recursively.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
ROLLBACK;
BEGIN TRANSACTION;
LOCK TABLE lock_view4 IN EXCLUSIVE MODE;
-- lock_view4, lock_tbl1, and lock_tbl1a are locked.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
ROLLBACK;
BEGIN TRANSACTION;
LOCK TABLE lock_view5 IN EXCLUSIVE MODE;
-- lock_view5, lock_tbl1, and lock_tbl1a are locked.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
ROLLBACK;
BEGIN TRANSACTION;
LOCK TABLE lock_view6 IN EXCLUSIVE MODE;
-- lock_view6 an lock_tbl1 are locked.
select relname from pg_locks l, pg_class c
- where l.relation = c.oid and relname like '%lock_%' and mode = 'ExclusiveLock'
+ where l.relation = c.oid and relname like '%lock\_%' and mode = 'ExclusiveLock'
order by relname;
ROLLBACK;
-- detecting infinite recursions in view definitions
diff --git a/src/test/regress/sql/stats.sql b/src/test/regress/sql/stats.sql
index 9defd4b7a9..5cd27ffd4f 100644
--- a/src/test/regress/sql/stats.sql
+++ b/src/test/regress/sql/stats.sql
@@ -157,7 +157,7 @@ SELECT wait_for_stats();
-- check effects
SELECT relname, n_tup_ins, n_tup_upd, n_tup_del, n_live_tup, n_dead_tup
FROM pg_stat_user_tables
- WHERE relname like 'trunc_stats_test%' order by relname;
+ WHERE relname like 'trunc\_stats\_test%' order by relname;
SELECT st.seq_scan >= pr.seq_scan + 1,
st.seq_tup_read >= pr.seq_tup_read + cl.reltuples,
diff --git a/src/test/regress/sql/temp.sql b/src/test/regress/sql/temp.sql
index 761955bfe6..a71191d0b4 100644
--- a/src/test/regress/sql/temp.sql
+++ b/src/test/regress/sql/temp.sql
@@ -192,7 +192,7 @@ create temp table temp_parted_oncommit_test2
insert into temp_parted_oncommit_test values (1), (2);
commit;
-- no relations remain in this case.
-select relname from pg_class where relname like 'temp_parted_oncommit_test%';
+select relname from pg_class where relname like 'temp\_parted\_oncommit\_test%';
-- Using ON COMMIT DELETE on a partitioned table does not remove
-- all rows if partitions preserve their data.
begin;
@@ -210,7 +210,8 @@ commit;
-- preserved.
select * from temp_parted_oncommit_test;
-- two relations remain in this case.
-select relname from pg_class where relname like 'temp_parted_oncommit_test%';
+select relname from pg_class where relname like 'temp\_parted\_oncommit\_test%'
+ order by relname;
drop table temp_parted_oncommit_test;
-- Check dependencies between ON COMMIT actions with inheritance trees.
@@ -222,7 +223,7 @@ create temp table temp_inh_oncommit_test1 ()
insert into temp_inh_oncommit_test1 values (1);
commit;
-- no relations remain in this case
-select relname from pg_class where relname like 'temp_inh_oncommit_test%';
+select relname from pg_class where relname like 'temp\_inh\_oncommit\_test%';
-- Data on the parent is removed, and the child goes away.
begin;
create temp table temp_inh_oncommit_test (a int) on commit delete rows;
@@ -233,7 +234,7 @@ insert into temp_inh_oncommit_test values (1);
commit;
select * from temp_inh_oncommit_test;
-- one relation remains
-select relname from pg_class where relname like 'temp_inh_oncommit_test%';
+select relname from pg_class where relname like 'temp\_inh\_oncommit\_test%';
drop table temp_inh_oncommit_test;
-- Tests with two-phase commit
signature.asc
Description: PGP signature
