From: "Tom Lane" <t...@sss.pgh.pa.us>
This seems like a pretty unsafe suggestion, because the smgr level doesn't
know or care whether relations are temp; files are files.  In any case it
would only paper over one specific instance of whatever problem you're
worried about, because sinval messages definitely do need to be sent in
general.

I'm sorry I don't show the exact problem yet. Apart from that, I understood that you insist it's not appropriate for smgr to be aware of whether the file is a temporary relation, in terms of module layering. However, it doesn't seem so in the current implementation. md.c, which is a layer under or part of smgr, uses SmgrIsTemp(). In addition, as the name suggests, SmgrIsTemp() is a function of smgr, which is defined in smgr.h. So, it's not inappropriate for smgr to use it.

What I wanted to ask is whether and why sinval messages are really necessary for session-private objects like temp relations. I thought shared inval is, as the name indicates, for objects "shared" among sessions. If so, sinval for session-private objects doesn't seem to match the concept.

Regards
MauMau



--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to