Hello. I found it frustrating that the line "shared_buffers = 0.1GB" in postgresql.conf postgresql.conf was causing an error and that the value required (additional) surrounding single quotes. The attached patch makes the parser accept the use of non-quoted real values followed by a unit for such variables. I'm not sure if that syntax fully covers the input syntax of strtod, but I beieve it is suffucient for most use cases.
Is the following a correct English sentense? Do you folks think this makes sense? regards. -- Kyotaro Horiguchi NTT Open Source Software Center
diff --git a/src/backend/utils/misc/guc-file.l b/src/backend/utils/misc/guc-file.l index 41d62a9f23..6727f1952f 100644 --- a/src/backend/utils/misc/guc-file.l +++ b/src/backend/utils/misc/guc-file.l @@ -76,7 +76,7 @@ UNIT_LETTER [a-zA-Z] INTEGER {SIGN}?({DIGIT}+|0x{HEXDIGIT}+){UNIT_LETTER}* EXPONENT [Ee]{SIGN}?{DIGIT}+ -REAL {SIGN}?{DIGIT}*"."{DIGIT}*{EXPONENT}? +REAL {SIGN}?{DIGIT}*("."{DIGIT}*{EXPONENT}?|{EXPONENT}){UNIT_LETTER}* LETTER [A-Za-z_\200-\377] LETTER_OR_DIGIT [A-Za-z_0-9\200-\377]