diff options
| author | Peter Eisentraut | 2003-05-15 15:50:21 +0000 |
|---|---|---|
| committer | Peter Eisentraut | 2003-05-15 15:50:21 +0000 |
| commit | 2c0556068fc308ed9cce06c85de7e42305d34b86 (patch) | |
| tree | 2c9f5561bdc7b660e2fbc5eb2dd67a24f7a654f8 /src/test/regress | |
| parent | 2a2f6cfa3983e6834299857c80bc07d32d1e019a (diff) | |
Indexing support for pattern matching operations via separate operator
class when lc_collate is not C.
Diffstat (limited to 'src/test/regress')
| -rw-r--r-- | src/test/regress/expected/opr_sanity.out | 19 | ||||
| -rw-r--r-- | src/test/regress/sql/opr_sanity.sql | 10 |
2 files changed, 17 insertions, 12 deletions
diff --git a/src/test/regress/expected/opr_sanity.out b/src/test/regress/expected/opr_sanity.out index 48831e911be..2573d2011c3 100644 --- a/src/test/regress/expected/opr_sanity.out +++ b/src/test/regress/expected/opr_sanity.out @@ -103,11 +103,13 @@ WHERE p1.oid != p2.oid AND (p1.proargtypes[0] < p2.proargtypes[0]); proargtypes | proargtypes -------------+------------- + 25 | 1042 25 | 1043 + 1042 | 1043 1114 | 1184 1560 | 1562 2277 | 2283 -(4 rows) +(6 rows) SELECT DISTINCT p1.proargtypes[1], p2.proargtypes[1] FROM pg_proc AS p1, pg_proc AS p2 @@ -118,10 +120,13 @@ WHERE p1.oid != p2.oid AND (p1.proargtypes[1] < p2.proargtypes[1]); proargtypes | proargtypes -------------+------------- + 25 | 1042 + 25 | 1043 + 1042 | 1043 1114 | 1184 1560 | 1562 2277 | 2283 -(3 rows) +(6 rows) SELECT DISTINCT p1.proargtypes[2], p2.proargtypes[2] FROM pg_proc AS p1, pg_proc AS p2 @@ -332,7 +337,7 @@ WHERE p1.oprnegate = p2.oid AND SELECT p1.oid, p1.oprcode, p2.oid, p2.oprcode FROM pg_operator AS p1, pg_operator AS p2 WHERE p1.oprlsortop = p2.oid AND - (p1.oprname != '=' OR p2.oprname != '<' OR + (p1.oprname NOT IN ('=', '~=~') OR p2.oprname NOT IN ('<', '~<~') OR p1.oprkind != 'b' OR p2.oprkind != 'b' OR p1.oprleft != p2.oprleft OR p1.oprleft != p2.oprright OR @@ -345,7 +350,7 @@ WHERE p1.oprlsortop = p2.oid AND SELECT p1.oid, p1.oprcode, p2.oid, p2.oprcode FROM pg_operator AS p1, pg_operator AS p2 WHERE p1.oprrsortop = p2.oid AND - (p1.oprname != '=' OR p2.oprname != '<' OR + (p1.oprname NOT IN ('=', '~=~') OR p2.oprname NOT IN ('<', '~<~') OR p1.oprkind != 'b' OR p2.oprkind != 'b' OR p1.oprright != p2.oprleft OR p1.oprright != p2.oprright OR @@ -358,7 +363,7 @@ WHERE p1.oprrsortop = p2.oid AND SELECT p1.oid, p1.oprcode, p2.oid, p2.oprcode FROM pg_operator AS p1, pg_operator AS p2 WHERE p1.oprltcmpop = p2.oid AND - (p1.oprname != '=' OR p2.oprname != '<' OR + (p1.oprname NOT IN ('=', '~=~') OR p2.oprname NOT IN ('<', '~<~') OR p1.oprkind != 'b' OR p2.oprkind != 'b' OR p1.oprleft != p2.oprleft OR p1.oprright != p2.oprright OR @@ -371,7 +376,7 @@ WHERE p1.oprltcmpop = p2.oid AND SELECT p1.oid, p1.oprcode, p2.oid, p2.oprcode FROM pg_operator AS p1, pg_operator AS p2 WHERE p1.oprgtcmpop = p2.oid AND - (p1.oprname != '=' OR p2.oprname != '>' OR + (p1.oprname NOT IN ('=', '~=~') OR p2.oprname NOT IN ('>', '~>~') OR p1.oprkind != 'b' OR p2.oprkind != 'b' OR p1.oprleft != p2.oprleft OR p1.oprright != p2.oprright OR @@ -427,7 +432,7 @@ SELECT p1.oid, p1.oprname FROM pg_operator AS p1 WHERE p1.oprcanhash AND NOT (p1.oprkind = 'b' AND p1.oprresult = 'bool'::regtype AND - p1.oprleft = p1.oprright AND p1.oprname = '=' AND p1.oprcom = p1.oid); + p1.oprleft = p1.oprright AND p1.oprname IN ('=', '~=~') AND p1.oprcom = p1.oid); oid | oprname -----+--------- 353 | = diff --git a/src/test/regress/sql/opr_sanity.sql b/src/test/regress/sql/opr_sanity.sql index 4b07a9ab3f5..5be76aa3b41 100644 --- a/src/test/regress/sql/opr_sanity.sql +++ b/src/test/regress/sql/opr_sanity.sql @@ -276,7 +276,7 @@ WHERE p1.oprnegate = p2.oid AND SELECT p1.oid, p1.oprcode, p2.oid, p2.oprcode FROM pg_operator AS p1, pg_operator AS p2 WHERE p1.oprlsortop = p2.oid AND - (p1.oprname != '=' OR p2.oprname != '<' OR + (p1.oprname NOT IN ('=', '~=~') OR p2.oprname NOT IN ('<', '~<~') OR p1.oprkind != 'b' OR p2.oprkind != 'b' OR p1.oprleft != p2.oprleft OR p1.oprleft != p2.oprright OR @@ -286,7 +286,7 @@ WHERE p1.oprlsortop = p2.oid AND SELECT p1.oid, p1.oprcode, p2.oid, p2.oprcode FROM pg_operator AS p1, pg_operator AS p2 WHERE p1.oprrsortop = p2.oid AND - (p1.oprname != '=' OR p2.oprname != '<' OR + (p1.oprname NOT IN ('=', '~=~') OR p2.oprname NOT IN ('<', '~<~') OR p1.oprkind != 'b' OR p2.oprkind != 'b' OR p1.oprright != p2.oprleft OR p1.oprright != p2.oprright OR @@ -296,7 +296,7 @@ WHERE p1.oprrsortop = p2.oid AND SELECT p1.oid, p1.oprcode, p2.oid, p2.oprcode FROM pg_operator AS p1, pg_operator AS p2 WHERE p1.oprltcmpop = p2.oid AND - (p1.oprname != '=' OR p2.oprname != '<' OR + (p1.oprname NOT IN ('=', '~=~') OR p2.oprname NOT IN ('<', '~<~') OR p1.oprkind != 'b' OR p2.oprkind != 'b' OR p1.oprleft != p2.oprleft OR p1.oprright != p2.oprright OR @@ -306,7 +306,7 @@ WHERE p1.oprltcmpop = p2.oid AND SELECT p1.oid, p1.oprcode, p2.oid, p2.oprcode FROM pg_operator AS p1, pg_operator AS p2 WHERE p1.oprgtcmpop = p2.oid AND - (p1.oprname != '=' OR p2.oprname != '>' OR + (p1.oprname NOT IN ('=', '~=~') OR p2.oprname NOT IN ('>', '~>~') OR p1.oprkind != 'b' OR p2.oprkind != 'b' OR p1.oprleft != p2.oprleft OR p1.oprright != p2.oprright OR @@ -355,7 +355,7 @@ SELECT p1.oid, p1.oprname FROM pg_operator AS p1 WHERE p1.oprcanhash AND NOT (p1.oprkind = 'b' AND p1.oprresult = 'bool'::regtype AND - p1.oprleft = p1.oprright AND p1.oprname = '=' AND p1.oprcom = p1.oid); + p1.oprleft = p1.oprright AND p1.oprname IN ('=', '~=~') AND p1.oprcom = p1.oid); -- In 6.5 we accepted hashable array equality operators when the array element -- type is hashable. However, what we actually need to make hashjoin work on |
