pgAudit 1.3.2 (upcoming) commit log

Add PostgreSQL 12/13 versions and update URLs.

commit   : cda5efecbd0d8b2824351c0c49d0c44a7dc2ce63    
  
author   : David Steele <david@pgmasters.net>    
date     : Wed, 9 Sep 2020 09:57:12 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Wed, 9 Sep 2020 09:57:12 -0400    

Click here for diff

M README.md

Fix "pgaudit stack is not empty" error.

commit   : 671dd2a628e3ea7bc56f662c9b07d574546f5aeb    
  
author   : David Steele <david@pgmasters.net>    
date     : Wed, 9 Sep 2020 08:32:13 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Wed, 9 Sep 2020 08:32:13 -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   : 966b751551b9f5b435793b83f3a5d442360964ad    
  
author   : gaoxueyu <44825804+gaoxueyu@users.noreply.github.com>    
date     : Tue, 21 Jul 2020 13:21:51 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Tue, 21 Jul 2020 13:21:51 -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   : 9a686ef2d4ddc47e2d0df09d3a20b22e8586cd9e    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 18 Jun 2020 08:22:05 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 18 Jun 2020 08:22:05 -0400    

Click here for diff

M pgaudit.c

Use syscache to get relation namespace/name.

commit   : 5426515a18e19c369afd5514920cef00c778457c    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 18 Jun 2020 07:55:54 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 18 Jun 2020 07:55:54 -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   : 7d73bb2fedb71b229b181d50a091f9f2213974ab    
  
author   : David Steele <david@pgmasters.net>    
date     : Wed, 17 Jun 2020 14:33:23 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Wed, 17 Jun 2020 14:33:23 -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

commit   : 38e59beda8bd207a1f2a8da829f40258f5bb60b3    
  
author   : David Steele <david@pgmasters.net>    
date     : Thu, 23 May 2019 14:19:56 -0400    
  
committer: David Steele <david@pgmasters.net>    
date     : Thu, 23 May 2019 14:19:56 -0400    

Click here for diff

M pgaudit.c