Re: BUG #6061: Progresql.exe memory usage using HOLD cursor.

From: "Delorme, Yann" <Yann(dot)Delorme(at)esker(dot)fr>
To: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #6061: Progresql.exe memory usage using HOLD cursor.
Date: 2011-06-16 07:37:11
Message-ID: 16940004307E8140B1AFF255B4C3B860FF9F@LY-EX10-MB-1.esker.corp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Thanks

Do you think that it will be fix in future release 9.1 ?

Regards,

Yann

Yann Delorme
Senior Software Engineer / Senior Software Engineer
Esker SA
Tél : +33 (0)4 72 83 46 46

Fax : + 33 (0)4 72 83 46 40
mailto:Yann(dot)Delorme(at)esker(dot)fr
http://www.esker.fr/http://www.flydoc.fr/

CONFIDENTIALITE : Ce message et les éventuelles pièces jointes sont confidentiels. Si vous n'êtes pas dans la liste des destinataires, veuillez informer l'expéditeur immédiatement et ne pas divulguer le contenu à une tierce personne. Les idées et opinions présentées dans ce message sont celles de son auteur, et ne représentent pas nécessairement celles de la société. Par ailleurs et malgré toutes les précautions prises pour éviter la présence de virus dans nos envois, nous vous recommandons de prendre, de votre côté, les mesures permettant d'assurer la non-introduction de virus dans votre système informatique. La société ne saurait être tenue pour responsable de tout dommage causé par la présence d'un virus dans ce message.
__________
-----Message d'origine-----

De : Tom Lane [mailto:tgl(at)sss(dot)pgh(dot)pa(dot)us]
Envoyé : mercredi 15 juin 2011 18:43
À : Delorme, Yann
Cc : pgsql-bugs(at)postgresql(dot)org
Objet : Re: [BUGS] BUG #6061: Progresql.exe memory usage using HOLD cursor.

"Yann" <yann(dot)delorme(at)esker(dot)fr> writes:
> The issue is that in this case all rows are store in memory instead of
> file in the process postgresql.exe

> I think the issue is in the file tuplestore.c.
> When a tuple is added the function static void
> tuplestore_puttuple_common(Tuplestorestate *state, void *tuple),
> USEMEM is not called with tuple size.

Hmm ... yeah, I think there's a leak there.

> I think that, after adding the tuple in the array, a call to USEMEM
> should be done.

No, the callers of tuplestore_puttuple_common are supposed to do that.
But it looks like tuplestore_putvalues() forgot to do so. So data loads that go through that particular API would miss incrementing the space counter.

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Guillaume Smet 2011-06-16 08:00:40 Re: BUG #6061: Progresql.exe memory usage using HOLD cursor.
Previous Message Tom Lane 2011-06-16 05:39:40 Re: BUG #6062: psql terminates on auto-complete