sinval-newrelfilenode-v1.patch

text/plain

Filename: sinval-newrelfilenode-v1.patch
Type: text/plain
Part: 0
Message: Re: Commits 8de72b and 5457a1 (COPY FREEZE)

Patch

Same data as JSON: GET /api/v1/attachments/:id/patch the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes. API reference →
Format: context
Series: patch v1
File+
src/backend/utils/cache/relcache.c 8 0
*** a/src/backend/utils/cache/relcache.c
--- b/src/backend/utils/cache/relcache.c
***************
*** 2149,2156 **** RelationCacheInvalidate(void)
  		/* Must close all smgr references to avoid leaving dangling ptrs */
  		RelationCloseSmgr(relation);
  
! 		/* Ignore new relations, since they are never cross-backend targets */
! 		if (relation->rd_createSubid != InvalidSubTransactionId)
  			continue;
  
  		relcacheInvalsReceived++;
--- 2149,2162 ----
  		/* Must close all smgr references to avoid leaving dangling ptrs */
  		RelationCloseSmgr(relation);
  
! 		/*
! 		 * Ignore new relations; no other backend will manipulate them before
! 		 * we commit.  Likewise, before replacing a relation's relfilenode, we
! 		 * shall have acquired AccessExclusiveLock and drained any applicable
! 		 * pending invalidations.
! 		 */
! 		if (relation->rd_createSubid != InvalidSubTransactionId ||
! 			relation->rd_newRelfilenodeSubid != InvalidSubTransactionId)
  			continue;
  
  		relcacheInvalsReceived++;