2. Actually I do not propose some completely new approach. I try to > provide behavior with is compatible with regular tables. > If you create index for regular table, then it can be used in all > sessions, right? >
I don't understand to this point. Regular tables shares data, shares files. You cannot to separate it. More - you have to uses relatively aggressive locks to be this operation safe. Nothing from these points are valid for GTT. Regards Pavel > And all "various backend-local data structures in the relcache, the > planner, and the executor that remember information about indexes" > have to be properly updated. It is done using invalidation mechanism. > The same mechanism is used in case of DDL operations with GTT, because > we change system catalog. > > So my point here is that creation index of GTT is almost the same as > creation of index for regular tables and the same mechanism will be used > to provide correctness of this operation. > > > -- > Konstantin Knizhnik > Postgres Professional: http://www.postgrespro.com > The Russian Postgres Company > >