postgresql/src/test/regress/sql
Tom Lane 41dd50e84d Fix corner-case behaviors in JSON/JSONB field extraction operators.
Cause the path extraction operators to return their lefthand input,
not NULL, if the path array has no elements.  This seems more consistent
since the case ought to correspond to applying the simple extraction
operator (->) zero times.

Cause other corner cases in field/element/path extraction to return NULL
rather than failing.  This behavior is arguably more useful than throwing
an error, since it allows an expression index using these operators to be
built even when not all values in the column are suitable for the
extraction being indexed.  Moreover, we already had multiple
inconsistencies between the path extraction operators and the simple
extraction operators, as well as inconsistencies between the JSON and
JSONB code paths.  Adopt a uniform rule of returning NULL rather than
throwing an error when the JSON input does not have a structure that
permits the request to be satisfied.

Back-patch to 9.4.  Update the release notes to list this as a behavior
change since 9.3.
2014-08-22 13:17:58 -04:00
..
.gitignore Add a SECURITY LABEL command. 2010-09-27 20:55:27 -04:00
abstime.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
advisory_lock.sql Add transaction-level advisory locks. 2011-02-18 14:05:12 +09:00
aggregates.sql Support ordered-set (WITHIN GROUP) aggregates. 2013-12-23 16:11:35 -05:00
alter_generic.sql Fix whitespace issues found by git diff --check, add gitattributes 2013-11-10 14:48:29 -05:00
alter_table.sql Harden pg_filenode_relation test against concurrent DROP TABLE. 2014-06-13 19:57:59 -04:00
arrays.sql Fix failure to detoast fields in composite elements of structured types. 2014-05-01 15:19:06 -04:00
async.sql Regression tests for LISTEN/NOTIFY/UNLISTEN/pg_notify. 2013-07-03 11:07:08 -04:00
bit.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
bitmapops.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
boolean.sql Clean up references to SQL92 2013-04-20 11:04:41 -04:00
box.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
btree_index.sql Fix breakage of bitmap scan plan creation for special index operators such 2008-11-20 19:52:54 +00:00
case.sql Clean up references to SQL92 2013-04-20 11:04:41 -04:00
char.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
circle.sql Support ORDER BY ... NULLS FIRST/LAST, and add ASC/DESC/NULLS FIRST/NULLS LAST 2007-01-09 02:14:16 +00:00
cluster.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
collate.linux.utf8.sql Support range data types. 2011-11-03 13:42:15 +02:00
collate.sql Revert "Hopefully-portable regression tests for CREATE/ALTER/DROP COLLATION." 2013-07-03 13:27:50 -04:00
combocid.sql Avoid incrementing the CommandCounter when CommandCounterIncrement is called 2007-11-30 21:22:54 +00:00
comments.sql Implement nested block comments in the backend and in psql. 2000-07-14 15:43:57 +00:00
conversion.sql Support hex-string input and output for type BYTEA. 2009-08-04 16:08:37 +00:00
copy2.sql copy: update docs for FORCE_NULL and FORCE_NOT_NULL combination 2014-04-22 16:06:37 -04:00
copyselect.sql Have \copy go through SendQuery 2012-01-25 18:22:00 -03:00
create_aggregate.sql Allow polymorphic aggregates to have non-polymorphic state data types. 2014-04-23 19:17:41 -04:00
create_cast.sql Add test case for CREATE CAST. 2008-10-31 09:17:17 +00:00
create_function_3.sql Move regression test listing of builtin leakproof functions to opr_sanity.sql. 2014-06-05 13:54:25 +02:00
create_index.sql Improve planner to drop constant-NULL inputs of AND/OR where it's legal. 2014-04-29 13:12:46 -04:00
create_misc.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
create_operator.sql Additional regression tests for CREATE OPERATOR. 2013-07-03 10:48:26 -04:00
create_table.sql Do jsonb regression test input in the conventional way. 2014-03-23 20:18:06 -04:00
create_table_like.sql Allow CREATE TABLE (LIKE ...) from composite type 2012-03-03 16:03:05 +02:00
create_type.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
create_view.sql Partial fix for dropped columns in functions returning composite. 2014-07-19 14:28:52 -04:00
date.sql Add make_date() and make_time() functions. 2013-11-17 15:06:50 -05:00
delete.sql Regression tests for TOAST. 2011-04-25 09:48:10 -04:00
dependency.sql Create a separate grantable privilege for TRUNCATE, rather than having it be 2008-09-08 00:47:41 +00:00
domain.sql Add support for renaming domain constraints 2012-04-03 08:11:51 +03:00
drop_if_exists.sql Make DROP IF EXISTS more consistently not fail 2014-01-23 14:40:29 -03:00
enum.sql Allow adding values to an enum type created in the current transaction. 2012-12-01 14:27:30 -05:00
errors.sql Allow empty target list in SELECT. 2013-12-14 20:23:26 -05:00
event_trigger.sql Add sql_drop event for event triggers 2013-03-28 13:05:48 -03:00
float4.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
float8.sql Revert "Add some regression test cases for denormalized float8 input." 2012-02-04 15:52:09 -05:00
foreign_data.sql Implement IMPORT FOREIGN SCHEMA. 2014-07-10 15:01:43 -04:00
foreign_key.sql ALTER TABLE ... ALTER CONSTRAINT for FKs 2013-06-29 00:27:30 +01:00
functional_deps.sql Recognize functional dependency on primary keys. This allows a table's 2010-08-07 02:44:09 +00:00
geometry.sql Revive line type 2013-10-09 22:34:38 -04:00
guc.sql Don't fail for bad GUCs in CREATE FUNCTION with check_function_bodies off. 2013-09-03 18:32:20 -04:00
hash_index.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
horology.sql Fix to_timestamp/to_date's handling of consecutive spaces in format string. 2014-01-20 13:45:51 -05:00
hs_primary_extremes.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
hs_primary_setup.sql Allow read only connections during recovery, known as Hot Standby. 2009-12-19 01:32:45 +00:00
hs_standby_allowed.sql regression test: fix hot standby tests by using repeatable read 2014-04-22 17:23:58 -04:00
hs_standby_check.sql Allow read only connections during recovery, known as Hot Standby. 2009-12-19 01:32:45 +00:00
hs_standby_disallowed.sql Allow read only connections during recovery, known as Hot Standby. 2009-12-19 01:32:45 +00:00
hs_standby_functions.sql Allow read only connections during recovery, known as Hot Standby. 2009-12-19 01:32:45 +00:00
indirect_toast.sql Add support for multiple kinds of external toast datums. 2013-07-02 13:38:55 -04:00
inet.sql Add an in-core GiST index opclass for inet/cidr types. 2014-04-08 15:46:43 -04:00
inherit.sql Fix inherited UPDATE/DELETE with UNION ALL subqueries. 2013-12-14 17:33:53 -05:00
insert.sql Regression tests for TOAST. 2011-04-25 09:48:10 -04:00
int2.sql Improve handling of INT_MIN / -1 and related cases. 2012-11-19 12:24:25 -05:00
int4.sql Improve handling of INT_MIN / -1 and related cases. 2012-11-19 12:24:25 -05:00
int8.sql Improve handling of INT_MIN / -1 and related cases. 2012-11-19 12:24:25 -05:00
interval.sql Fix interval test, which was broken for floating-point timestamps. 2014-05-06 19:53:59 -07:00
join.sql Allow join removal in some cases involving a left join to a subquery. 2014-07-15 21:12:43 -04:00
json.sql Fix corner-case behaviors in JSON/JSONB field extraction operators. 2014-08-22 13:17:58 -04:00
jsonb.sql Fix corner-case behaviors in JSON/JSONB field extraction operators. 2014-08-22 13:17:58 -04:00
limit.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
line.sql Revert "Tweak "line" test to avoid negative zeros on some platforms" 2013-10-25 15:50:31 -04:00
lock.sql Regression tests for LOCK TABLE. 2013-07-15 12:30:41 -04:00
lseg.sql Remove extra newlines at end and beginning of files, add missing newlines 2010-08-19 05:57:36 +00:00
macaddr.sql Add bitwise AND, OR, and NOT operators for macaddr data type. 2012-01-19 15:25:14 -05:00
matview.sql Don't reject ROW_MARK_REFERENCE rowmarks for materialized views. 2014-03-06 11:37:02 -05:00
money.sql Add casts from int4 and int8 to numeric. 2011-04-05 09:35:43 -04:00
name.sql Add a "USING" clause to DELETE, which is equivalent to the FROM clause 2005-04-07 01:51:41 +00:00
namespace.sql Regression tests for SCHEMA commands 2013-12-11 20:45:15 +00:00
numeric.sql Fix corner case bug in numeric to_char(). 2011-09-07 17:07:20 -04:00
numeric_big.sql Remove extra newlines at end and beginning of files, add missing newlines 2010-08-19 05:57:36 +00:00
numerology.sql Remove extra newlines at end and beginning of files, add missing newlines 2010-08-19 05:57:36 +00:00
oid.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
oidjoins.sql Update oidjoins regression test for 9.4. 2014-04-16 14:28:59 -04:00
opr_sanity.sql Add opr_sanity queries to inspect commutator/negator links more closely. 2014-08-16 13:22:52 -04:00
path.sql Remove extra newlines at end and beginning of files, add missing newlines 2010-08-19 05:57:36 +00:00
pg_lsn.sql Tweak new regression test case for better portability. 2014-06-04 21:31:41 -04:00
plancache.sql Change plan caching to honor, not resist, changes in search_path. 2013-01-25 14:14:41 -05:00
plpgsql.sql Extra warnings and errors for PL/pgSQL 2014-04-06 12:21:51 -04:00
point.sql Fix gist_box_same and gist_point_consistent to handle fuzziness correctly. 2013-02-08 18:03:17 -05:00
polygon.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
polymorphism.sql Fix getTypeIOParam to support type record[]. 2011-12-01 12:44:16 -05:00
portals.sql Fix failure to set ActiveSnapshot while rewinding a cursor. 2014-05-07 14:25:11 -04:00
portals_p2.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
prepare.sql Remove extra newlines at end and beginning of files, add missing newlines 2010-08-19 05:57:36 +00:00
prepared_xacts.sql Fix a bug with SSI and prepared transactions: 2011-07-07 18:12:15 +03:00
privileges.sql Shore up ADMIN OPTION restrictions. 2014-02-17 09:33:31 -05:00
psql.sql Fix further concerns about psql wrapping in expanded mode having 2014-08-18 12:20:32 +01:00
random.sql Remove extra newlines at end and beginning of files, add missing newlines 2010-08-19 05:57:36 +00:00
rangefuncs.sql Fix "cannot accept a set" error when only some arms of a CASE return a set. 2014-01-08 20:18:58 -05:00
rangetypes.sql Fix "element <@ range" cost estimation. 2013-03-21 11:21:51 +02:00
regex.sql Fix regex match failures for backrefs combined with non-greedy quantifiers. 2013-07-18 21:22:37 -04:00
regproc.sql Add to_regprocedure() and to_regoperator(). 2014-04-16 12:21:43 -04:00
reltime.sql Add a "USING" clause to DELETE, which is equivalent to the FROM clause 2005-04-07 01:51:41 +00:00
replica_identity.sql psql: conditionally display oids and replication identity 2014-04-15 13:28:54 -04:00
returning.sql Apply a simple solution to the problem of making INSERT/UPDATE/DELETE 2006-09-02 17:06:52 +00:00
rowtypes.sql Fix *-qualification of named parameters in SQL-language functions. 2014-02-03 14:47:17 -05:00
rules.sql Use unaligned output in selected regression queries to reduce diff noise. 2013-10-26 11:24:04 -04:00
sanity_check.sql Use unaligned output in selected regression queries to reduce diff noise. 2013-10-26 11:24:04 -04:00
select.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
select_distinct.sql Alter some gratuitous uses of "ANSI" when "SQL standard" might have been 2009-07-11 21:15:32 +00:00
select_distinct_on.sql Fix assertion failure when a SELECT DISTINCT ON expression is volatile. 2009-09-12 00:04:59 +00:00
select_having.sql Make the behavior of HAVING without GROUP BY conform to the SQL spec. 2005-03-10 23:21:26 +00:00
select_implicit.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
select_into.sql Restructure SELECT INTO's parsetree representation into CreateTableAsStmt. 2012-03-19 21:38:12 -04:00
select_views.sql Fix whitespace issues found by git diff --check, add gitattributes 2013-11-10 14:48:29 -05:00
sequence.sql Make DISCARD SEQUENCES also discard the last used sequence. 2013-10-07 15:55:56 -04:00
stats.sql Add convenience functions pg_sleep_for and pg_sleep_until. 2014-01-30 15:47:56 -05:00
strings.sql Fix regexp_matches() handling of zero-length matches. 2013-07-31 11:31:22 -04:00
subselect.sql Fix bug with whole-row references to append subplans. 2014-07-11 19:12:35 -04:00
temp.sql Don't refer to the database name "regression" inside the regression test 2008-07-03 16:01:10 +00:00
text.sql Move checking an explicit VARIADIC "any" argument into the parser. 2013-07-18 11:52:12 -04:00
time.sql Please find attached two patches for documentation and regression tests 2006-07-06 01:46:38 +00:00
timestamp.sql Constructors for interval, timestamp, timestamptz 2014-03-04 15:09:43 -03:00
timestamptz.sql Be more wary in choice of timezone names to test make_timestamptz with. 2014-05-12 20:21:16 -04:00
timetz.sql Please find attached two patches for documentation and regression tests 2006-07-06 01:46:38 +00:00
tinterval.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
transactions.sql In RelationClearRelation, postpone cache reload if !IsTransactionState(). 2014-02-06 19:38:06 -05:00
triggers.sql Support automatically-updatable views. 2012-12-08 18:26:21 -05:00
truncate.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
tsdicts.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
tsearch.sql Fix ts_rank_cd() to ignore stripped lexemes 2014-03-24 14:37:16 -04:00
tstypes.sql Extend GIN to support partial-match searches, and extend tsquery to support 2008-05-16 16:31:02 +00:00
txid.sql Handle duplicate XIDs in txid_snapshot. 2014-05-15 18:29:20 +03:00
type_sanity.sql Fix CVE-2013-0255 properly. 2013-02-13 16:20:01 -05:00
typed_table.sql Only allow typed tables to hang off composite types, not e.g. tables. 2011-04-18 10:19:46 -04:00
union.sql Forward-patch regression test for "could not find pathkey item to sort". 2014-06-26 10:41:48 -07:00
updatable_views.sql Add ANALYZE into regression tests 2014-04-13 00:41:33 -04:00
update.sql Implement UPDATE tab SET (col1,col2,...) = (SELECT ...), ... 2014-06-18 13:22:34 -04:00
uuid.sql Fix whitespace issues found by git diff --check, add gitattributes 2013-11-10 14:48:29 -05:00
vacuum.sql Remove old-style VACUUM FULL (which was known for a little while as 2010-02-08 04:33:55 +00:00
varchar.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
window.sql Allow pushdown of WHERE quals into subqueries with window functions. 2014-06-27 23:08:08 -07:00
with.sql Add CREATE RECURSIVE VIEW syntax 2013-01-31 22:31:58 -05:00
without_oid.sql Combine cmin and cmax fields of HeapTupleHeaders into a single field, by 2007-02-09 03:35:35 +00:00
xml.sql Prevent access to external files/URLs via XML entity references. 2012-08-14 18:31:16 -04:00
xmlmap.sql Add regression tests for XML mapping of domains 2013-03-13 22:42:57 -04:00