Re: in BeginCopyTo make materialized view using COPY TO instead of COPY (query).

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: Kirill Reshke <reshkekirill(at)gmail(dot)com>
Cc: jian he <jian(dot)universality(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Michael Paquier <michael(at)paquier(dot)xyz>
Subject: Re: in BeginCopyTo make materialized view using COPY TO instead of COPY (query).
Date: 2025-03-29 14:40:55
Message-ID: CAKFQuwbs61rxxCUVhECLSq4Xrz9s54dD2TzhX58d7+6WcC8dpA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Saturday, March 29, 2025, Kirill Reshke <reshkekirill(at)gmail(dot)com> wrote:

> On Sat, 29 Mar 2025 at 09:47, jian he <jian(dot)universality(at)gmail(dot)com> wrote:
> >
> > will use {table_beginscan, table_scan_getnextslot, table_endscan}
> > to output the data.
> > but views don't have storage, table_beginscan mechanism won't work.
> >
> > so i don't think this is possible for view.
>
> Well... So you are saying that let us have inconsistent features
> because of how things are implemented in core... I don't sure I'm
> buying that, but whatever, let's hear some other voices from the
> community. My argument is that while we are working on it, perhaps we
> should revise certain implementation specifics along the way. However,
> this is merely my opinion on the matter.
>

At present copy {table} to only exists to support pg_dump. It is not
marketed as a general purpose export facility. While copy {relation} from
is a general purpose importer. Do we want to turn copy to into a general
purpose exporter and start accepting patches to export foreign tables, deal
with partitioned tables, views of both kinds? Given we already accept
things in copy from that copy to cannot produce the symmetry argument seems
flawed.

I’m on board with making copy {relation} to a general purpose export
facility and allowing for incremental implementations as people wish to
spend time developing them. Consistency should not prevent progress here.

On the topic of copy {matview} from, why not permit it? In particular,
with dump/restore we could dump the materialized view and restore it, which
seems like a win in terms of time spent restoring. That wouldn’t be this
patch.

David J.

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2025-03-29 14:48:10 Re: AIO v2.5
Previous Message Tom Lane 2025-03-29 14:08:49 Re: SQLFunctionCache and generic plans