postgresql/src/include/access
Andres Freund 4eda0a6470 Don't include low level locking code from frontend code.
Some frontend code like e.g. pg_xlogdump or pg_resetxlog, has to use
backend headers. Unfortunately until now that code includes most of the
locking code. It's generally not nice to expose such low level details,
but de6fd1c898 made that a hard problem. We fall back to defining
'inline' away if the compiler doesn't support it - that can cause linker
errors like on buildfarm animal pademelon if a inline function
references backend only code.

To fix that problem separate definitions from lock.h that are required
from frontend code into lockdefs.h and use it in the relevant
places. I've only removed the minimal amount of necessary definitions
for now - it might turn out that we want more for other reasons.

To avoid such details being exposed again put some checks against being
included from frontend code into atomics.h, lock.h, lwlock.h and
s_lock.h. It's otherwise fairly easy to indirectly include these
headers.

Discussion: 20150806070902.GE12214@awork2.anarazel.de
2015-08-07 15:10:56 +02:00
..
attnum.h Fix various typos and grammar errors in comments. 2015-04-26 18:42:31 +02:00
brin.h Fix BRIN to use SnapshotAny during summarization 2015-08-05 16:20:50 -03:00
brin_internal.h Add BRIN infrastructure for "inclusion" opclasses 2015-05-15 18:05:22 -03:00
brin_page.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00
brin_pageops.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
brin_revmap.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
brin_tuple.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
brin_xlog.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
clog.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
commit_ts.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00
genam.h Don't include low level locking code from frontend code. 2015-08-07 15:10:56 +02:00
gin.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00
gin_private.h Rely on inline functions even if that causes warnings in older compilers. 2015-08-05 18:19:52 +02:00
gist.h Move strategy numbers to include/access/stratnum.h 2015-05-15 17:03:16 -03:00
gist_private.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00
gistscan.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
hash.h Don't include low level locking code from frontend code. 2015-08-07 15:10:56 +02:00
heapam.h Redesign tablesample method API, and do extensive code review. 2015-07-25 14:39:00 -04:00
heapam_xlog.h Add support for INSERT ... ON CONFLICT DO NOTHING/UPDATE. 2015-05-08 05:43:10 +02:00
hio.h Add support for INSERT ... ON CONFLICT DO NOTHING/UPDATE. 2015-05-08 05:43:10 +02:00
htup.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
htup_details.h Remove obsolete heap_formtuple/modifytuple/deformtuple functions. 2015-07-02 21:21:23 +03:00
itup.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
multixact.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00
nbtree.h Move strategy numbers to include/access/stratnum.h 2015-05-15 17:03:16 -03:00
parallel.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00
printtup.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
reloptions.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
relscan.h Fix some oversights in BRIN patch. 2015-07-21 13:38:24 -04:00
rewriteheap.h Collection of typo fixes. 2015-05-20 16:56:22 +03:00
rmgr.h Add rmgr callback to name xlog record types for display purposes. 2014-09-19 16:20:29 +02:00
rmgrlist.h Collection of typo fixes. 2015-05-20 16:56:22 +03:00
sdir.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
skey.h Move strategy numbers to include/access/stratnum.h 2015-05-15 17:03:16 -03:00
slru.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
spgist.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
spgist_private.h Don't assume that 'char' is signed. 2015-07-27 21:51:25 +03:00
stratnum.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00
subtrans.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
sysattr.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
timeline.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
transam.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
tsmapi.h Redesign tablesample method API, and do extensive code review. 2015-07-25 14:39:00 -04:00
tupconvert.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
tupdesc.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
tupmacs.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
tuptoaster.h Don't include low level locking code from frontend code. 2015-08-07 15:10:56 +02:00
twophase.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
twophase_rmgr.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
valid.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
visibilitymap.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
xact.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00
xlog.h Make postmaster restart archiver soon after it dies, even during recovery. 2015-06-12 23:11:51 +09:00
xlog_fn.h Update copyright for 2015 2015-01-06 11:43:47 -05:00
xlog_internal.h Make use of xlog_internal.h's macros in WAL-related utilities. 2015-07-02 10:35:38 +09:00
xlogdefs.h Introduce replication progress tracking infrastructure. 2015-04-29 19:30:53 +02:00
xloginsert.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00
xlogreader.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00
xlogrecord.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00
xlogutils.h pgindent run for 9.5 2015-05-23 21:35:49 -04:00