Re: [Proposal] Global temporary tables

Tomas Vondra <tomas.vondra@2ndquadrant.com>

From: Tomas Vondra <tomas.vondra@2ndquadrant.com>
To: Konstantin Knizhnik <k.knizhnik@postgrespro.ru>
Cc: 曾文旌(义从) <wenjing.zwj@alibaba-inc.com>, Pavel Stehule <pavel.stehule@gmail.com>, Robert Haas <robertmhaas@gmail.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-12T01:14:01Z
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 →
  1. PageAddItemExtended(): Add LP_UNUSED assertion.

  2. Remove temporary files after backend crash

  3. Fix comment in indexing.c

  4. Fix failure to ignore leftover temp tables after a server crash.

On Fri, Jan 10, 2020 at 03:24:34PM +0300, Konstantin Knizhnik wrote:
>
>
>On 09.01.2020 19:30, Tomas Vondra wrote:
>
>
>>
>>>
>>>>
>>>>>3 Still no one commented on GTT's transaction information 
>>>>>processing, they include
>>>>>3.1 Should gtt's frozenxid need to be care?
>>>>>3.2 gtt’s clog clean
>>>>>3.3 How to deal with "too old" gtt data
>>>>>
>>>>
>>>>No idea what to do about this.
>>>>
>>>
>>>I wonder what is the specific of GTT here?
>>>The same problem takes place for normal (local) temp tables, doesn't it?
>>>
>>
>>Not sure. TBH I'm not sure I understand what the issue actually is.
>
>Just open session, create temporary table and insert some data in it.
>Then in other session run 2^31 transactions (at my desktop it takes 
>about 2 hours).
>As far as temp tables are not proceeded by vacuum, database is stalled:
>
> ERROR:  database is not accepting commands to avoid wraparound data 
>loss in database "postgres"
>
>It seems to be quite dubious behavior and it is strange to me that 
>nobody complains about it.
>We discuss  many issues related with temp tables (statistic, parallel 
>queries,...) which seems to be less critical.
>
>But this problem is not specific to GTT - it can be reproduced with 
>normal (local) temp tables.
>This is why I wonder why do we need to solve it in GTT patch.
>

Yeah, I think that's out of scope for GTT patch. Once we solve it for
plain temporary tables, we'll solve it for GTT too.

regards

-- 
Tomas Vondra                  http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services