Changeset: 6c25bbe1b569 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6c25bbe1b569
Modified Files:
monetdb5/mal/Makefile.ag
monetdb5/mal/mal.c
monetdb5/mal/mal_import.c
monetdb5/mal/mal_resolve.c
monetdb5/mal/mal_session.c
sql/backends/monet5/sql_aggr_int.mal
Branch: malparsing
Log Message:
Fix inclusion of multiple files.
diffs (90 lines):
diff --git a/monetdb5/mal/Makefile.ag b/monetdb5/mal/Makefile.ag
--- a/monetdb5/mal/Makefile.ag
+++ b/monetdb5/mal/Makefile.ag
@@ -10,7 +10,7 @@ INCLUDES = ../../common/options \
../../clients/mapilib \
../../gdk \
../optimizer \
- $(openssl_CFLAGS)
+ $(libxml2_CFLAGS) $(curl_CFLAGS) $(openssl_CFLAGS)
MTSAFE
lib_mal = {
diff --git a/monetdb5/mal/mal.c b/monetdb5/mal/mal.c
--- a/monetdb5/mal/mal.c
+++ b/monetdb5/mal/mal.c
@@ -36,6 +36,11 @@ int have_hge;
#include "mal_runtime.h"
#include "mal_resource.h"
+#ifdef HAVE_LIBXML
+#include <libxml/parser.h>
+#include <libxml/xmlmemory.h>
+#endif
+
MT_Lock mal_contextLock MT_LOCK_INITIALIZER("mal_contextLock");
MT_Lock mal_namespaceLock MT_LOCK_INITIALIZER("mal_namespaceLock");
MT_Lock mal_remoteLock MT_LOCK_INITIALIZER("mal_remoteLock");
@@ -164,6 +169,7 @@ void mserver_reset(int exit)
mal_runtime_reset();
mal_module_reset();
mdbExit();
+ xmlCleanupParser();
memset((char*)monet_cwd,0, sizeof(monet_cwd));
monet_memory = 0;
diff --git a/monetdb5/mal/mal_import.c b/monetdb5/mal/mal_import.c
--- a/monetdb5/mal/mal_import.c
+++ b/monetdb5/mal/mal_import.c
@@ -110,7 +110,7 @@ evalFile(Client cntxt, str fname, int li
filename = p+1;
files[cnt++]= filename;
}
- for(i=0; i<cnt; i++){
+ for(i=cnt-1; i>=0; i--){
fd = malOpenSource(files[i]);
if (fd == 0 || mnstr_errnr(fd) == MNSTR_OPEN_ERROR) {
if(fd) mnstr_destroy(fd);
diff --git a/monetdb5/mal/mal_resolve.c b/monetdb5/mal/mal_resolve.c
--- a/monetdb5/mal/mal_resolve.c
+++ b/monetdb5/mal/mal_resolve.c
@@ -456,6 +456,9 @@ findFunctionType(Module scope, MalBlkPtr
goto wrapup;
}
}
+ /* Any previousely found error in the block
+ * turns the complete block into erroneous.
+ */
if (s->def->errors) {
p->typechk = TYPE_UNKNOWN;
goto wrapup;
diff --git a/monetdb5/mal/mal_session.c b/monetdb5/mal/mal_session.c
--- a/monetdb5/mal/mal_session.c
+++ b/monetdb5/mal/mal_session.c
@@ -568,9 +568,12 @@ MALreader(Client c)
mnstr_flush(c->fdout);
}
if(bstream_next(c->fdin) < 0 || c->fdin->eof ){
- if (c->bak)
+ if (c->bak){
+#ifdef _DEBUG_SESSION_
+ fprintf(stderr,"Pop the input
stream\n");
+#endif
MCpopClientInput(c);
- else{
+ } else{
MT_lock_set(&mal_contextLock);
c->mode = FINISHCLIENT;
MT_lock_unset(&mal_contextLock);
diff --git a/sql/backends/monet5/sql_aggr_int.mal
b/sql/backends/monet5/sql_aggr_int.mal
--- a/sql/backends/monet5/sql_aggr_int.mal
+++ b/sql/backends/monet5/sql_aggr_int.mal
@@ -11,7 +11,7 @@ function aggr.covar(e1:bat[:int], e2:bat
s2:lng := aggr.sum(e2);
v2:lng := calc.*(s1,s2);
c := aggr.count(e1);
- n:lng := calc.int(c);
+ n:int := calc.int(c);
v3:lng := calc./(v2,n);
v1:lng := calc.-(s0,v3);
v:lng := calc./(v1,n);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list