Обсуждение: guc
I was playing around with adding a couple new SET commands (REAL_FORMAT
and DOUBLE_PRECISION_FORMAT as per todo list item) and I ended up
playing with GUC a bit.
I've cleaned it up a bit - most of the changes should be fairly
self-explanitory from the patch. Some of the configuration options
handled in variable.c (so far, server_encoding and seed) have been moved
into guc.c and are handled by GUC. Moving them in required adding a
couple of fields to config_generic and friends - a read_only field and a
display_proc field (hook for custom SHOW messages). I've removed
GetConfigOption() and replaced it with ShowConfigOption() which does an
elog(NOTICE) instead of returning a string.
When setting REAL_FORMAT and DOUBLE_PRECISION_FORMAT, the printf-style
format string should be checked for certain things:
- field width of "*" is not allowed
- precision of ".*" is not allowed
- all conversion specifiers except "s" and "n" are allowed
- only one conversion specification other than %% and variations is
allowed
Does this seem reasonable to people? I haven't written a function to
check those yet.. will do soon.
This patch isn't complete yet so don't append it to the pending patches
list, Bruce.
Liam
--
Liam Stewart :: Red Hat Canada, Ltd. :: liams@redhat.com
Вложения
Thread has been saved for the 7.3 release:
http://candle.pha.pa.us/cgi-bin/pgpatches2
---------------------------------------------------------------------------
Liam Stewart wrote:
>
> I was playing around with adding a couple new SET commands (REAL_FORMAT
> and DOUBLE_PRECISION_FORMAT as per todo list item) and I ended up
> playing with GUC a bit.
>
> I've cleaned it up a bit - most of the changes should be fairly
> self-explanitory from the patch. Some of the configuration options
> handled in variable.c (so far, server_encoding and seed) have been moved
> into guc.c and are handled by GUC. Moving them in required adding a
> couple of fields to config_generic and friends - a read_only field and a
> display_proc field (hook for custom SHOW messages). I've removed
> GetConfigOption() and replaced it with ShowConfigOption() which does an
> elog(NOTICE) instead of returning a string.
>
> When setting REAL_FORMAT and DOUBLE_PRECISION_FORMAT, the printf-style
> format string should be checked for certain things:
>
> - field width of "*" is not allowed
> - precision of ".*" is not allowed
> - all conversion specifiers except "s" and "n" are allowed
> - only one conversion specification other than %% and variations is
> allowed
>
> Does this seem reasonable to people? I haven't written a function to
> check those yet.. will do soon.
>
> This patch isn't complete yet so don't append it to the pending patches
> list, Bruce.
>
> Liam
>
> --
> Liam Stewart :: Red Hat Canada, Ltd. :: liams@redhat.com
[ Attachment, skipping... ]
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026
This patch was rejected. Please continue discussion on the hackers list. --------------------------------------------------------------------------- Liam Stewart wrote: > > I was playing around with adding a couple new SET commands (REAL_FORMAT > and DOUBLE_PRECISION_FORMAT as per todo list item) and I ended up > playing with GUC a bit. > > I've cleaned it up a bit - most of the changes should be fairly > self-explanitory from the patch. Some of the configuration options > handled in variable.c (so far, server_encoding and seed) have been moved > into guc.c and are handled by GUC. Moving them in required adding a > couple of fields to config_generic and friends - a read_only field and a > display_proc field (hook for custom SHOW messages). I've removed > GetConfigOption() and replaced it with ShowConfigOption() which does an > elog(NOTICE) instead of returning a string. > > When setting REAL_FORMAT and DOUBLE_PRECISION_FORMAT, the printf-style > format string should be checked for certain things: > > - field width of "*" is not allowed > - precision of ".*" is not allowed > - all conversion specifiers except "s" and "n" are allowed > - only one conversion specification other than %% and variations is > allowed > > Does this seem reasonable to people? I haven't written a function to > check those yet.. will do soon. > > This patch isn't complete yet so don't append it to the pending patches > list, Bruce. > > Liam > > -- > Liam Stewart :: Red Hat Canada, Ltd. :: liams@redhat.com [ Attachment, skipping... ] > > ---------------------------(end of broadcast)--------------------------- > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026