Changeset: 09235e732ba2 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/09235e732ba2
Modified Files:
sql/backends/monet5/sql.c
sql/backends/monet5/sql_execute.c
sql/backends/monet5/sql_scenario.c
sql/server/sql_mvc.c
sql/server/sql_mvc.h
sql/server/sql_scan.h
sql/server/sqlparse.c
tools/monetdbe/monetdbe.c
Branch: clean_parser
Log Message:
sql_export mvc_query_processed (for windows compilation)
keep scanner_query_processed local
diffs (135 lines):
diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c
--- a/sql/backends/monet5/sql.c
+++ b/sql/backends/monet5/sql.c
@@ -192,7 +192,7 @@ sqlcleanup(backend *be, int err)
be->mvc->label = 0;
be->mvc->nid = 1;
be->no_mitosis = 0;
- scanner_query_processed(&(be->mvc->scanner));
+ mvc_query_processed(be->mvc);
return err;
}
diff --git a/sql/backends/monet5/sql_execute.c
b/sql/backends/monet5/sql_execute.c
--- a/sql/backends/monet5/sql_execute.c
+++ b/sql/backends/monet5/sql_execute.c
@@ -494,7 +494,7 @@ SQLstatementIntern(Client c, const char
r = sql_symbol2relation(sql, m->sym);
assert(m->emode != m_prepare);
- scanner_query_processed(&(m->scanner));
+ mvc_query_processed(m);
if ((err = mvc_status(m)) ) {
if (strlen(m->errstr) > 6 && m->errstr[5] == '!')
msg = createException(PARSE, "SQLparser", "%s",
m->errstr);
diff --git a/sql/backends/monet5/sql_scenario.c
b/sql/backends/monet5/sql_scenario.c
--- a/sql/backends/monet5/sql_scenario.c
+++ b/sql/backends/monet5/sql_scenario.c
@@ -1413,7 +1413,7 @@ SQLparser_body(Client c, backend *be)
}
m->type = Q_SCHEMA; /* TODO DEALLOCATE statements don't fit for
Q_SCHEMA */
- scanner_query_processed(&(m->scanner));
+ mvc_query_processed(m);
/* For deallocate statements just export a simple output */
if (!GDKembedded() && (err = mvc_export_operation(be, c->fdout,
"", c->qryctx.starttime, c->curprg->def->optimize)) < 0)
@@ -1439,7 +1439,7 @@ SQLparser_body(Client c, backend *be)
be->vtop = oldvtop;
(void)runtimeProfileSetTag(c); /* generate and set the tag in
the mal block of the clients current program. */
if (m->emode != m_prepare || (m->emode == m_prepare && (m->emod
& mod_exec) && is_ddl(r->op)) /* direct execution prepare */) {
- scanner_query_processed(&(m->scanner));
+ mvc_query_processed(m);
err = 0;
setVarType(c->curprg->def, 0, 0);
@@ -1555,7 +1555,7 @@ SQLparser_body(Client c, backend *be)
err = 1;
}
}
- scanner_query_processed(&(m->scanner));
+ mvc_query_processed(m);
if (be->q && backend_dumpproc(be, c, be->q, r) < 0) {
msg = handle_error(m, 0, msg);
err = 1;
diff --git a/sql/server/sql_mvc.c b/sql/server/sql_mvc.c
--- a/sql/server/sql_mvc.c
+++ b/sql/server/sql_mvc.c
@@ -479,6 +479,12 @@ mvc_cancel_session(mvc *m)
(void)sql_trans_end(m->session, SQL_ERR);
}
+void
+mvc_query_processed(mvc *m)
+{
+ scanner_query_processed(&(m->scanner));
+}
+
int
mvc_trans(mvc *m)
{
diff --git a/sql/server/sql_mvc.h b/sql/server/sql_mvc.h
--- a/sql/server/sql_mvc.h
+++ b/sql/server/sql_mvc.h
@@ -179,6 +179,7 @@ extern int mvc_error_retry(mvc *c); // e
extern int mvc_type(mvc *c);
extern int mvc_debug_on(mvc *m, int flag);
extern void mvc_cancel_session(mvc *m);
+sql_export void mvc_query_processed(mvc *m);
/* since Savepoints and transactions are related the
* commit function includes the savepoint creation.
diff --git a/sql/server/sql_scan.h b/sql/server/sql_scan.h
--- a/sql/server/sql_scan.h
+++ b/sql/server/sql_scan.h
@@ -67,7 +67,7 @@ struct scanner {
extern char *query_cleaned(allocator *sa, const char *query);
extern void scanner_init(struct scanner *s, bstream *rs, stream *ws);
-sql_export void scanner_query_processed(struct scanner *s);
+extern void scanner_query_processed(struct scanner *s);
extern int scanner_init_keywords(void);
#endif /* _SQL_SCAN_H_ */
diff --git a/sql/server/sqlparse.c b/sql/server/sqlparse.c
--- a/sql/server/sqlparse.c
+++ b/sql/server/sqlparse.c
@@ -194,7 +194,7 @@ dlist2string(mvc *sql, dlist *l, char *s
char *b = lb;
dnode *n;
- int seplen = strlen(sep);
+ size_t seplen = strlen(sep);
bool skipsep = lb;
for (n=l->h; n; n = n->next) {
char *s = dnode2string(sql, n, expression, err);
@@ -248,7 +248,7 @@ symbol_escape_ident(allocator *sa, const
static char *
sa_concat(allocator *sa, char *prefix, char *a, char *infix, char *b, char
*postfix)
{
- int len = (prefix?strlen(prefix):0) + (a?strlen(a):0) +
(infix?strlen(infix):0) + (b?strlen(b):0) + (postfix?strlen(postfix):0);
+ size_t len = (prefix?strlen(prefix):0) + (a?strlen(a):0) +
(infix?strlen(infix):0) + (b?strlen(b):0) + (postfix?strlen(postfix):0);
char *res = NULL;
if (!prefix)
@@ -396,7 +396,7 @@ sp_symbol2string(mvc *sql, symbol *se, i
dlist *set = se->data.lval;
char *ident = dlist2string(sql,
set->h->data.lval, ".", NULL, NULL, expression, err);
char *exp = dnode2string(sql,
set->h->next, expression, err);
- int len = strlen(ident) + strlen(exp);
+ size_t len = strlen(ident) +
strlen(exp);
char *res;
if ((res = SA_NEW_ARRAY(sql->ta,
char, len + 6)))
stpcpy(stpcpy(stpcpy(stpcpy(res, "SET "), ident), " "), exp);
diff --git a/tools/monetdbe/monetdbe.c b/tools/monetdbe/monetdbe.c
--- a/tools/monetdbe/monetdbe.c
+++ b/tools/monetdbe/monetdbe.c
@@ -407,7 +407,7 @@ monetdbe_query_internal(monetdbe_databas
m->sa = sa_reset(m->sa);
m->scanner.mode = LINE_N;
m->scanner.rs = c->fdin;
- scanner_query_processed(&(m->scanner));
+ mvc_query_processed(m);
if ((mdbe->msg = MSinitClientPrg(c, userRef, mainRef)) != MAL_SUCCEED)
goto cleanup;
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]