Re: hi,is it dangerous to only use tuple pointer through heap_getnext()? - Mailing list pgsql-general

From Alvaro Herrera
Subject Re: hi,is it dangerous to only use tuple pointer through heap_getnext()?
Date
Msg-id 1273886083-sup-6446@alvh.no-ip.org
Whole thread Raw
In response to hi,is it dangerous to only use tuple pointer through heap_getnext()?  (sunpeng <bluevaley@gmail.com>)
List pgsql-general
Excerpts from sunpeng's message of vie may 14 19:15:47 -0400 2010:
> hi,i use these codes to store only pointer of tuple :
> HeapTuple *tuple;
>     tuple = heap_getnext(pHeapScanDesc,ForwardScanDirection);
>     while(tuple){
>         //[1#]here i only store the pointer of tuple in an array for later
> using,that means i don't retrive attribute data from this tuple ,is this ok?

No, this is not safe.  The buffer is unpinned after heap_getnext walks
to the next buffer, and thus could be used for a different page.

--

pgsql-general by date:

Previous
From: sunpeng
Date:
Subject: hi,is it dangerous to only use tuple pointer through heap_getnext()?
Next
From: Craig Ringer
Date:
Subject: Re: psql feature request (\dd+)