On Tue, Jun 27, 2017 at 7:23 PM, Alexander Korotkov <a.korot...@postgrespro.ru> wrote: > On Tue, Jun 27, 2017 at 4:08 PM, Amit Kapila <amit.kapil...@gmail.com> > wrote: >> >> Similarly, >> if the page format is changed you need to consider all page scan API's >> like heapgettup_pagemode/heapgetpage. > > > If page format is changed, then heapgettup_pagemode/heapgetpage should use > appropriate API functions for manipulating page items. I'm very afraid of > overriding whole heapgettup_pagemode/heapgetpage and monstrous functions > like heap_update without understanding of clear use-case. It's definitely > not needed for changing heap page format. >
Yeah, we might not change them completely, there will always be some common parts, but as of now, this API considers that we can return a pointer to tuple on the page with just having a pin on the buffer. This is based on the assumption that nobody can update the current tuple, only a new tuple will be created on the update. For some use cases like in-place updates, we might want to do that differently. -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers