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
Views: Raw Message | Whole Thread | Download mbox
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.

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


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