Changeset: 28f2f4d0e6f7 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=28f2f4d0e6f7
Modified Files:
        monetdb5/modules/atoms/json.c
        sql/test/json/Tests/parsing.stable.err
Branch: Aug2018
Log Message:

Avoid confusing JSON syntax errors with SQL syntax errors


diffs (162 lines):

diff --git a/monetdb5/modules/atoms/json.c b/monetdb5/modules/atoms/json.c
--- a/monetdb5/modules/atoms/json.c
+++ b/monetdb5/modules/atoms/json.c
@@ -800,7 +800,7 @@ JSONtoken(JSON *jt, const char *j, const
                        if (jt->error)
                                return idx;
                        if (jt->elm[nxt].kind != JSON_ELEMENT) {
-                               jt->error = createException(MAL, "json.parser", 
"Syntax error : element expected");
+                               jt->error = createException(MAL, "json.parser", 
"JSON syntax error: element expected");
                                return idx;
                        }
                        JSONappend(jt, idx, nxt);
@@ -811,13 +811,13 @@ JSONtoken(JSON *jt, const char *j, const
                        if (*j == '}')
                                break;
                        if (*j != '}' && *j != ',') {
-                               jt->error = createException(MAL, "json.parser", 
"Syntax error : ','  or '}' expected");
+                               jt->error = createException(MAL, "json.parser", 
"JSON syntax error: ','  or '}' expected");
                                return idx;
                        }
                        j++;
                }
                if (*j != '}') {
-                       jt->error = createException(MAL, "json.parser", "Syntax 
error : '}' expected");
+                       jt->error = createException(MAL, "json.parser", "JSON 
syntax error: '}' expected");
                        return idx;
                } else
                        j++;
@@ -868,18 +868,18 @@ JSONtoken(JSON *jt, const char *j, const
                        if (*j == ']')
                                break;
                        if (jt->elm[nxt].kind == JSON_ELEMENT) {
-                               jt->error = createException(MAL, "json.parser", 
"Syntax error : Array value expected");
+                               jt->error = createException(MAL, "json.parser", 
"JSON syntax error: Array value expected");
                                return idx;
                        }
                        if (*j != ']' && *j != ',') {
-                               jt->error = createException(MAL, "json.parser", 
"Syntax error : ','  or ']' expected");
+                               jt->error = createException(MAL, "json.parser", 
"JSON syntax error: ','  or ']' expected");
                                return idx;
                        }
                        j++;
                        skipblancs(j);
                }
                if (*j != ']') {
-                       jt->error = createException(MAL, "json.parser", "Syntax 
error : ']' expected");
+                       jt->error = createException(MAL, "json.parser", "JSON 
syntax error: ']' expected");
                } else
                        j++;
                *next = j;
@@ -916,7 +916,7 @@ JSONtoken(JSON *jt, const char *j, const
                        jt->elm[idx].valuelen = 4;
                        return idx;
                }
-               jt->error = createException(MAL, "json.parser", "Syntax error: 
NULL expected");
+               jt->error = createException(MAL, "json.parser", "JSON syntax 
error: NULL expected");
                return idx;
        case 't':
                if (strncmp("true", j, 4) == 0) {
@@ -926,7 +926,7 @@ JSONtoken(JSON *jt, const char *j, const
                        jt->elm[idx].valuelen = 4;
                        return idx;
                }
-               jt->error = createException(MAL, "json.parser", "Syntax error: 
True expected");
+               jt->error = createException(MAL, "json.parser", "JSON syntax 
error: True expected");
                return idx;
        case 'f':
                if (strncmp("false", j, 5) == 0) {
@@ -936,7 +936,7 @@ JSONtoken(JSON *jt, const char *j, const
                        jt->elm[idx].valuelen = 5;
                        return idx;
                }
-               jt->error = createException(MAL, "json.parser", "Syntax error: 
False expected");
+               jt->error = createException(MAL, "json.parser", "JSON syntax 
error: False expected");
                return idx;
        default:
                if (*j == '-' || (*j >= '0' && *j <= '9')) {
@@ -948,7 +948,7 @@ JSONtoken(JSON *jt, const char *j, const
                        jt->elm[idx].valuelen = *next - jt->elm[idx].value;
                        return idx;
                }
-               jt->error = createException(MAL, "json.parser", "Syntax error: 
value expected");
+               jt->error = createException(MAL, "json.parser", "JSON syntax 
error: value expected");
                return idx;
        }
 }
@@ -963,7 +963,7 @@ JSONparse(const char *j)
                return NULL;
        skipblancs(j);
        if (!*j || !(*j == '{' || *j == '[')) {
-               jt->error = createException(MAL, "json.parser", "Syntax error: 
json parse failed, expecting '{', '['");
+               jt->error = createException(MAL, "json.parser", "JSON syntax 
error: json parse failed, expecting '{', '['");
                return jt;
        }
        JSONtoken(jt, j, &j);
@@ -971,7 +971,7 @@ JSONparse(const char *j)
                return jt;
        skipblancs(j);
        if (*j)
-               jt->error = createException(MAL, "json.parser", "Syntax error: 
json parse failed");
+               jt->error = createException(MAL, "json.parser", "JSON syntax 
error: json parse failed");
        return jt;
 }
 
diff --git a/sql/test/json/Tests/parsing.stable.err 
b/sql/test/json/Tests/parsing.stable.err
--- a/sql/test/json/Tests/parsing.stable.err
+++ b/sql/test/json/Tests/parsing.stable.err
@@ -30,34 +30,35 @@ stderr of test 'parsing` in directory 's
 
 MAPI  = (monetdb) /var/tmp/mtest-26577/.s.monetdb.36138
 QUERY = insert into jsonparse values('{');
-ERROR = !Syntax error : '}' expected
-MAPI  = (monetdb) /var/tmp/mtest-1493/.s.monetdb.37430
+ERROR = !JSON syntax error: '}' expected
+MAPI  = (monetdb) /var/tmp/mtest-31374/.s.monetdb.32129
 QUERY = insert into jsonparse values('}');
-ERROR = !Syntax error: json parse failed, expecting '{', '['
-MAPI  = (monetdb) /var/tmp/mtest-1493/.s.monetdb.37430
+ERROR = !JSON syntax error: json parse failed, expecting '{', '['
+MAPI  = (monetdb) /var/tmp/mtest-31374/.s.monetdb.32129
 QUERY = insert into jsonparse values('{}  k');
-ERROR = !Syntax error: json parse failed
-MAPI  = (monetdb) /var/tmp/mtest-1493/.s.monetdb.37430
+ERROR = !JSON syntax error: json parse failed
+MAPI  = (monetdb) /var/tmp/mtest-31374/.s.monetdb.32129
 QUERY = insert into jsonparse values('{:1}');
-ERROR = !Syntax error: value expected
-MAPI  = (monetdb) /var/tmp/mtest-1493/.s.monetdb.37430
+ERROR = !JSON syntax error: value expected
+MAPI  = (monetdb) /var/tmp/mtest-31374/.s.monetdb.32129
 QUERY = insert into jsonparse values('{"k"}');
-ERROR = !Syntax error : element expected
-MAPI  = (monetdb) /var/tmp/mtest-1493/.s.monetdb.37430
+ERROR = !JSON syntax error: element expected
+MAPI  = (monetdb) /var/tmp/mtest-31374/.s.monetdb.32129
 QUERY = insert into jsonparse values('{[}]');
-ERROR = !Syntax error: value expected
-MAPI  = (monetdb) /var/tmp/mtest-1493/.s.monetdb.37430
+ERROR = !JSON syntax error: value expected
+MAPI  = (monetdb) /var/tmp/mtest-31374/.s.monetdb.32129
 QUERY = insert into jsonparse values('{} }');
-ERROR = !Syntax error: json parse failed
-MAPI  = (monetdb) /var/tmp/mtest-1493/.s.monetdb.37430
+ERROR = !JSON syntax error: json parse failed
+MAPI  = (monetdb) /var/tmp/mtest-31374/.s.monetdb.32129
 QUERY = insert into jsonparse values('{} }[1]');
-ERROR = !Syntax error: json parse failed
-MAPI  = (monetdb) /var/tmp/mtest-1493/.s.monetdb.37430
+ERROR = !JSON syntax error: json parse failed
+MAPI  = (monetdb) /var/tmp/mtest-31374/.s.monetdb.32129
 QUERY = insert into jsonparse values('{"f1"::1}');
-ERROR = !Syntax error: value expected
-MAPI  = (monetdb) /var/tmp/mtest-1493/.s.monetdb.37430
+ERROR = !JSON syntax error: value expected
+MAPI  = (monetdb) /var/tmp/mtest-31374/.s.monetdb.32129
 QUERY = insert into jsonparse values('{"f1":1,"f2":2 ');
-ERROR = !Syntax error : ','  or '}' expected
+ERROR = !JSON syntax error: ','  or '}' expected
+
 
 # 19:12:47 >  
 # 19:12:47 >  "Done."
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to