postgresql/src/include
Tom Lane 4513d9deda It turns out that TablespaceCreateDbspace fails badly if a relcache flush
occurs when it tries to heap_open pg_tablespace.  When control returns to
smgrcreate, that routine will be holding a dangling pointer to a closed
SMgrRelation, resulting in mayhem.  This is of course a consequence of
the violation of proper module layering inherent in having smgr.c call
a tablespace command routine, but the simplest fix seems to be to change
the locking mechanism.  There's no real need for TablespaceCreateDbspace
to touch pg_tablespace at all --- it's only opening it as a way of locking
against a parallel DROP TABLESPACE command.  A much better answer is to
create a special-purpose LWLock to interlock these two operations.
This drops TablespaceCreateDbspace quite a few layers down the food chain
and makes it something reasonably safe for smgr to call.
2006-01-19 04:45:38 +00:00
..
access Some minor code cleanup, falling out from the removal of rtree. SK_NEGATE 2006-01-14 22:03:35 +00:00
bootstrap Tag appropriate files for rc3 2004-12-31 22:04:05 +00:00
catalog Add a new system view, pg_cursors, that displays the currently available 2006-01-18 06:49:30 +00:00
commands Add a new system view, pg_prepared_statements, that can be used to 2006-01-08 07:00:27 +00:00
executor Repair "Halloween problem" in EvalPlanQual: a tuple that's been inserted by 2006-01-12 21:48:53 +00:00
lib Standard pgindent run for 8.1. 2005-10-15 02:49:52 +00:00
libpq Re-run pgindent, fixing a problem where comment lines after a blank 2005-11-22 18:17:34 +00:00
mb Previous commit message should have been: 2005-12-24 18:23:02 +00:00
nodes Trim an obsolete comment: it is no longer relevant that "SELECT" was 2006-01-01 01:41:42 +00:00
optimizer Teach planner how to rearrange join order for some classes of OUTER JOIN. 2005-12-20 02:30:36 +00:00
parser Implement SQL-compliant treatment of row comparisons for < <= > >= cases 2005-12-28 01:30:02 +00:00
port Fix fsync code to test whether F_FULLFSYNC is available, instead of 2006-01-17 23:52:31 +00:00
postmaster Standard pgindent run for 8.1. 2005-10-15 02:49:52 +00:00
regex Standard pgindent run for 8.1. 2005-10-15 02:49:52 +00:00
rewrite Change expandRTE() and ResolveNew() back to taking just the single 2005-06-04 19:19:42 +00:00
storage It turns out that TablespaceCreateDbspace fails badly if a relcache flush 2006-01-19 04:45:38 +00:00
tcop Make all command-line options of postmaster and postgres the same. See 2006-01-05 10:07:46 +00:00
utils Add a new system view, pg_cursors, that displays the currently available 2006-01-18 06:49:30 +00:00
c.h Remove BEOS port. 2006-01-05 03:01:38 +00:00
fmgr.h Standard pgindent run for 8.1. 2005-10-15 02:49:52 +00:00
funcapi.h Move plpgsql's fetchArgInfo() into funcapi.c, and rename to 2005-12-28 18:11:25 +00:00
getaddrinfo.h Disble some Win32-specific code in win32-client-only builds: 2005-12-08 17:52:11 +00:00
getopt_long.h Some more missed copyright notices. Many of these look like they 2005-01-01 20:44:34 +00:00
Makefile Allow installation into directories containing spaces in the name. 2005-12-09 21:19:36 +00:00
miscadmin.h Make all command-line options of postmaster and postgres the same. See 2006-01-05 10:07:46 +00:00
pg_config_manual.h Remove BEOS port. 2006-01-05 03:01:38 +00:00
pg_config.h.in Fix fsync code to test whether F_FULLFSYNC is available, instead of 2006-01-17 23:52:31 +00:00
pg_config.h.win32 I reconfirmed MS-VC6. Thank you for wonderful correspondence. 2005-12-09 04:50:40 +00:00
pgstat.h Modify pgstats code to reduce performance penalties from oversized stats data 2006-01-18 20:35:06 +00:00
pgtime.h Standard pgindent run for 8.1. 2005-10-15 02:49:52 +00:00
port.h Add documentation on the use of *printf() macros and libintl. 2005-12-06 18:35:10 +00:00
postgres_ext.h Pgindent run for 8.0. 2004-08-29 05:07:03 +00:00
postgres_fe.h Tag appropriate files for rc3 2004-12-31 22:04:05 +00:00
postgres.h Fix the assert_enabled issue properly. This eliminates the former ABI 2006-01-08 21:24:37 +00:00
rusagestub.h Fix a few macro definitions to ensure that unary minus is enclosed in 2005-07-27 12:44:10 +00:00
strdup.h Fix an obsolete file path mentioned in a comment. 2004-01-25 22:19:42 +00:00