~ubuntu-branches/ubuntu/lucid/postgresql-8.4/lucid-proposed

« back to all changes in this revision

Viewing changes to src/backend/utils/cache/inval.c

  • Committer: Bazaar Package Importer
  • Author(s): Martin Pitt
  • Date: 2009-07-11 16:59:35 UTC
  • mfrom: (5.1.1 karmic)
  • Revision ID: james.westby@ubuntu.com-20090711165935-jfwin6gfrxf0gfsi
Tags: 8.4.0-2
* debian/libpq-dev.install: Ship catalog/genbki.h. (Closes: #536139)
* debian/rules: Drop --enable-cassert for final release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
80
80
 * Portions Copyright (c) 1994, Regents of the University of California
81
81
 *
82
82
 * IDENTIFICATION
83
 
 *        $PostgreSQL: pgsql/src/backend/utils/cache/inval.c,v 1.88 2009/01/01 17:23:50 momjian Exp $
 
83
 *        $PostgreSQL: pgsql/src/backend/utils/cache/inval.c,v 1.89 2009/06/11 14:49:05 momjian Exp $
84
84
 *
85
85
 *-------------------------------------------------------------------------
86
86
 */
403
403
 */
404
404
static void
405
405
ProcessInvalidationMessagesMulti(InvalidationListHeader *hdr,
406
 
                                                                 void (*func) (const SharedInvalidationMessage *msgs, int n))
 
406
                                 void (*func) (const SharedInvalidationMessage *msgs, int n))
407
407
{
408
408
        ProcessMessageListMulti(hdr->cclist, func(msgs, n));
409
409
        ProcessMessageListMulti(hdr->rclist, func(msgs, n));
442
442
 
443
443
        /*
444
444
         * Most of the time, relcache invalidation is associated with system
445
 
         * catalog updates, but there are a few cases where it isn't.  Quick
446
 
         * hack to ensure that the next CommandCounterIncrement() will think
447
 
         * that we need to do CommandEndInvalidationMessages().
 
445
         * catalog updates, but there are a few cases where it isn't.  Quick hack
 
446
         * to ensure that the next CommandCounterIncrement() will think that we
 
447
         * need to do CommandEndInvalidationMessages().
448
448
         */
449
449
        (void) GetCurrentCommandId(true);
450
450
 
1015
1015
 *              Prepare for invalidation messages for nontransactional updates.
1016
1016
 *
1017
1017
 * A nontransactional invalidation is one that must be sent whether or not
1018
 
 * the current transaction eventually commits.  We arrange for all invals
 
1018
 * the current transaction eventually commits.  We arrange for all invals
1019
1019
 * queued between this call and EndNonTransactionalInvalidation() to be sent
1020
1020
 * immediately when the latter is called.
1021
1021
 *
1069
1069
        Assert(transInvalInfo->PriorCmdInvalidMsgs.rclist == NULL);
1070
1070
 
1071
1071
        /*
1072
 
         * At present, this function is only used for CTID-changing updates;
1073
 
         * since the relcache init file doesn't store any tuple CTIDs, we
1074
 
         * don't have to invalidate it.  That might not be true forever
1075
 
         * though, in which case we'd need code similar to AtEOXact_Inval.
 
1072
         * At present, this function is only used for CTID-changing updates; since
 
1073
         * the relcache init file doesn't store any tuple CTIDs, we don't have to
 
1074
         * invalidate it.  That might not be true forever though, in which case
 
1075
         * we'd need code similar to AtEOXact_Inval.
1076
1076
         */
1077
1077
 
1078
1078
        /* Send out the invals */