On Wed, Feb 27, 2019 at 11:10 AM Andres Freund <andres@anarazel.de> wrote:
Hi,
On 2019-01-21 10:32:37 +1100, Haribabu Kommi wrote: > I am not able to remove the complete t_tableOid from HeapTuple, > because of its use in triggers, as the slot is not available in triggers > and I need to store the tableOid also as part of the tuple.
What precisely do you man by "use in triggers"? You mean that a trigger might access a HeapTuple's t_tableOid directly, even though all of the information is available in the trigger context?
I forgot the exact scenario, but during the trigger function execution, the
pl/pgsql function execution access the TableOidAttributeNumber from the stored
tuple using the heap_get* function. Because of lack of slot support in the triggers,
we still need to maintain the t_tableOid with proper OID. The heaptuple t_tableOid
member data is updated whenever the heaptuple is generated from slot.