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

Reply via email to