pgAudit 1.4.1 commit log

Stamp 1.4.1.

commit   : a64bf29700e5bef6644720c08ec52fc287a99c5b    
  
author   : David Steele <[email protected]>    
date     : Mon, 5 Oct 2020 15:30:22 -0400    
  
committer: David Steele <[email protected]>    
date     : Mon, 5 Oct 2020 15:30:22 -0400    

Click here for diff

M Makefile
A pgaudit–1.4–1.4.1.sql
R100 pgaudit–1.4.sql pgaudit–1.4.1.sql
M pgaudit.control

Add PostgreSQL 13 version and update URLs.

commit   : 57efe563317e5bf68899330a77f585b58a9adbb9    
  
author   : David Steele <[email protected]>    
date     : Wed, 9 Sep 2020 09:55:54 -0400    
  
committer: David Steele <[email protected]>    
date     : Wed, 9 Sep 2020 09:55:54 -0400    

Click here for diff

M README.md

Fix "pgaudit stack is not empty" error.

commit   : eeacd135016d21044c22de419121072e1b66c641    
  
author   : David Steele <[email protected]>    
date     : Wed, 9 Sep 2020 08:29:38 -0400    
  
committer: David Steele <[email protected]>    
date     : Wed, 9 Sep 2020 08:29:38 -0400    

Click here for diff

Select, show, and explain cursors are not freed until they are closed, so they are left on the stack between calls to the backend. The assertion to make sure the stack was empty on each call did not expect to see them and threw an error.  
  
Allow select, show, and explain cursors on the stack between calls to handle this case.  
  
Also log and remove close statements from the stack immediately so they are logged correctly.  
  
Reported by @Giak79, @HesusFTW, @laurenz (Laurenz Albe), @svb007, @dylrich (Dylan Richardson)  
Tested by @yugo-n (Yugo Nagata)  

M expected/pgaudit.out
M pgaudit.c
M sql/pgaudit.sql

Fix misclassification of partitioned tables/indexes.

commit   : 7295ea19ae4b456c7a461d9bb9aeaec8ee5c4180    
  
author   : gaoxueyu <[email protected]>    
date     : Tue, 21 Jul 2020 12:54:28 -0400    
  
committer: David Steele <[email protected]>    
date     : Tue, 21 Jul 2020 12:54:28 -0400    

Click here for diff

Partitioned tables and indexes were being classified as UNKNOWN but they should be classified as TABLE/INDEX.  

M expected/pgaudit.out
M pgaudit.c
M sql/pgaudit.sql

commit   : ff50aa9be81498fed5dab640ab6a86c5a0fd9373    
  
author   : David Steele <[email protected]>    
date     : Thu, 18 Jun 2020 08:21:53 -0400    
  
committer: David Steele <[email protected]>    
date     : Thu, 18 Jun 2020 08:21:53 -0400    

Click here for diff

M pgaudit.c

Use syscache to get relation namespace/name.

commit   : 0a4b561ae4e952e06d561e6ff18788ee1340c220    
  
author   : David Steele <[email protected]>    
date     : Thu, 18 Jun 2020 07:47:12 -0400    
  
committer: David Steele <[email protected]>    
date     : Thu, 18 Jun 2020 07:47:12 -0400    

Click here for diff

The prior method of opening the relation with NoLock failed during assert builds.  
  
Using the syscache allows us to get the namespace/name without calling relation_open(). Since the syscache calls are performed after permissions have been checked it should not be possible to have a cache miss.  
  
Found by @rykp.  
Reviewed by Joe Conway (@jconway), Stephen Frost (@sfrost).  

M pgaudit.c

Use more common types for create conversion.

commit   : 81c56555cdd7122bcaab841afbb916c71969bb05    
  
author   : David Steele <[email protected]>    
date     : Wed, 17 Jun 2020 14:24:41 -0400    
  
committer: David Steele <[email protected]>    
date     : Wed, 17 Jun 2020 14:24:41 -0400    

Click here for diff

These types are available across all versions and forks of PostgreSQL and are not likely to go away anytime soon.  

M expected/pgaudit.out
M sql/pgaudit.sql