Hello, I think a more appropriate question to be asked here would be at what point (in the life of a typical tuple), does a tuple's header contain t_datum or otherwise, which I would also like to be answered.
On Mon, May 20, 2013 at 6:06 PM, Soroosh Sardari <soroosh.sard...@gmail.com> wrote: > Thanks, > > If a tuple constructed in memory we don't need t_heap. I have another > question, > How make an in-memory tuple? > > > > > On Mon, May 20, 2013 at 12:46 PM, Amit Langote <amitlangot...@gmail.com> > wrote: >> >> Hello, >> >> I think the comment just above the HeapTupleFields struct definition >> has the related details. >> >> /* >> * Heap tuple header. To avoid wasting space, the fields should be >> * laid out in such a way as to avoid structure padding. >> * >> * Datums of composite types (row types) share the same general structure >> * as on-disk tuples, so that the same routines can be used to build and >> * examine them. However the requirements are slightly different: a Datum >> * does not need any transaction visibility information, and it does need >> * a length word and some embedded type information. We can achieve this >> * by overlaying the xmin/cmin/xmax/cmax/xvac fields of a heap tuple >> * with the fields needed in the Datum case. Typically, all tuples built >> * in-memory will be initialized with the Datum fields; but when a tuple >> is >> * about to be inserted in a table, the transaction fields will be filled, >> * overwriting the datum fields. >> >> >> especially the last line points as to what roles each of them plays, >> though, I would like to hear more about additional details from others >> who might reply. >> >> >> >> On Mon, May 20, 2013 at 4:28 PM, Soroosh Sardari >> <soroosh.sard...@gmail.com> wrote: >> > Dear Hackers >> > >> > In fix part oh HeapTuple, there is a union that is named t_choice, >> > union >> > { >> > HeapTupleFields t_heap; >> > DatumTupleFields t_datum; >> > } t_choice; >> > >> > I can't find out why we need t_datum, actually there is no comment about >> > DatumTupleFields. >> > >> > Regards >> > Soroosh >> > >> > >> >> >> >> -- >> Amit Langote > > -- Amit Langote -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers