>Hi, > >On Wed, Jun 3, 2026 at 10:20?PM Jim Jones <[email protected]> wrote: >> >> Session 1 here does not create a temporary table (most likely a copy & >> paste error), but I could reproduce this error as you suggested: >> > >Sorry, I wrote it manually and forgot to specify "TEMP". It is implied here, >of course. > >> >> At a first glance the check seems reasonable. One tiny wording nit: the >> comment in ExtendBufferedRelLocal says "... covering any attempt to >> extend local relation.", but to avoid any confusing with the meaning of >> RELATION_IS_LOCAL I'd argue that "covering any attempt to extend a >> temporary relation" would be slightly clearer. >> > >Thanks for looking into this! I agree with your comment. > >Please, see v2 patch with fixed comment. > >-- >Best regards, >Daniil Davydov
Hi, Daniil , Jim Just as described in the comment of RELATION_IS_OTHER_TEMP macro in rel.h, existing buffer manager routines including ReadBuffer_common(), StartReadBuffersImpl() and PrefetchBuffer() have already invoked this macro to check cross-session temporary table access. All these functions are located in bufmgr.c. For code consistency, I suggest adding the same RELATION_IS_OTHER_TEMP check in ExtendBufferedRelCommon() (also in bufmgr.c), right before calling ExtendBufferedRelLocal(). Meanwhile, we should also update the comment of RELATION_IS_OTHER_TEMP accordingly to keep the documentation synchronized with code changes. regards, -- ZizhuanLiu (X-MAN) [email protected]
