Andres Freund <andres@2ndquadrant.com> wrote:
> On 2013-04-30 07:33:05 -0700, Kevin Grittner wrote:
>> Andres Freund <andres@2ndquadrant.com> wrote:
>>> 1) vacuum can truncate the table to an empty relation already
>>> if there is no data returned by the view's query which then
>>> leads to the wrong scannability state.
>>> So we need to make vacuum skip cleaning out the last page.
>>> Once we get incrementally updated matviews there are more
>>> situations to get into this than just a query not returning
>>> anything.
>> Yeah, I posted a short patch earlier on this thread that fixes
>> that. Nobody has commented on it, and so far I have not
>> committed anything related to this without posting details and
>> giving ample opportunity for anyone to comment. If nobody
>> objects, I can push that, and this issue is gone.
>
> Well, this bug is gone, but the multiple layer violations aren't.
Attached is a patch with regression test if we don't obviate the
need for it by tracking the populated status in a different way or
allowing unpopulated matviews to be used in queries. I'll hold off
on pushing it until we decide.
--
Kevin Grittner
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company