Changeset: 2b981e18da67 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/2b981e18da67 Modified Files: sql/backends/monet5/vaults/json/json.c sql/test/nested/Tests/json.test Branch: newjson Log Message:
lookup json type in schema diffs (32 lines): diff --git a/sql/backends/monet5/vaults/json/json.c b/sql/backends/monet5/vaults/json/json.c --- a/sql/backends/monet5/vaults/json/json.c +++ b/sql/backends/monet5/vaults/json/json.c @@ -160,9 +160,15 @@ json_relation(mvc *sql, sql_subfunc *f, // use file name as columnn name ? char *cname = sa_strdup(sql->sa, "json"); list_append(names, cname); - sql_subtype *tpe = sql_bind_subtype(sql->sa, "json", 0, 0); - list_append(types, tpe); - sql_exp *ne = exp_column(sql->sa, a_create(sql->sa, tname), cname, tpe, CARD_MULTI, 1, 0, 0); + sql_schema *jsons = mvc_bind_schema(sql, "json"); + if (!jsons) + return NULL; + sql_type *tpe = schema_bind_type(sql, jsons, "json"); + sql_subtype *st = SA_NEW(sql->sa, sql_subtype); + st->type = tpe; + st->digits = st->scale = 0; + list_append(types, st); + sql_exp *ne = exp_column(sql->sa, a_create(sql->sa, tname), cname, st, CARD_MULTI, 1, 0, 0); set_basecol(ne); ne->alias.label = -(sql->nid++); list_append(res_exps, ne); diff --git a/sql/test/nested/Tests/json.test b/sql/test/nested/Tests/json.test --- a/sql/test/nested/Tests/json.test +++ b/sql/test/nested/Tests/json.test @@ -2,5 +2,5 @@ statement ok create type event as (id int, type varchar) query T -select cast(t.josn as event) from (select json from r'$TSTTRGDIR/events.json') t +select cast(t.json as event) from (select json from r'$TSTTRGDIR/events.json') t ---- _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org