diff options
Diffstat (limited to 'src/backend/replication/repl_scanner.l')
-rw-r--r-- | src/backend/replication/repl_scanner.l | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/backend/replication/repl_scanner.l b/src/backend/replication/repl_scanner.l index 51f381da000..122da29016b 100644 --- a/src/backend/replication/repl_scanner.l +++ b/src/backend/replication/repl_scanner.l @@ -15,6 +15,8 @@ */ #include "postgres.h" +#include "utils/builtins.h" + /* Avoid exit() on fatal scanner errors (a bit ugly -- see yy_fatal_error) */ #undef fprintf #define fprintf(file, fmt, msg) ereport(ERROR, (errmsg_internal("%s", msg))) @@ -49,6 +51,7 @@ xqstart {quote} xqdouble {quote}{quote} xqinside [^']+ +digit [0-9]+ hexdigit [0-9A-Za-z]+ quote ' @@ -63,7 +66,9 @@ LABEL { return K_LABEL; } NOWAIT { return K_NOWAIT; } PROGRESS { return K_PROGRESS; } WAL { return K_WAL; } +TIMELINE { return K_TIMELINE; } START_REPLICATION { return K_START_REPLICATION; } +TIMELINE_HISTORY { return K_TIMELINE_HISTORY; } "," { return ','; } ";" { return ';'; } @@ -71,6 +76,11 @@ START_REPLICATION { return K_START_REPLICATION; } [\t] ; " " ; +{digit}+ { + yylval.intval = pg_atoi(yytext, sizeof(int32), 0); + return ICONST; + } + {hexdigit}+\/{hexdigit}+ { uint32 hi, lo; |