Re: [bug fix] Memory leak in dblink
От | Amit Kapila |
---|---|
Тема | Re: [bug fix] Memory leak in dblink |
Дата | |
Msg-id | CAA4eK1KCqJ+jp8oa51CcNhBhm8fwgASSHgjZaZpQX51DV=oSbA@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [bug fix] Memory leak in dblink (Robert Haas <robertmhaas@gmail.com>) |
Ответы |
Re: [bug fix] Memory leak in dblink
|
Список | pgsql-hackers |
On Tue, Jun 10, 2014 at 7:30 PM, Robert Haas <robertmhaas@gmail.com> wrote:
>
> On Tue, Jun 10, 2014 at 12:27 AM, Amit Kapila <amit.kapila16@gmail.com> wrote:
> > Is there a need to free memory context in PG_CATCH()?
> > In error path the memory due to this temporary context will get
> > freed as it will delete the transaction context and this
> > temporary context will definitely be in the hierarchy of it, so
> > it should also get deleted. I think such handling can be
> > useful incase we use PG_CATCH() to suppress the error.
>
> Using PG_CATCH() to suppress an error is pretty much categorically unsafe.
In some cases like for handling exceptions in plpgsql, PG_CATCH()
>
> On Tue, Jun 10, 2014 at 12:27 AM, Amit Kapila <amit.kapila16@gmail.com> wrote:
> > Is there a need to free memory context in PG_CATCH()?
> > In error path the memory due to this temporary context will get
> > freed as it will delete the transaction context and this
> > temporary context will definitely be in the hierarchy of it, so
> > it should also get deleted. I think such handling can be
> > useful incase we use PG_CATCH() to suppress the error.
>
> Using PG_CATCH() to suppress an error is pretty much categorically unsafe.
In some cases like for handling exceptions in plpgsql, PG_CATCH()
is used to handle the exception and then take an appropriate action
based on exception, so in some such cases it might be right to free
the context memory depending on situation.
В списке pgsql-hackers по дате отправления: