Changeset: 876dc921a3bb for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/876dc921a3bb
Modified Files:
        sql/backends/monet5/sql.c
Branch: default
Log Message:

Merge with Mar2025 branch


diffs (45 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
@@ -5506,11 +5506,27 @@ SQLcheck(Client cntxt, MalBlkPtr mb, Mal
        if (s) {
                sql_key *k = mvc_bind_key(m, s, kname);
                uintptr_t sp = m->sp;
-               m->sp = (uintptr_t)&m; /* local var ie top of stack */
+#ifdef __has_builtin
+#if __has_builtin(__builtin_frame_address)
+               m->sp = (uintptr_t) __builtin_frame_address(0);
+#define BUILTIN_USED
+#endif
+#endif
+#ifndef BUILTIN_USED
+               m->sp = (uintptr_t)(&m);
+#endif
+#undef BUILTIN_USED
                if (k && k->check) {
                        int pos = 0;
                        sql_rel *rel = rel_basetable(m, k->t, k->t->base.name);
-                       sql_exp *exp = exp_read(m, rel, NULL, NULL, 
sa_strdup(m->sa, k->check), &pos, 0);
+                       sql_exp *exp = NULL;
+                       if (rel) {
+                               rel_base_use_all(m, rel);
+                               exp = exp_read(m, rel, NULL, NULL, 
sa_strdup(m->sa, k->check), &pos, 0);
+                       }
+                       assert(exp);
+                       if (!exp)
+                               throw(SQL, "SQLcheck", SQLSTATE(HY013) 
MAL_MALLOC_FAIL);
                        if (exp->comment)
                                *r = GDKstrdup(exp->comment);
                        else
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
@@ -1226,7 +1226,7 @@ SQLreader(Client c, backend *be)
                ((backend *) c->sqlcontext)->mvc->session &&
                ((backend *) c->sqlcontext)->mvc->session->tr &&
                ((backend *) c->sqlcontext)->mvc->session->tr->active &&
-               GDKusec() - c->idle > c->idletimeout) {
+               time(NULL) - c->idle > c->idletimeout) {
                in->pos = in->len;      /* skip rest of the input */
                MT_lock_set(&mal_contextLock);
                c->mode = FINISHCLIENT;
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to