Re: Make COPY format extendable: Extract COPY TO format implementations

From: Sutou Kouhei <kou(at)clear-code(dot)com>
To: sawada(dot)mshk(at)gmail(dot)com
Cc: tgl(at)sss(dot)pgh(dot)pa(dot)us, zhjwpku(at)gmail(dot)com, michael(at)paquier(dot)xyz, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Make COPY format extendable: Extract COPY TO format implementations
Date: 2025-03-19 02:56:17
Message-ID: 20250319.115617.1633674031127518041.kou@clear-code.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

In <CAD21AoDU=bYRDDY8MzCXAfg4h9XTeTBdM-wVJaO1t4UcseCpuA(at)mail(dot)gmail(dot)com>
"Re: Make COPY format extendable: Extract COPY TO format implementations" on Mon, 17 Mar 2025 13:50:03 -0700,
Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> wrote:

> I think that built-in formats also need to have their handler
> functions. This seems to be a conventional way for customizable
> features such as tablesample and access methods, and we can simplify
> this function.

OK. 0008 in the attached v37 patch set does it.

> I think we need to update the documentation to describe how users can
> define the handler functions and what each callback function is
> responsible for.

I agree with it but we haven't finalized public APIs yet. Can
we defer it after we finalize public APIs? (Proposed public
APIs exist in 0003, 0006 and 0007.)

And could someone help (take over if possible) writing a
document for this feature? I'm not good at writing a
document in English... 0009 in the attached v37 patch set
has a draft of it. It's based on existing documents in
doc/src/sgml/ and *.h.

0001-0007 aren't changed from v36 patch set.

Thanks,
--
kou

Attachment Content-Type Size
v37-0001-Add-support-for-adding-custom-COPY-TO-format.patch text/x-patch 19.0 KB
v37-0002-Export-CopyToStateData-as-private-data.patch text/x-patch 9.7 KB
v37-0003-Add-support-for-implementing-custom-COPY-TO-form.patch text/x-patch 2.4 KB
v37-0004-Add-support-for-adding-custom-COPY-FROM-format.patch text/x-patch 8.7 KB
v37-0005-Use-COPY_SOURCE_-prefix-for-CopySource-enum-valu.patch text/x-patch 3.5 KB
v37-0006-Add-support-for-implementing-custom-COPY-FROM-fo.patch text/x-patch 2.4 KB
v37-0007-Add-CopyFromSkipErrorRow-for-custom-COPY-format-.patch text/x-patch 11.0 KB
v37-0008-Use-copy-handlers-for-built-in-formats.patch text/x-patch 10.5 KB
v37-0009-Add-document-how-to-write-a-COPY-handler.patch text/x-patch 13.7 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Daniil Davydov 2025-03-19 03:12:20 Re: Forbid to DROP temp tables of other sessions
Previous Message Amit Langote 2025-03-19 02:52:13 Re: Reducing memory consumed by RestrictInfo list translations in partitionwise join planning