postgresql/src/backend
Andres Freund b40933101c Perform slot validity checks in a separate pass over expression.
This reduces code duplication a bit, but the primary benefit that it
makes JITing expression evaluation easier. When doing so we can't, as
previously done in the interpreted case, really change opcode without
recompiling. Nor dow we just carry around unnecessary branches to
avoid re-checking over and over.

As a minor side-effect this makes ExecEvalStepOp() O(log(N)) rather
than O(N).

Author: Andres Freund
Discussion: https://postgr.es/m/20170901064131.tazjxwus3k2w3ybh@alap3.anarazel.de
2017-12-29 12:45:25 -08:00
..
access Extend near-wraparound hints to include replication slots 2017-12-29 14:01:25 +00:00
bootstrap Exclude flex-generated code from coverage testing 2017-10-16 16:28:11 -04:00
catalog Minor edits to catalog files and scripts 2017-12-21 19:07:32 -03:00
commands Extend near-wraparound hints to include replication slots 2017-12-29 14:01:25 +00:00
executor Perform slot validity checks in a separate pass over expression. 2017-12-29 12:45:25 -08:00
foreign Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
lib Rethink MemoryContext creation to improve performance. 2017-12-13 13:55:16 -05:00
libpq Move SCRAM-related name definitions to scram-common.h 2017-12-18 16:59:48 -05:00
main Install Windows crash dump handler before all else. 2017-11-12 14:31:00 -08:00
nodes Rearrange execution of PARAM_EXTERN Params for plpgsql's benefit. 2017-12-21 12:57:45 -05:00
optimizer Fix UNION/INTERSECT/EXCEPT over no columns. 2017-12-22 12:08:06 -05:00
parser Fix crash when using CALL on an aggregate 2017-12-13 10:37:48 -05:00
po Translation updates 2017-08-07 13:55:34 -04:00
port Add some const decorations to prototypes 2017-11-10 13:38:57 -05:00
postmaster Add parallel-aware hash joins. 2017-12-21 00:43:41 -08:00
regex Mop-up for commit 85feb77aa0. 2017-09-22 11:35:12 -04:00
replication Properly set base backup backends to active in pg_stat_activity 2017-12-29 16:28:32 +01:00
rewrite Fix creation of resjunk tlist entries for inherited mixed UPDATE/DELETE. 2017-11-27 17:54:07 -05:00
snowball Add some const decorations to prototypes 2017-11-10 13:38:57 -05:00
statistics Support boolean columns in functional-dependency statistics. 2017-12-04 11:51:43 -05:00
storage Fix race-under-concurrency in PathNameCreateTemporaryDir. 2017-12-27 10:56:14 -08:00
tcop Rearrange execution of PARAM_EXTERN Params for plpgsql's benefit. 2017-12-21 12:57:45 -05:00
tsearch Update typedefs.list and re-run pgindent 2017-11-29 09:24:24 -05:00
utils Protect against hypothetical memory leaks in RelationGetPartitionKey 2017-12-27 18:06:14 -03:00
.gitignore Add .gitignore entries for AIX-specific intermediate build artifacts. 2015-07-08 20:44:22 -04:00
Makefile Inject $(ICU_LIBS) regardless of platform. 2017-08-20 21:22:18 -07:00
common.mk Add ICU_CFLAGS to global CPPFLAGS 2017-06-12 15:57:22 -04:00
nls.mk Translation updates 2017-05-15 12:19:54 -04:00