Обсуждение: [HACKERS] Proposal: ALTER EXTENSION SET OPTION

Поиск
Список
Период
Сортировка

[HACKERS] Proposal: ALTER EXTENSION SET OPTION

От
Chris Travers
Дата:
Hi all;

One of the annoyances we currently deal with regarding analytics extensions in a PG environment with mixed versions is there is no facility right now to conditionally support certain modifications to functions that might be required to make certain features work properly.

The case that comes to mind right now is in marking some functions parallel safe for PostgreSQL 9.6 and above while taking no action for 9.5.  Currently we have a few options:

1.  Mark on a best effort basis
2,  Drop support for 9.5 and below
3.  Come up with some much more complicated version graph.

It would be very nice to be able to define some options which could be set for extensions but don't affect their arguments or return types, such as marking functions parallel-safe and then have scripts which run to define these functions.

My thinking is one would have a syntax for a few specified options, such as:

ALTER EXTENSION foo SET OPTION PARALLEL SAFETY;
or if the extension supports the reverse:
ALTER EXTENSION foo UNSET OPTION PARALLEL SAFETY;

Over time more options could be added, but would be mapped to a file convention.  In this case, we could expect:

foo--[version]--set-parallel-safety.sql and foo--[version]--unset-parallel-safety.sql

--
Best Regards,
Chris Travers
Database Administrator

Tel: +49 162 9037 210 | Skype: einhverfr | www.adjust.com 
Saarbrücker Straße 37a, 10405 Berlin