aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/backend/utils/adt/jsonpath_scan.l6
-rw-r--r--src/test/regress/expected/jsonpath.out117
2 files changed, 55 insertions, 68 deletions
diff --git a/src/backend/utils/adt/jsonpath_scan.l b/src/backend/utils/adt/jsonpath_scan.l
index 4b913c3beef..12ef81b3083 100644
--- a/src/backend/utils/adt/jsonpath_scan.l
+++ b/src/backend/utils/adt/jsonpath_scan.l
@@ -80,9 +80,9 @@ any [^\?\%\$\.\[\]\{\}\(\)\|\&\!\=\<\>\@\#\,\*:\-\+\/\\\"\' \t\n\r\f]
blank [ \t\n\r\f]
digit [0-9]
-integer {digit}+
-decimal {digit}*\.{digit}+
-decimalfail {digit}+\.
+integer (0|[1-9]{digit}*)
+decimal {integer}\.{digit}+
+decimalfail {integer}\.
real ({integer}|{decimal})[Ee][-+]?{digit}+
realfail1 ({integer}|{decimal})[Ee]
realfail2 ({integer}|{decimal})[Ee][-+]
diff --git a/src/test/regress/expected/jsonpath.out b/src/test/regress/expected/jsonpath.out
index b7de4915038..a99643f9027 100644
--- a/src/test/regress/expected/jsonpath.out
+++ b/src/test/regress/expected/jsonpath.out
@@ -547,23 +547,20 @@ select '$ ? (@.a < +1)'::jsonpath;
(1 row)
select '$ ? (@.a < .1)'::jsonpath;
- jsonpath
------------------
- $?(@."a" < 0.1)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < .1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < -.1)'::jsonpath;
- jsonpath
-------------------
- $?(@."a" < -0.1)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < -.1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < +.1)'::jsonpath;
- jsonpath
------------------
- $?(@."a" < 0.1)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < +.1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < 0.1)'::jsonpath;
jsonpath
-----------------
@@ -619,23 +616,20 @@ select '$ ? (@.a < +1e1)'::jsonpath;
(1 row)
select '$ ? (@.a < .1e1)'::jsonpath;
- jsonpath
----------------
- $?(@."a" < 1)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < .1e1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < -.1e1)'::jsonpath;
- jsonpath
-----------------
- $?(@."a" < -1)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < -.1e1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < +.1e1)'::jsonpath;
- jsonpath
----------------
- $?(@."a" < 1)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < +.1e1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < 0.1e1)'::jsonpath;
jsonpath
---------------
@@ -691,23 +685,20 @@ select '$ ? (@.a < +1e-1)'::jsonpath;
(1 row)
select '$ ? (@.a < .1e-1)'::jsonpath;
- jsonpath
-------------------
- $?(@."a" < 0.01)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < .1e-1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < -.1e-1)'::jsonpath;
- jsonpath
--------------------
- $?(@."a" < -0.01)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < -.1e-1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < +.1e-1)'::jsonpath;
- jsonpath
-------------------
- $?(@."a" < 0.01)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < +.1e-1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < 0.1e-1)'::jsonpath;
jsonpath
------------------
@@ -763,23 +754,20 @@ select '$ ? (@.a < +1e+1)'::jsonpath;
(1 row)
select '$ ? (@.a < .1e+1)'::jsonpath;
- jsonpath
----------------
- $?(@."a" < 1)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < .1e+1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < -.1e+1)'::jsonpath;
- jsonpath
-----------------
- $?(@."a" < -1)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < -.1e+1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < +.1e+1)'::jsonpath;
- jsonpath
----------------
- $?(@."a" < 1)
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '$ ? (@.a < +.1e+1)'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected '.' at or near "."
select '$ ? (@.a < 0.1e+1)'::jsonpath;
jsonpath
---------------
@@ -823,11 +811,10 @@ select '0'::jsonpath;
(1 row)
select '00'::jsonpath;
- jsonpath
-----------
- 0
-(1 row)
-
+ERROR: bad jsonpath representation
+LINE 1: select '00'::jsonpath;
+ ^
+DETAIL: syntax error, unexpected IDENT_P at end of input
select '0.0'::jsonpath;
jsonpath
----------