[HACKERS] [PATCH] Generic type subscripting

Поиск
Список
Период
Сортировка
От Dmitry Dolgov
Тема [HACKERS] [PATCH] Generic type subscripting
Дата
Msg-id CA+q6zcVovR+XY4mfk-7oNk-rF91gH0PebnNfuUjuuDsyHjOcVA@mail.gmail.com
обсуждение исходный текст
Ответы Re: [HACKERS] [PATCH] Generic type subscripting  (Peter Eisentraut <peter.eisentraut@2ndquadrant.com>)
Re: [HACKERS] [PATCH] Generic type subscripting  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Hi all

Regarding to the previous conversation [1], here is the patch for generic type
subscripting with several improvements. It contains the following changes:

* Subscripting node was separated into `SubscriptingRef` (only for data
  extraction) and `SubscriptingAssignRef` (only for assignment), and common
  data for both nodes is stored in `SubscriptingBase`. When it did make sense, I
  also separated correlated pieces of code. Common code for both nodes works
  with `SubscriptingRef`.

* Type related logic is separated into several functions, and the purpose of
  procedures like `jsonb_subscripting`/`array_subscripting` now is just to
  generate proper node with a correct function oid (I also tried to use a
  function pointer instead of a function oid, and it worked for me in general
  case, but I'm not sure if it will be ok for `_outSubscriptingRef` and
  `_readSubscriptingRef`).

* Function signatures are fixed.

* Functions for type dependent logic are going to be properly verified (where I
  found out such places, e.g. for `check_functions_in_node`)

The only thing left is separated typmod and collation. But since it's necessary
only for future data types, and there is already big enough list of changes
from previous version of this patch, I think it would be great to discuss it now and
implement this feature little bit later.

Generally speaking functionality, which has been implemented in this patch, is
the same. Code itself is little bit clumsy I guess (looks like I need to rename
`SubscriptingRef` to something shorter), but I hope I can refine it soon
enough.

As always, any feedback is welcome.

Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Simon Riggs
Дата:
Сообщение: Re: [HACKERS] avoid bloat from CREATE INDEX CONCURRENTLY
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: [HACKERS] Should we cacheline align PGXACT?