On Thu, Jun 14, 2018 at 10:38:14PM -0400, Tom Lane wrote:
> David Rowley <david.rowley@2ndquadrant.com> writes:
>> On 15 June 2018 at 02:42, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>>> I think that if possible, we should still allow a partitioned table
>>> in which all the rels are temp tables of the current session. What we
>>> have to disallow is (a) temp/permanent mixes and (b) temp tables from
>>> different sessions.
>
>> So, this used to work in v10. Is it fine to just pluck the feature out
>> of the v11 release and assume nobody cares?
>
> IIUC, it worked in v10 only for small values of "work".
Yeah, if we could get to the set of points mentioned above that would a
consistent user-facing definition. ATExecAttachPartition() is actually
heading toward that behavior but its set of checks is incomplete.
I am quickly looking at forbid-temp-parts-1.patch from previous message
https://postgr.es/m/a6bab73c-c5a8-2c25-f858-5d6d800a852d@lab.ntt.co.jp
and this shines per its lack of tests. It would be easy enough to test
that temp and permanent relations are not mixed within the same session
for multiple levels of partitioning. Amit, could you add some? There
may be tweaks needed for foreign tables or such, but I have not looked
close enough at the problem yet..
--
Michael