Re: Snapshot Materialized Views - GSoC

From: Florian Pflug <fgp(at)phlo(dot)org>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Pavel <baros(dot)p(at)seznam(dot)cz>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Snapshot Materialized Views - GSoC
Date: 2010-05-21 14:31:21
Message-ID: 26A82471-FE12-42B9-B4E8-3BDD57849CD2@phlo.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On May 21, 2010, at 15:59 , Robert Haas wrote:
> 2010/5/20 Pavel <baros(dot)p(at)seznam(dot)cz>:
>> For this summer I have plan to make patch inplementing snapshot materialized
>> views (MV). I believe it will not be end of effort to implement more of MV.
>> But I / we need discuss MV syntax and exact behaviour so I have some
>> questions about that for all of you:
>>
>> a) relkind for materialized view in pg_class?
>> - I'm voting for char 'm' quite obvious why, but not sure about alias:
>> 1 - RELKIND_MVIEW
>> 2 - RELKIND_MATVIEW
>> or any other ideas?
>
> I think the prior question is whether we need to create a new relkind
> at all. I'm prepared to believe that the answer is yes, but I'd like
> to see a clear justification of why we can't use either 'v' or 'r'.
> It seems to me that a materialized view is a lot like a regular old
> table with a special rewrite rule attached to it somewhere.

I guess the justification is that with the same argument you could argue that a view should have relkind 'r', since it's just an empty table with a rewrite rule attached. I think relkind is mostly there to make pg_dump's and the information schema's job easier - without it, distinguishing tables with ON SELECT rules from views seem rather AI-complete. The same holds for materialized views vs. tables and materialized views vs. views.

best regards,
Florian Pflug

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Pavel Stehule 2010-05-21 15:10:43 Re: unnailing shared relations (was Re: global temporary tables)
Previous Message Robert Haas 2010-05-21 14:20:38 unnailing shared relations (was Re: global temporary tables)