Re: [Proposal] Global temporary tables
Pavel Stehule <pavel.stehule@gmail.com>
From: Pavel Stehule <pavel.stehule@gmail.com>
To: Konstantin Knizhnik <k.knizhnik@postgrespro.ru>
Cc: Robert Haas <robertmhaas@gmail.com>, Tomas Vondra <tomas.vondra@2ndquadrant.com>, 曾文旌(义从) <wenjing.zwj@alibaba-inc.com>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>, 蔡松露(子嘉) <zijia@taobao.com>, "Cai, Le" <le.cai@alibaba-inc.com>, 萧少聪(铁庵) <shaocong.xsc@alibaba-inc.com>
Date: 2020-01-24T09:09:32Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
PageAddItemExtended(): Add LP_UNUSED assertion.
- 30aaab26e521 14.0 cited
-
Remove temporary files after backend crash
- cd91de0d1795 14.0 cited
-
Fix comment in indexing.c
- 9fd2952cf492 14.0 cited
-
Fix failure to ignore leftover temp tables after a server crash.
- 6919b7e32947 9.3.0 cited
pá 24. 1. 2020 v 9:39 odesílatel Konstantin Knizhnik < k.knizhnik@postgrespro.ru> napsal: > > > On 23.01.2020 23:47, Robert Haas wrote: > > On Sat, Jan 11, 2020 at 8:51 PM Tomas Vondra > > <tomas.vondra@2ndquadrant.com> wrote: > >> I proposed just ignoring those new indexes because it seems much simpler > >> than alternative solutions that I can think of, and it's not like those > >> other solutions don't have other issues. > > +1. > > > >> For example, I've looked at the "on demand" building as implemented in > >> global_private_temp-8.patch, I kinda doubt adding a bunch of index build > >> calls into various places in index code seems somewht suspicious. > > +1. I can't imagine that's a safe or sane thing to do. > > > > As far as you know there are two versions of GTT implementations now. > And we are going to merge them into single patch. > But there are some principle question concerning provided functionality > which has to be be discussed: > should we prohibit DDL on GTT if there are more than one sessions using > it. It includes creation/dropping indexes, dropping table, altering > table... > > If the answer is "yes", then the question whether to populate new > indexes with data is no relevant at all, because such situation will not > be possible. > But in this case we will get incompatible behavior with normal > (permanent) tables and it seems to be very inconvenient from DBA point > of view: > it will be necessary to enforce all clients to close their sessions to > perform some DDL manipulations with GTT. > Some DDLs will be very difficult to implement if GTT is used by more > than one backend, for example altering table schema. > > My current solution is to allow creation/droping index on GTT and > dropping table itself, while prohibit alter schema at all for GTT. > Wenjing's approach is to prohibit any DDL if GTT is used by more than > one backend. > When I create index on GTT in one session, then I don't expect creating same index in all other sessions that uses same GTT. But I can imagine to creating index on GTT enforces index in current session, and for other sessions this index will be invalid to end of session. Regards Pavel > > -- > Konstantin Knizhnik > Postgres Professional: http://www.postgrespro.com > The Russian Postgres Company > >