Re: [HACKERS] Pluggable storage

From: Haribabu Kommi <kommi(dot)haribabu(at)gmail(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>, Alexander Korotkov <a(dot)korotkov(at)postgrespro(dot)ru>
Cc: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Thomas Munro <thomas(dot)munro(at)enterprisedb(dot)com>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [HACKERS] Pluggable storage
Date: 2018-01-09 12:42:28
Message-ID: CAJrrPGdY_hgvu06R_vCibUktKRLp=b8nBfeZkh=KRc95tq4euA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sat, Jan 6, 2018 at 6:31 AM, Alexander Korotkov <
a(dot)korotkov(at)postgrespro(dot)ru> wrote:

> On Fri, Jan 5, 2018 at 7:20 PM, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>
>> I do not like the way that this patch set uses the word "storage". In
>> current usage, storage is a thing that certain kinds of relations
>> have. Plain relations (a.k.a. heap tables) have storage, indexes have
>> storage, materialized views have storage, TOAST tables have storage,
>> and sequences have storage. This patch set wants to use "storage AM"
>> to mean a replacement for a plain heap table, but I think that's going
>> to create a lot of confusion, because it overlaps heavily with the
>> existing meaning yet is different.
>
>
> Good point, thank you for noticing that. Name "storage" is really
> confusing
> for this purpose.
>

Thanks for the review and suggestion.

> My suggestion is to call these
>> "table access methods" rather than "storage access methods". Then,
>> the default table AM can be heap. This has the nice property that you
>> create an index using CREATE INDEX and the support functions arrive
>> via an IndexAmRoutine, so correspondingly you would create a table
>> using CREATE TABLE and the support functions would arrive via a
>> TableAmRoutine -- so all the names match.
>>
>
I changed the patches to use Table instead of storage. Changed all the
structures and exposed functions also for better readability

Updated patches are attached.

Regards,
Hari Babu
Fujitsu Australia

Attachment Content-Type Size
0010-table-rewrite-functionality.patch application/octet-stream 11.1 KB
0011-Improve-tuple-locking-interface.patch application/octet-stream 46.6 KB
0012-Table-AM-shared-memory-API.patch application/octet-stream 6.5 KB
0001-Change-Create-Access-method-to-include-table-handler.patch application/octet-stream 9.3 KB
0002-Table-AM-API-init-functions.patch application/octet-stream 10.0 KB
0003-Adding-tableam-hanlder-to-relation-structure.patch application/octet-stream 7.0 KB
0004-Adding-tuple-visibility-functions-to-table-AM.patch application/octet-stream 52.4 KB
0005-slot-hooks-are-added-to-table-AM.patch application/octet-stream 62.9 KB
0006-Tuple-Insert-API-is-added-to-table-AM.patch application/octet-stream 92.8 KB
0007-Scan-functions-are-added-to-table-AM.patch application/octet-stream 103.2 KB
0008-Remove-HeapScanDesc-usage-outside-heap.patch application/octet-stream 95.8 KB
0009-BulkInsertState-is-added-into-table-AM.patch application/octet-stream 10.7 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Arthur Zakirov 2018-01-09 12:48:55 Re: to_typemod(type_name) information function
Previous Message Marina Polyakova 2018-01-09 12:41:02 Re: [HACKERS] WIP Patch: Precalculate stable functions, infrastructure v1