@@ -84,7 +84,7 @@ BuildEventTriggerCache(void)
8484 * the cache failed, then there might be some junk lying around
8585 * that we want to reclaim.
8686 */
87- MemoryContextReset (EventTriggerCacheContext );
87+ MemoryContextResetAndDeleteChildren (EventTriggerCacheContext );
8888}
8989else
9090{
@@ -119,8 +119,9 @@ BuildEventTriggerCache(void)
119119ctl .keysize = sizeof (EventTriggerEvent );
120120ctl .entrysize = sizeof (EventTriggerCacheEntry );
121121ctl .hash = tag_hash ;
122+ ctl .hcxt = EventTriggerCacheContext ;
122123cache = hash_create ("Event Trigger Cache" ,32 ,& ctl ,
123- HASH_ELEM |HASH_FUNCTION );
124+ HASH_ELEM |HASH_FUNCTION | HASH_CONTEXT );
124125
125126/*
126127 * Prepare to scan pg_event_trigger in name order. We use an MVCC
@@ -237,6 +238,6 @@ DecodeTextArrayToCString(Datum array, char ***cstringp)
237238static void
238239InvalidateEventCacheCallback (Datum arg ,int cacheid ,uint32 hashvalue )
239240{
240- MemoryContextReset (EventTriggerCacheContext );
241+ MemoryContextResetAndDeleteChildren (EventTriggerCacheContext );
241242EventTriggerCache = NULL ;
242243}