-
- Downloads
Modify AtEOXact_CatCache and AtEOXact_RelationCache to assume that the
ResourceOwner mechanism already released all reference counts for the cache entries; therefore, we do not need to scan the catcache or relcache at transaction end, unless we want to do it as a debugging crosscheck. Do the crosscheck only in Assert mode. This is the same logic we had previously installed in AtEOXact_Buffers to avoid overhead with large numbers of shared buffers. I thought it'd be a good idea to do it here too, in view of Kari Lavikka's recent report showing a real-world case where AtEOXact_CatCache is taking a significant fraction of runtime.
Showing
- src/backend/access/transam/xact.c 15 additions, 1 deletionsrc/backend/access/transam/xact.c
- src/backend/utils/cache/catcache.c 136 additions, 126 deletionssrc/backend/utils/cache/catcache.c
- src/backend/utils/cache/relcache.c 52 additions, 53 deletionssrc/backend/utils/cache/relcache.c
- src/backend/utils/resowner/resowner.c 30 additions, 56 deletionssrc/backend/utils/resowner/resowner.c
Loading
Please register or sign in to comment