postgresql/src/backend
Stephen Frost 842faa714c Make security barrier views automatically updatable
Views which are marked as security_barrier must have their quals
applied before any user-defined quals are called, to prevent
user-defined functions from being able to see rows which the
security barrier view is intended to prevent them from seeing.

Remove the restriction on security barrier views being automatically
updatable by adding a new securityQuals list to the RTE structure
which keeps track of the quals from security barrier views at each
level, independently of the user-supplied quals.  When RTEs are
later discovered which have securityQuals populated, they are turned
into subquery RTEs which are marked as security_barrier to prevent
any user-supplied quals being pushed down (modulo LEAKPROOF quals).

Dean Rasheed, reviewed by Craig Ringer, Simon Riggs, KaiGai Kohei
2014-04-12 21:04:58 -04:00
..
access Fix bugs in GIN "fast scan" with partial match. 2014-04-10 23:42:04 +03:00
bootstrap Avoid repeated name lookups during table and index DDL. 2014-02-17 09:33:31 -05:00
catalog Create infrastructure for moving-aggregate optimization. 2014-04-12 12:03:30 -04:00
commands Make security barrier views automatically updatable 2014-04-12 21:04:58 -04:00
executor Create infrastructure for moving-aggregate optimization. 2014-04-12 12:03:30 -04:00
foreign Update copyright for 2014 2014-01-07 16:05:30 -05:00
lib Fix typos in comments. 2014-03-17 20:47:28 +09:00
libpq Fix assorted issues in client host name lookup. 2014-04-02 17:11:24 -04:00
main Allow "-C variable" and "--describe-config" even to root users. 2014-04-04 22:03:35 -04:00
nodes Make security barrier views automatically updatable 2014-04-12 21:04:58 -04:00
optimizer Make security barrier views automatically updatable 2014-04-12 21:04:58 -04:00
parser Create infrastructure for moving-aggregate optimization. 2014-04-12 12:03:30 -04:00
po Translation updates 2013-12-02 00:17:07 -05:00
port Add missing include. 2014-04-09 11:46:49 -04:00
postmaster Block signals earlier during postmaster startup. 2014-04-05 18:16:08 -04:00
regex Fix memory leak during regular expression execution. 2014-03-19 11:09:24 -04:00
replication Fix a few more misc typos in comments. 2014-04-10 00:53:55 +03:00
rewrite Make security barrier views automatically updatable 2014-04-12 21:04:58 -04:00
snowball Prefer pg_any_to_server/pg_server_to_any over pg_do_encoding_conversion. 2014-02-23 16:59:05 -05:00
storage Fix misc typos in comments. 2014-04-09 23:16:35 +03:00
tcop Reduce lock levels of some ALTER TABLE cmds 2014-04-06 11:13:43 -04:00
tsearch Avoid memcpy() with same source and destination address. 2014-03-07 13:14:33 +02:00
utils Provide moving-aggregate support for a bunch of numerical aggregates. 2014-04-12 20:33:09 -04:00
.gitignore Add gitignore for mingw/cygwin build outputs 2011-06-09 18:11:47 +02:00
common.mk Remove maintainer-check target, fold into normal build 2013-10-10 20:11:56 -04:00
Makefile Get rid of use of dlltool in Mingw builds. 2014-02-11 12:56:20 -05:00
nls.mk Add libpgcommon to backend gettext source files 2013-10-19 13:49:05 -04:00