Changeset: 881793198b59 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=881793198b59
Modified Files:
monetdb5/modules/atoms/json.c
sql/test/json/Tests/aggregate01.stable.out
Branch: default
Log Message:
indent and approve test output
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
@@ -1793,57 +1793,57 @@ JSONjsonaggr(BAT **bnp, BAT *b, BAT *g,
map = (const oid *) Tloc(t2, BUNfirst(t2));
}
if (g && BATtdense(g)) {
- for (p = 0, q = BATcount(g); p < q; p++) {
- switch(b->ttype) {
+ for (p = 0, q = BATcount(g); p < q; p++) {
+ switch(b->ttype) {
case TYPE_str:
- v = (const char *) BUNtail(bi, BUNfirst(b) +
(map ? (BUN) map[p] : p + mapoff));
- break;
- case TYPE_dbl:
- val = (const double *) BUNtail(bi, BUNfirst(b)
+ (map ? (BUN) map[p] : p + mapoff));
- if (*val != dbl_nil) {
- snprintf(temp, sizeof(temp), "%f",
*val);
- v = (const char *)temp;
- } else {
- v = NULL;
+ v = (const char *) BUNtail(bi,
BUNfirst(b) + (map ? (BUN) map[p] : p + mapoff));
+ break;
+ case TYPE_dbl:
+ val = (const double *) BUNtail(bi,
BUNfirst(b) + (map ? (BUN) map[p] : p + mapoff));
+ if (*val != dbl_nil) {
+ snprintf(temp, sizeof(temp),
"%f", *val);
+ v = (const char *)temp;
+ } else {
+ v = NULL;
+ }
+ break;
}
- break;
- }
- if (!v||strNil(v)) {
- if (skip_nils)
- continue;
- strncpy(buf, str_nil, buflen);
- isnil = 1;
- } else {
- len = strlen(v);
- if (len >= maxlen - buflen) {
- maxlen += len + BUFSIZ;
- buf = GDKrealloc(buf, maxlen);
- if (buf == NULL) {
- err = MAL_MALLOC_FAIL;
- goto bunins_failed;
+ if (!v||strNil(v)) {
+ if (skip_nils)
+ continue;
+ strncpy(buf, str_nil, buflen);
+ isnil = 1;
+ } else {
+ len = strlen(v);
+ if (len >= maxlen - buflen) {
+ maxlen += len + BUFSIZ;
+ buf = GDKrealloc(buf, maxlen);
+ if (buf == NULL) {
+ err = MAL_MALLOC_FAIL;
+ goto bunins_failed;
+ }
+ }
+ switch (b->ttype) {
+ case TYPE_str:
+ len = snprintf(buf + buflen,
maxlen - buflen, "[ \"%s\" ]", v);
+ buflen += len;
+ break;
+ case TYPE_dbl:
+ len = snprintf(buf + buflen,
maxlen - buflen, "[ %s ]", v);
+ buflen += len;
+ break;
}
}
- switch (b->ttype) {
- case TYPE_str:
- len = snprintf(buf + buflen, maxlen - buflen,
"[ \"%s\" ]", v);
- buflen += len;
- break;
- case TYPE_dbl:
- len = snprintf(buf + buflen, maxlen - buflen,
"[ %s ]", v);
- buflen += len;
- break;
- }
+ bunfastapp_nocheck(bn, BUNlast(bn), buf,
Tsize(bn));
+ buflen = 0;
}
- bunfastapp_nocheck(bn, BUNlast(bn), buf, Tsize(bn));
- buflen = 0;
- }
- BATseqbase(bn, min);
- bn->T->nil = nils != 0;
- bn->T->nonil = nils == 0;
- bn->T->sorted = BATcount(bn) <= 1;
- bn->T->revsorted = BATcount(bn) <= 1;
- bn->T->key = BATcount(bn) <= 1;
- goto out;
+ BATseqbase(bn, min);
+ bn->T->nil = nils != 0;
+ bn->T->nonil = nils == 0;
+ bn->T->sorted = BATcount(bn) <= 1;
+ bn->T->revsorted = BATcount(bn) <= 1;
+ bn->T->key = BATcount(bn) <= 1;
+ goto out;
}
grps = (const oid *) Tloc(g, BUNfirst(g));
prev = grps[0];
diff --git a/sql/test/json/Tests/aggregate01.stable.out
b/sql/test/json/Tests/aggregate01.stable.out
--- a/sql/test/json/Tests/aggregate01.stable.out
+++ b/sql/test/json/Tests/aggregate01.stable.out
@@ -105,6 +105,20 @@ Ready.
% clob # type
% 0 # length
[ NULL ]
+#insert into aggrtest01 values (NULL, 1);
+[ 1 ]
+#select json.tojsonarray(col1) from aggrtest01;
+% sys.L1 # table_name
+% L1 # name
+% clob # type
+% 0 # length
+[ NULL ]
+#select json.tojsonarray(col1) from aggrtest01 group by col2;
+% sys.L1 # table_name
+% L1 # name
+% clob # type
+% 4 # length
+[ "[ ]" ]
#insert into aggrtest01 values (0.1234, 1);
[ 1 ]
#select json.tojsonarray(col1) from aggrtest01;
@@ -115,6 +129,30 @@ Ready.
[ "[ 0.123400 ]" ]
#insert into aggrtest01 values (0.516273849, 2);
[ 1 ]
+#select * from aggrtest01;
+% sys.aggrtest01, sys.aggrtest01 # table_name
+% col1, col2 # name
+% double, int # type
+% 24, 1 # length
+[ NULL, 1 ]
+[ NULL, 1 ]
+[ 0.1234, 1 ]
+[ 0.516273849, 2 ]
+#select json.tojsonarray(col1) from aggrtest01;
+% sys.L1 # table_name
+% L1 # name
+% clob # type
+% 22 # length
+[ "[ 0.123400, 0.516274 ]" ]
+#select json.tojsonarray(col1) from aggrtest01 group by col2;
+% sys.L1 # table_name
+% L1 # name
+% clob # type
+% 12 # length
+[ "[ 0.123400 ]" ]
+[ "[ 0.516274 ]" ]
+#delete from aggrtest01 where col1 is null;
+[ 2 ]
#select json.tojsonarray(col1) from aggrtest01;
% sys.L1 # table_name
% L1 # name
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list