Re: [Proposal] Global temporary tables
曾文旌 (义从) <wenjing.zwj@alibaba-inc.com>
From: 曾文旌 <wenjing.zwj@alibaba-inc.com>
To: tushar <tushar.ahuja@enterprisedb.com>
Cc: Prabhat Sahu <prabhat.sahu@enterprisedb.com>, Pavel Stehule <pavel.stehule@gmail.com>, Robert Haas <robertmhaas@gmail.com>, Tomas Vondra <tomas.vondra@2ndquadrant.com>, Konstantin Knizhnik <k.knizhnik@postgrespro.ru>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>, "蔡松露(子嘉)" <zijia@taobao.com>, "Cai, Le" <le.cai@alibaba-inc.com>
Date: 2020-05-07T11:12:24Z
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
> 2020年4月29日 下午7:46,tushar <tushar.ahuja@enterprisedb.com> 写道: > > On 4/29/20 8:52 AM, 曾文旌 wrote: >> Fixed the error message to make the expression more accurate. In v33. > > Thanks wenjing > > Please refer this scenario , where getting an error while performing cluster o/p > > 1) > > X terminal - > > postgres=# create global temp table f(n int); > CREATE TABLE > > Y Terminal - > > postgres=# create index index12 on f(n); > CREATE INDEX > postgres=# \q > > X terminal - > > postgres=# reindex index index12; > REINDEX > postgres=# cluster f using index12; > ERROR: cannot cluster on invalid index "index12" > postgres=# drop index index12; > DROP INDEX > > if this is an expected , could we try to make the error message more simpler, if possible. > > Another issue - > > X terminal - > > postgres=# create global temp table f11(n int); > CREATE TABLE > postgres=# create index ind1 on f11(n); > CREATE INDEX > postgres=# create index ind2 on f11(n); > CREATE INDEX > postgres=# > > Y terminal - > > postgres=# drop table f11; > ERROR: cannot drop index ind2 or global temporary table f11 > HINT: Because the index is created on the global temporary table and other backend attached it. > postgres=# > > it is only mentioning about ind2 index but what about ind1 and what if - they have lots of indexes ? > i think - we should not mix index information while dropping the table and vice versa. postgres=# drop index index12; ERROR: cannot drop index index12 or global temporary table f HINT: Because the index is created on the global temporary table and other backend attached it. postgres=# drop table f; ERROR: cannot drop index index12 or global temporary table f HINT: Because the index is created on the global temporary table and other backend attached it. postgres=# Dropping an index on a GTT and dropping a GTT with an index can both trigger this message, so the message looks like this, and it feels like there's no better way to do it. Wenjing > > -- > regards,tushar > EnterpriseDB https://www.enterprisedb.com/ > The Enterprise PostgreSQL Company