Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-27 Thread Ashutosh Bapat
Thanks a lot Michael. On Sun, May 26, 2024 at 4:40 PM Michael Paquier wrote: > On Fri, May 24, 2024 at 09:05:35AM -0300, Ranier Vilela wrote: > > The function *get_attname* palloc the result name (pstrdup). > > Isn't it necessary to free the memory here (pfree)? > > This is going to be freed wit

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-26 Thread Michael Paquier
On Fri, May 24, 2024 at 09:05:35AM -0300, Ranier Vilela wrote: > The function *get_attname* palloc the result name (pstrdup). > Isn't it necessary to free the memory here (pfree)? This is going to be freed with the current memory context, and all the callers of getIdentitySequence() are in query e

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-24 Thread Ranier Vilela
Em sex., 24 de mai. de 2024 às 08:48, Ashutosh Bapat < ashutosh.bapat@gmail.com> escreveu: > > > On Fri, May 24, 2024 at 12:16 PM Michael Paquier > wrote: > >> On Fri, May 24, 2024 at 11:58:51AM +0530, Ashutosh Bapat wrote: >> > If we are looking for avoiding a segfault and get a message whic

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-24 Thread Ashutosh Bapat
On Fri, May 24, 2024 at 12:16 PM Michael Paquier wrote: > On Fri, May 24, 2024 at 11:58:51AM +0530, Ashutosh Bapat wrote: > > If we are looking for avoiding a segfault and get a message which helps > > debugging, using get_attname and get_attnum might be better options. > > get_attname throws an

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-23 Thread Michael Paquier
On Fri, May 24, 2024 at 11:58:51AM +0530, Ashutosh Bapat wrote: > If we are looking for avoiding a segfault and get a message which helps > debugging, using get_attname and get_attnum might be better options. > get_attname throws an error. get_attnum doesn't throw an error and returns > InvalidAttn

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-23 Thread Ashutosh Bapat
On Fri, May 24, 2024 at 11:03 AM Michael Paquier wrote: > On Thu, May 23, 2024 at 08:54:12AM -0300, Ranier Vilela wrote: > > All calls to functions like SearchSysCacheAttName, in the whole codebase, > > checks if returns are valid. > > It must be for a very strong reason, such a style. > > Usuall

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-23 Thread Michael Paquier
On Thu, May 23, 2024 at 08:54:12AM -0300, Ranier Vilela wrote: > All calls to functions like SearchSysCacheAttName, in the whole codebase, > checks if returns are valid. > It must be for a very strong reason, such a style. Usually good practice, as I've outlined once upthread, because we do expect

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-23 Thread Ranier Vilela
Em qui., 23 de mai. de 2024 às 06:27, Ashutosh Bapat < ashutosh.bapat@gmail.com> escreveu: > > > On Thu, May 23, 2024 at 5:52 AM Michael Paquier > wrote: > >> On Wed, May 22, 2024 at 03:28:48PM -0300, Ranier Vilela wrote: >> > 1. Another concern is the function *get_partition_ancestors*, >> >

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-23 Thread Ranier Vilela
Hi Micheal, Em qua., 22 de mai. de 2024 às 21:21, Michael Paquier escreveu: > On Wed, May 22, 2024 at 03:28:48PM -0300, Ranier Vilela wrote: > > 1. Another concern is the function *get_partition_ancestors*, > > which may return NIL, which may affect *llast_oid*, which does not handle > > NIL ent

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-23 Thread Ashutosh Bapat
On Thu, May 23, 2024 at 5:52 AM Michael Paquier wrote: > On Wed, May 22, 2024 at 03:28:48PM -0300, Ranier Vilela wrote: > > 1. Another concern is the function *get_partition_ancestors*, > > which may return NIL, which may affect *llast_oid*, which does not handle > > NIL entries. > > Hm? We alre

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-22 Thread Michael Paquier
On Wed, May 22, 2024 at 03:28:48PM -0300, Ranier Vilela wrote: > 1. Another concern is the function *get_partition_ancestors*, > which may return NIL, which may affect *llast_oid*, which does not handle > NIL entries. Hm? We already know in the code path that the relation we are dealing with when

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-22 Thread Ranier Vilela
Em qua., 22 de mai. de 2024 às 13:09, Ranier Vilela escreveu: > Em qua., 22 de mai. de 2024 às 11:44, Ranier Vilela > escreveu: > >> Hi. >> >> Per Coverity. >> >> 2. returned_null: SearchSysCacheAttName returns NULL (checked 20 out of >> 21 times). >> 3. var_assigned: Assigning: ptup = NULL retu

Re: Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-22 Thread Ranier Vilela
Em qua., 22 de mai. de 2024 às 11:44, Ranier Vilela escreveu: > Hi. > > Per Coverity. > > 2. returned_null: SearchSysCacheAttName returns NULL (checked 20 out of > 21 times). > 3. var_assigned: Assigning: ptup = NULL return value from > SearchSysCacheAttName. > 964ptup = SearchSy

Avoid possible dereference null pointer (src/backend/catalog/pg_depend.c)

2024-05-22 Thread Ranier Vilela
Hi. Per Coverity. 2. returned_null: SearchSysCacheAttName returns NULL (checked 20 out of 21 times). 3. var_assigned: Assigning: ptup = NULL return value from SearchSysCacheAttName. 964ptup = SearchSysCacheAttName(relid, attname); CID 1545986: (#1 of 1): Dereference null return v