>> Backend pid doesn't solve this issue, because the temp schema name for a
>> logged-in user is based on MyBackendId, not pid, i.e. your temp schema
>> name is something like pg_temp_1 when MyBackendId = 1, etc. It would be
>> easy enough to write a function exposing this, the question is whether
>> it is desirable to expose it?
I see no reason to do so at all.
What you want is not the BackendId; what you want is the temp schema
name, and current_schemas() can tell you that.
But so far I haven't seen any convincing argument why any client query
would really want to look at current_schemas(), either. What you
actually want to know about is visibility, and computing that from
current_schemas() is quite an expensive proposition. I think what
we need to expose is RelationIsVisible and friends, not BackendId.
regards, tom lane