Re: Bug with temporary child of a permanent table after recovery

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Jeff Davis <pgsql(at)j-davis(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>, Pg Bugs <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: Bug with temporary child of a permanent table after recovery
Date: 2012-12-17 02:17:38
Message-ID: 28278.1355710658@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

I wrote:
> On the whole I think resurrecting the rd_islocaltemp flag might be the
> best thing. We can keep the use of "relpersistence ==
> RELPERSISTENCE_TEMP" to do what rd_istemp used to do, it's just the
> equation of "rd_backend == MyBackendId" with "is my temp table" that's
> bogus. And this way gets rid of some unnecessary cross-branch coding
> differences.

Here is a draft patch for this. Thoughts/objections?

One thing I noticed that maybe needs more work is that tablecmds.c in
general seems mighty willing to hack upon temp tables belonging to other
sessions. I added tests for that in the places where there already were
checks on relpersistence, but I wonder whether we ought not simply
forbid all forms of ALTER on nonlocal temp rels, right up at the top.

regards, tom lane

Attachment Content-Type Size
restore_islocaltemp.patch text/x-patch 14.6 KB

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message lr 2012-12-17 13:56:13 BUG #7756: When upgrading postgis extension get row is too big: size 9272, maximum size 8160
Previous Message Tom Lane 2012-12-16 21:23:50 Re: Bug with temporary child of a permanent table after recovery