Update of /cvsroot/monetdb/MonetDB/src/testing
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv12737/src/testing

Modified Files:
      Tag: GDK-2
        Makefile.ag MkillUsers.in Mtest.py.in README 
Log Message:
propagated changes of Tuesday Aug 28 2007 - Monday Sep 03 2007
from the development trunk to the GDK-2 branch


Index: README
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/README,v
retrieving revision 1.35.4.1
retrieving revision 1.35.4.2
diff -u -d -r1.35.4.1 -r1.35.4.2
--- README      24 Aug 2007 09:02:00 -0000      1.35.4.1
+++ README      3 Sep 2007 12:53:45 -0000       1.35.4.2
@@ -31,26 +31,31 @@
 
 - Each test named TST consists of
   + a test script which is ONE of the following:
-    * an arbitrary executable (e.g., a shell script)        (TST)           
(~,^)
+    * an arbitrary executable (e.g., a shell script)        (TST.sh)        
(~,^)
        on Windows, executables must be ".(exe|com)"         (TST.(exe|com)) 
(~,^)
                    and scripts must be ".(bat|cmd)"         (TST.(bat|cmd)) 
(~,^)
     * a Python script                                       (TST.py)        
(~,^)
+    * a MAL script to be executed by mserver5               (TST.mal)  (',^,`)
     * a MIL script to be executed by Mserver                (TST.milM) (',^,`)
     * a MIL script to be executed by Mserver -single        (TST.milS) (',^,`)
        (-single has been removed, so .milM & .milS are
         treated equally, now)
     * a MIL script to be executed by mclient -lmil          (TST.milC) (",^,`)
+    * a MAL script to be executed by mclient -lmal          (TST.malC) (",^,`)
     * a SQL script to be executed by mclient -lsql          (TST.sql)  (",^,`)
     * a XQUERY script to be executed by mclient -lxquery    (TST.xq)   (",^,`)
    (~) In case the name of an arbitrary executable or Python script is
-        suffixed with ".MAPI" (i.e., TST.MAPI[.(exe|com|bat|cmd|py)]),
-        Mtest.py starts an Mserver with a MAPI-listerner on MAPIPORT
+        suffixed with ".MIL" (i.e., TST.MIL[.(sh|exe|com|bat|cmd|py)]),
+        Mtest.py starts an Mserver with a MIL-listerner on MAPIPORT
         in the background before executing the test. The test can then
         connect via MAPI (on MAPIPORT) to that Mserver.
-       Similar, with suffix ".SQL", an Mserver with an SQL-listener on
-        SQLPORT is started;
-       and, with suffix ".XQUERY", an Mserver with an XQUERY-listener on
-        XQUERYPORT is started.
+       Similar,
+       with suffix ".MAL", an mserver5 with a MAL-listener on
+        MAPIPORT is started;
+       with suffix ".SQL", an Mserver/mserver5 with an SQL-listener on
+        MAPIPORT is started;
+       with suffix ".XQUERY", an Mserver with an XQUERY-listener on
+        MAPIPORT is started.
        In both cases, Mtest.py stops the Mserver again, once the test has
         finished.
    (') For Mserver, if several files are present named
@@ -227,19 +232,20 @@
        TSTSRCBASE      $MONETDB_SOURCE                         base of test 
source tree
        TSTBLDBASE      $MONETDB_BUILD                          base of 
extracted test tree
        TSTTRGBASE      $MONETDB_PREFIX                         base for test 
output
-       MAPICLIENT      mclient -lmil                           mil-client 
program      `)
+       MILCLIENT       mclient -lmil                           mil-client 
program      `)
+       MALCLIENT       mclient -lmal                           mal-client 
program      `)
        SQLCLIENT       mclient -lsql                           sql-client 
program      `)
        SQLDUMP         msqldump                                sql-dump 
program        `)
        XQUERYCLIENT    mclient -lxquery -oxml                  xquery-client 
program   `)
 
-    `) Alternative Mapi-, SQL-, & XQUERY- client programs need to accept (or 
ignore)
+    `) Alternative MIL-, MAL-, SQL-, & XQUERY- client programs need to accept 
(or ignore)
        "--config=", "--host=", & "--port=" options.
 
     The following variables are currently still used legacy, but they will 
disappear soon...
        MONETDB_MOD_PATH        
$MONETDB_PREFIX/lib(64);MONETDB_PREFIX/lib(64)/Monet
 
     The setting of all these environment variables maybe overruled
-    by commandline options with the same names, e.g., 
"--MAPICLIENT=MapiClient.py".
+    by commandline options with the same names, e.g., "--MILCLIENT=mclient.py".
 
     NOTE: 
     All paths must be given as ABSOLUTE PHYSICAL PATHS (see "IMPORTANT NOTE"
@@ -255,7 +261,8 @@
        MTIMEOUT        "Mtimeout -timeout $TIMEOUT"
        MDIFF           "$MTIMEOUT Mdiff"
        MSERVER         "$MTIMEOUT Mserver --config=$MONETDB_CONF 
--debug=$GDK_DEBUG $setMONETDB_MOD_PATH $setGDK_DBFARM $setSQL_LOGDIR 
$setXQUERY_LOGDIR --set mapi_port=$MAPIPORT --set xrpc_port=$XRPCPORT --set 
monet_prompt= --trace"
-       MAPI_CLIENT     "$MTIMEOUT $MAPICLIENT --config=$MONETDB_CONF 
--host=$HOST --port=$MAPIPORT"
+       MIL_CLIENT      "$MTIMEOUT $MILCLIENT --config=$MONETDB_CONF 
--host=$HOST --port=$MAPIPORT"
+       MAL_CLIENT      "$MTIMEOUT $MALCLIENT --config=$MONETDB_CONF 
--host=$HOST --port=$MAPIPORT"
        SQL_CLIENT      "$MTIMEOUT $SQLCLIENT -u monetdb -P monetdb 
--host=$HOST --port=$MAPIPORT --trace"
        SQL_DUMP        "$MTIMEOUT $SQLDUMP -u monetdb -P monetdb --host=$HOST 
--port=$MAPIPORT --trace"
        XQUERY_CLIENT   "$MTIMEOUT $XQUERYCLIENT -u monetdb -P monetdb 
--host=$HOST --port=$MAPIPORT"

Index: Mtest.py.in
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/Mtest.py.in,v
retrieving revision 1.280.2.4
retrieving revision 1.280.2.5
diff -u -d -r1.280.2.4 -r1.280.2.5
--- Mtest.py.in 28 Aug 2007 13:11:51 -0000      1.280.2.4
+++ Mtest.py.in 3 Sep 2007 12:53:44 -0000       1.280.2.5
@@ -1133,28 +1133,27 @@
     return sem
 ### ApproveOutput (env, TST) #
 
-def isexecutable(TST) :
+def isexecutable(TST, ext = '.sh') :
     if   os.name == "nt":
         for ext in ".exe", ".com", ".bat", ".cmd":
             if TST.lower().endswith(ext):
-                tst = TST
                 ext = ''
             else:
-                tst = TST + ext
-            if os.path.isfile(tst) or os.path.isfile(tst+".src"):
+                TST = TST + ext
+            if os.path.isfile(TST) or os.path.isfile(TST+".src"):
                 return [ 1, ext ]
     elif os.name == "posix":
         #TODO:
         # check with "file", and set executable
-        if os.path.isfile(TST)  and  os.access(TST,os.X_OK):
-            return [ 1, "" ]
-        if os.path.isfile(TST+".src")  and  os.access(TST+".src",os.X_OK):
-            return [ 1, "" ]
+        TST = TST + ext
+        if ( os.path.isfile(TST       ) and os.access(TST       ,os.X_OK) ) or 
\
+           ( os.path.isfile(TST+".src") and os.access(TST+".src",os.X_OK) ):
+            return [ 1, ext ]
     #TODO:
     #else:
         # ???
     return [ 0, "" ]
-### isexecutable(TST) #
+### isexecutable(TST, ext = '.sh') #
 
 # this function is a slightly modified copy of the posixpath version
 # the difference is the doubling of \'s in the replacement value
@@ -1282,7 +1281,7 @@
             m = m.strip()
             if m  and  m[0] != "#"  and  m not in env['TST_MODS']:
                 missing.append(m)
-    if SERVER == "MAPI":
+    if SERVER == "MIL":
         for m in "streams", "mapi":
             if m not in env['TST_MODS']:
                 missing.append(m)
@@ -1416,41 +1415,56 @@
     TX = 0
     EXT = CALL = SERVER = ""
     x  = isexecutable(TST)
+    if not x[0]:
+        x  = isexecutable(TST,'')
+    xI = isexecutable(TST+".MIL")
+    xA = isexecutable(TST+".MAL")
     xS = isexecutable(TST+".SQL")
-    xM = isexecutable(TST+".MAPI")
     xQ = isexecutable(TST+".XQUERY")
     if   x[0]:
         EXT = x[1]          ; CALL = "other"
+    elif xI[0]:
+        EXT = ".MIL"+xI[1]  ; CALL = "other"  ; SERVER = "MIL"
+    elif xA[0]:
+        EXT = ".MAL"+xA[1]  ; CALL = "other"  ; SERVER = "MAL"
     elif xS[0]:
         EXT = ".SQL"+xS[1]  ; CALL = "other"  ; SERVER = "SQL"
-    elif xM[0]:
-        EXT = ".MAPI"+xM[1] ; CALL = "other"  ; SERVER = "MAPI"
     elif xQ[0]:
         EXT = ".XQUERY"+xQ[1] ; CALL = "other" ; SERVER = "XQUERY"
     elif os.path.isfile(TST+".py")            or  
os.path.isfile(TST+".py.src"):
         EXT = ".py"         ; CALL = "python"
+    elif os.path.isfile(TST+".MIL"+".py")     or  
os.path.isfile(TST+".MIL"+".py.src")     or  
os.path.isfile(TST+".MIL"+".py.in"):
+        EXT = ".MIL.py"     ; CALL = "python" ; SERVER = "MIL"
+    elif os.path.isfile(TST+".MAL"+".py")     or  
os.path.isfile(TST+".MAL"+".py.src")     or  
os.path.isfile(TST+".MAL"+".py.in"):
+        EXT = ".MAL.py"     ; CALL = "python" ; SERVER = "MAL"
     elif os.path.isfile(TST+".SQL"+".py")     or  
os.path.isfile(TST+".SQL"+".py.src")     or  
os.path.isfile(TST+".SQL"+".py.in"):
         EXT = ".SQL.py"     ; CALL = "python" ; SERVER = "SQL"
-    elif os.path.isfile(TST+".MAPI"+".py")    or  
os.path.isfile(TST+".MAPI"+".py.src")    or  
os.path.isfile(TST+".MAPI"+".py.in"):
-        EXT = ".MAPI.py"    ; CALL = "python" ; SERVER = "MAPI"
     elif os.path.isfile(TST+".XQUERY"+".py")  or  
os.path.isfile(TST+".XQUERY"+".py.src")  or  
os.path.isfile(TST+".XQUERY"+".py.in"):
         EXT = ".XQUERY.py"  ; CALL = "python" ; SERVER = "XQUERY"
-    elif os.path.isfile(TST+".mal")           or  
os.path.isfile(TST+".mal.src")           or  os.path.isfile(TST+".mal.in"):
-        EXT = ".mal"       ; CALL = "mal"
     elif os.path.isfile(TST+".milM")          or  
os.path.isfile(TST+".milM.src")          or  os.path.isfile(TST+".milM.in"):
         EXT = ".milM"       ; CALL = "milM"
     elif os.path.isfile(TST+".milS")          or  
os.path.isfile(TST+".milS.src")          or  os.path.isfile(TST+".milS.in"):
         EXT = ".milS"       ; CALL = "milS"
     elif os.path.isfile(TST+".milC")          or  
os.path.isfile(TST+".milC.src")          or  os.path.isfile(TST+".milC.in"):
-        EXT = ".milC"       ; CALL = "milC"   ; SERVER = "MAPI"
+        EXT = ".milC"       ; CALL = "milC"   ; SERVER = "MIL"
     elif os.path.isfile(TST+"_s00.milM")      or  
os.path.isfile(TST+"_s00.milM.src")      or  os.path.isfile(TST+"_s00.milM.in"):
         EXT = ".milM"       ; CALL = "milMXs"
     elif os.path.isfile(TST+"_s00.milS")      or  
os.path.isfile(TST+"_s00.milS.src")      or  os.path.isfile(TST+"_s00.milS.in"):
         EXT = ".milS"       ; CALL = "milSXs"
     elif os.path.isfile(TST+"_s00.milC")      or  
os.path.isfile(TST+"_s00.milC.src")      or  os.path.isfile(TST+"_s00.milC.in"):
-        EXT = ".milC"       ; CALL = "milCXs" ; SERVER = "MAPI"
+        EXT = ".milC"       ; CALL = "milCXs" ; SERVER = "MIL"
     elif os.path.isfile(TST+"_p00.milC")      or  
os.path.isfile(TST+"_p00.milC.src")      or  os.path.isfile(TST+"_p00.milC.in"):
-        EXT = ".milC"       ; CALL = "milCXp" ; SERVER = "MAPI"
+        EXT = ".milC"       ; CALL = "milCXp" ; SERVER = "MIL"
+    elif os.path.isfile(TST+".mal")           or  
os.path.isfile(TST+".mal.src")           or  os.path.isfile(TST+".mal.in"):
+        EXT = ".mal"        ; CALL = "mal"
+    elif os.path.isfile(TST+"_s00.mal")       or  
os.path.isfile(TST+"_s00.mal.src")       or  os.path.isfile(TST+"_s00.mal.in"):
+        EXT = ".mal"        ; CALL = "malXs"
+    elif os.path.isfile(TST+".malC")          or  
os.path.isfile(TST+".malC.src")          or  os.path.isfile(TST+".malC.in"):
+        EXT = ".malC"       ; CALL = "malC"   ; SERVER = "MAL"
+    elif os.path.isfile(TST+"_s00.malC")      or  
os.path.isfile(TST+"_s00.malC.src")      or  os.path.isfile(TST+"_s00.malC.in"):
+        EXT = ".malC"       ; CALL = "malCXs" ; SERVER = "MAL"
+    elif os.path.isfile(TST+"_p00.malC")      or  
os.path.isfile(TST+"_p00.malC.src")      or  os.path.isfile(TST+"_p00.malC.in"):
+        EXT = ".malC"       ; CALL = "malCXp" ; SERVER = "MAL"
     elif os.path.isfile(TST+".sql")           or  
os.path.isfile(TST+".sql.src")           or  os.path.isfile(TST+".sql.in"):
         EXT = ".sql"        ; CALL = "sql"    ; SERVER = "SQL"
     elif os.path.isfile(TST+"_s00.sql")       or  
os.path.isfile(TST+"_s00.sql.src")       or  os.path.isfile(TST+"_s00.sql.in"):
@@ -1464,9 +1478,9 @@
     elif os.path.isfile(TST+"_p00.xq")        or  
os.path.isfile(TST+"_p00.xq.src")        or  os.path.isfile(TST+"_p00.xq.in"):
         EXT = ".xq"         ; CALL = "xqXp"   ; SERVER = "XQUERY"
     elif os.path.isfile(TST+".x100")          or  
os.path.isfile(TST+".x100.src")          or  os.path.isfile(TST+".x100.in"):
-        EXT = ".x100"       ; CALL = "x100"   ; SERVER = "MAPI"
+        EXT = ".x100"       ; CALL = "x100"   ; SERVER = "MIL"
     elif os.path.isfile(TST+"_s00.x100")      or  
os.path.isfile(TST+"_s00.x100.src")      or  os.path.isfile(TST+"_s00.x100.in"):
-        EXT = ".x100"       ; CALL = "x100Xs" ; SERVER = "MAPI"
+        EXT = ".x100"       ; CALL = "x100Xs" ; SERVER = "MIL"
         #TODO:
         #elif [ -f "$TST.java"       ] ; then  EXT="java" ; CALL="Java   
"+TST+" "+EXT
         #elif [ -f "${TST}_s00.java" ] ; then  EXT="java" ; CALL="JavaXs 
"+TST+" "+EXT
@@ -1478,11 +1492,11 @@
             return RunTest(env, TST[:i], BusyPorts, COND)
         EXT = CALL = SERVER = ""
         if os.name == "nt":
-            ErrMsg("test missing: 
'"+os.path.join(TSTSRCDIR,TST)+".(exe|com|bat|cmd|py|mal|milM|milS|milC|sql|xq|x100)`")
+            ErrMsg("test missing: 
'"+os.path.join(TSTSRCDIR,TST)+".(exe|com|bat|cmd|py|mal|malC|milM|milS|milC|sql|xq|x100)`")
             #TODO:
             #elif os.name == "posix":
         else:
-            ErrMsg("test missing: 
'"+os.path.join(TSTSRCDIR,TST)+"[.py|.mal|.milM|.milS|.milC|.sql|.xq|.x100]`")
+            ErrMsg("test missing: 
'"+os.path.join(TSTSRCDIR,TST)+"[.py|.mal|.malC|.milM|.milS|.milC|.sql|.xq|.x100]`")
         return TX,Failed,Failed,elem
 
     if par['PACKAGE'] not in ('monetdb', 'monetdb-clients'):
@@ -1513,10 +1527,14 @@
         elem = SkipTest(env, TST, EXT, "as it currently crashes/hangs on 
WindowsNT.")
     elif sys.platform == "cygwin"  and  url(TSTDIR)+"/"+TST in NotOnCYG:
         elem = SkipTest(env, TST, EXT, "as it currently crashes/hangs on 
CYGWIN.")
-    elif ( EXT[:4] == ".mil" or SERVER == "MAPI" ) and par['M5']:
-        elem = SkipTest(env, TST, EXT, "as Monet5 does not support MIL.")
-    elif EXT == ".milC" and  not env['exe']['Mapi_Client'][0]:
-        elem = SkipTest(env, TST, EXT, "as "+env['MAPICLIENT'].split(None, 
1)[0]+" is not available.")
+    elif ( EXT[:4] == ".mil" or SERVER == "MIL" ) and par['M5']:
+        elem = SkipTest(env, TST, EXT, "as MonetDB v5 does not support MIL.")
+    elif ( EXT[:4] == ".mal" or SERVER == "MAL" ) and par['M4']:
+        elem = SkipTest(env, TST, EXT, "as MonetDB v4 does not support MAL.")
+    elif EXT == ".milC" and  not env['exe']['MIL_Client'][0]:
+        elem = SkipTest(env, TST, EXT, "as "+env['MILCLIENT'].split(None, 
1)[0]+" is not available.")
+    elif EXT == ".malC" and  not env['exe']['MAL_Client'][0]:
+        elem = SkipTest(env, TST, EXT, "as "+env['MALCLIENT'].split(None, 
1)[0]+" is not available.")
     elif EXT == ".sql" and  not env['exe']['SQL_Client'][0]:
         elem = SkipTest(env, TST, EXT, "as "+env['SQLCLIENT'].split(None, 
1)[0]+" is not available.")
     elif EXT == ".sql" and  not env['exe']['SQL_Dump'][0]:
@@ -1539,11 +1557,13 @@
         elem = SkipTest(env, TST, EXT, "as BATs '"+str(MissingBATs)+"` are 
missing in database '"+TSTDB+"`.")
     elif CALL == "milCXp":
         elem = SkipTest(env, TST, EXT, "as multiple MIL clients in parallel 
are currently not supported by "+THISFILE+".")
+    elif CALL == "malCXp":
+        elem = SkipTest(env, TST, EXT, "as multiple MAL clients in parallel 
are currently not supported by "+THISFILE+".")
     elif CALL == "sqlXp":
         elem = SkipTest(env, TST, EXT, "as multiple SQL clients in parallel 
are currently not supported by "+THISFILE+".")
     elif CALL == "xqXp":
         elem = SkipTest(env, TST, EXT, "as multiple XQuery clients in parallel 
are currently not supported by "+THISFILE+".")
-    elif SERVER in ["MAPI", "SQL", "XQUERY"] and "MAPI" in BusyPorts:
+    elif SERVER in ["MIL", "MAL", "SQL", "XQUERY"] and "MAPI" in BusyPorts:
         elem = SkipTest(env, TST, EXT, "as MAPIPORT=%s is not available." % 
(env['MAPIPORT']))
     elif SERVER == "XQUERY" and "XRPC" in BusyPorts:
         elem = SkipTest(env, TST, EXT, "as XRPCPORT=%s is not available." % 
(env['XRPCPORT']))
@@ -1651,18 +1671,18 @@
                     else:
                         TOx = 1
                     CTIMEOUT = CTIMEOUT + ( TOx * TIMEOUT )
-        elif CALL in ["milMXs", "milSXs", "milCXs", "sqlXs", "xqXs", "x100Xs"]:
+        elif CALL in ["malXs", "milMXs", "milSXs", "milCXs", "sqlXs", "xqXs", 
"x100Xs"]:
             test = re.compile("^"+TST+"_s[0-9][0-9]"+EXT+"$", re.MULTILINE)
             d = os.listdir(os.getcwd())
             for f in d:
                 if test.match(f):
                     CTIMEOUT = CTIMEOUT + TIMEOUT
-        elif CALL in ["mal", "milM", "milS", "milC", "sql", "xq", "x100"]:
+        elif CALL in ["mal", "malC", "milM", "milS", "milC", "sql", "xq", 
"x100"]:
             CTIMEOUT = CTIMEOUT + TIMEOUT
         if  CTIMEOUT < TIMEOUT:
             CTIMEOUT = TIMEOUT
         STIMEOUT = CTIMEOUT
-        if  SERVER in ["MAPI", "SQL", "XQUERY"] and TIMEOUT > 0:
+        if  SERVER in ["MIL", "MAL", "SQL", "XQUERY"] and TIMEOUT > 0:
             STIMEOUT = STIMEOUT + TIMEOUT + 60
 
         ME = ""
@@ -1956,13 +1976,15 @@
         op = 'port=%d' % port
         np = 'port=%s' % env[SERVER+'PORT']
         env['exe']['Mserver']       = env['exe']['Mserver'][0]       , 
env['exe']['Mserver'][1].replace(op, np)
-        env['exe']['Mapi_Client']   = env['exe']['Mapi_Client'][0]   , 
env['exe']['Mapi_Client'][1].replace(op, np)
+        env['exe']['MIL_Client']    = env['exe']['MIL_Client'][0]    , 
env['exe']['MIL_Client'][1].replace(op, np)
+        env['exe']['MAL_Client']    = env['exe']['MAL_Client'][0]    , 
env['exe']['MAL_Client'][1].replace(op, np)
         env['exe']['SQL_Client']    = env['exe']['SQL_Client'][0]    , 
env['exe']['SQL_Client'][1].replace(op, np)
         env['exe']['SQL_Dump']      = env['exe']['SQL_Dump'][0]      , 
env['exe']['SQL_Dump'][1].replace(op, np)
         env['exe']['XQuery_Client'] = env['exe']['XQuery_Client'][0] , 
env['exe']['XQuery_Client'][1].replace(op, np)
         env['exe']['X100_Client']   = env['exe']['X100_Client'][0]   , 
env['exe']['X100_Client'][1].replace(op, np)
         os.environ['MSERVER']       = os.environ['MSERVER'].replace(op, np)
-        os.environ['MAPI_CLIENT']   = os.environ['MAPI_CLIENT'].replace(op, np)
+        os.environ['MIL_CLIENT']    = os.environ['MIL_CLIENT'].replace(op, np)
+        os.environ['MAL_CLIENT']    = os.environ['MAL_CLIENT'].replace(op, np)
         os.environ['SQL_CLIENT']    = os.environ['SQL_CLIENT'].replace(op, np)
         os.environ['SQL_DUMP']      = os.environ['SQL_DUMP'].replace(op, np)
         os.environ['XQUERY_CLIENT'] = os.environ['XQUERY_CLIENT'].replace(op, 
np)
@@ -2126,7 +2148,7 @@
     XRPCsockets[1].close()
 
     ServerReady = True
-    if SERVER in ["MAPI", "SQL", "XQUERY"]:
+    if SERVER in ["MIL", "MAL", "SQL", "XQUERY"]:
         SrvrOutFile = TST+".server.out"
         SrvrErrFile = TST+".server.err"
         SrvrOut = open(SrvrOutFile,"w")
@@ -2152,10 +2174,14 @@
             dbinit = TST+".dbinit5"
             DBINIT = open(dbinit).readline().strip()
 
-        lang="mil"
+        lang=""
 
-        if SERVER == "MAPI":
+        if SERVER == "MIL":
+            lang="mil"
             Srvr = '%s --dbinit="%s module(mapi); mil_start();"' % (Srvr, 
DBINIT)
+        if SERVER == "MAL":
+            lang="mal"
+            Srvr = '%s --dbinit="%s"' % (Srvr, DBINIT)
         if SERVER == "SQL":
             lang="sql"
             if par['M5']:
@@ -2204,7 +2230,7 @@
         elif CALL == "python":
             cmd = MTO+str(CTO)+" "+exe['python'][1]+" "+TST+EXT+" "+TST+" 
"+PRELUDE
             RunIt(cmd, "", ClntOut, ClntErr)
-        elif CALL in ["mal", "milM", "milS", "milMXs", "milSXs"]:
+        elif CALL in ["mal", "malXs", "milM", "milS", "milMXs", "milSXs"]:
             cmd = '%s%s %s%s --dbname=%s %s ' % (MTO, str(TOT), 
exe['Mserver'][1], LOCAL_CONF, TSTDB, PRELUDE)
             if CALL in ["mal", "milM", "milS"]:
                 X=""
@@ -2221,9 +2247,9 @@
                         RunIt(cmd+" --dbinit=\"include mil_scenario; mil();\" 
"+f, open(devnull), ClntOut, ClntErr)
                     else:
                         RunIt(cmd, open(f), ClntOut, ClntErr)
-        elif CALL in ["milC", "milCXs"]:
+        elif CALL in ["milC", "milCXs", "malC", "malCXs"]:
             TSTs = []
-            if CALL == "milC":
+            if CALL in ("milC", "malC"):
                 X=""
             else:
                 X="_s[0-9][0-9]"
@@ -2234,7 +2260,11 @@
                 if test.match(f):
                     TSTs.append(f)
 
-            Clnt = MTO+str(TOT)+" "+exe['Mapi_Client'][1]
+            Clnt = MTO+str(TOT)+" "
+            if CALL[:3] == "mil":
+                Clnt = Clnt+exe['MIL_Client'][1]
+            if CALL[:3] == "mal":
+                Clnt = Clnt+exe['MAL_Client'][1]
             for f in TSTs:
                 RunIt(Clnt, open(f), ClntOut, ClntErr)
 
@@ -2294,7 +2324,7 @@
     ClntOut.close()
     ClntErr.close()
 
-    if SERVER in ["MAPI", "SQL", "XQUERY"]:
+    if SERVER in ["MIL", "MAL", "SQL", "XQUERY"]:
         EPILOGUE = None
         if os.path.isfile(TST+".epilogue") and par['M4']:
             EPILOGUE = open(TST+".epilogue",'r')
@@ -2417,7 +2447,7 @@
 
 def CheckExec(cmd) :
     for p in os.environ['PATH'].split(os.pathsep):
-        x = isexecutable(os.path.join(p,cmd))
+        x = isexecutable(os.path.join(p,cmd),'')
         if x[0]:
             return os.path.join(p, cmd + x[1])
     return ""
@@ -2628,7 +2658,7 @@
             'TSTSRCBASE'  , 'TSTBLDBASE' , 'TSTTRGBASE'  ,
             'SQL_PREFIX']
     if THISFILE in ["Mtest.py", "Mprofile.py"]:
-        vars = vars + [ 'MAPICLIENT', 'SQLCLIENT', 'SQLDUMP', 'XQUERYCLIENT', 
'X100CLIENT']    #, 'MONETDB_MOD_PATH' ]
+        vars = vars + [ 'MILCLIENT', 'MALCLIENT', 'SQLCLIENT', 'SQLDUMP', 
'XQUERYCLIENT', 'X100CLIENT']    #, 'MONETDB_MOD_PATH' ]
     if THISFILE == "Mprofile.py":
         vars = vars + ['CMDLST']
 
@@ -2651,7 +2681,8 @@
         dft['setXQUERY_LOGDIR']     = "'--set 
\"xquery_logdir='+env['XQUERY_LOGDIR']+'\"'"
         dft['MAPIPORT']       = "str(randomPort(30000,39999))"
         dft['XRPCPORT']       = "str(randomPort(40000,49999))"
-        dft['MAPICLIENT']     = "'mclient -lmil'"
+        dft['MILCLIENT']      = "'mclient -lmil'"
+        dft['MALCLIENT']      = "'mclient -lmal'"
         dft['SQLCLIENT']      = "'mclient -lsql'"
         dft['SQLDUMP']        = "'msqldump'"
         dft['XQUERYCLIENT']   = "'mclient -lxquery -oxml'"
@@ -2718,8 +2749,10 @@
              "override default location of SQL transaction-log directory"),
             ('xquery_logdir', None, 'xquery_logdir', '<directory>',
              "override default location of XQuery transaction-log directory"),
-            ('MAPICLIENT', None, 'MAPICLIENT', '<mapi-client program>',
-             'default: %s' % dft['MAPICLIENT']),
+            ('MILCLIENT', None, 'MILCLIENT', '<mil-client program>',
+             'default: %s' % dft['MILCLIENT']),
+            ('MALCLIENT', None, 'MALCLIENT', '<mal-client program>',
+             'default: %s' % dft['MALCLIENT']),
             ('SQLCLIENT', None, 'SQLCLIENT', '<sql-client program>',
              'default: %s' % dft['SQLCLIENT']),
             ('SQLDUMP', None, 'SQLDUMP', '<sql-dump program>',
@@ -3039,7 +3072,7 @@
     #       print v+" = "+str(env[v])
     #STDOUT.flush()
 
-    # find mil script for MAPI and SQL server
+    # find mil script for MIL and SQL server
     if THISFILE in ["Mtest.py", "Mprofile.py"]:
         env['SQL_SERVER'] = "sql_server"
         env['SQL_TRACE'] = ""
@@ -3114,7 +3147,8 @@
                                                                (env['setDBG'], 
config, env['GDK_DEBUG'], env['setMONETDB_MOD_PATH'], env['setGDK_DBFARM'], 
env['setSQL_LOGDIR'], env['setXQUERY_LOGDIR'], env['MAPIPORT'], env['XRPCPORT'])
         exe['Mdiff']         = CheckExec('Mdiff')        , 'Mdiff'
         exe['python']        = CheckExec(sys.executable) , sys.executable
-        exe['Mapi_Client']   = CheckExec(env['MAPICLIENT'].split(None, 1)[0])  
, '%s -umonetdb -Pmonetdb "--config=%s" --host=%s --port=%s' % 
(env['MAPICLIENT'], config, HOST, env['MAPIPORT'])
+        exe['MIL_Client']    = CheckExec(env['MILCLIENT'].split(None, 1)[0])  
, '%s -umonetdb -Pmonetdb "--config=%s" --host=%s --port=%s' % 
(env['MILCLIENT'], config, HOST, env['MAPIPORT'])
+        exe['MAL_Client']    = CheckExec(env['MALCLIENT'].split(None, 1)[0])  
, '%s -umonetdb -Pmonetdb "--config=%s" --host=%s --port=%s' % 
(env['MALCLIENT'], config, HOST, env['MAPIPORT'])
         exe['SQL_Client']    = CheckExec(env['SQLCLIENT'].split(None, 1)[0])   
, '%s -umonetdb -Pmonetdb --host=%s --port=%s %s' % (env['SQLCLIENT'], HOST, 
env['MAPIPORT'], env['SQL_TRACE'])
         exe['SQL_Dump']      = CheckExec(env['SQLDUMP'].split(None, 1)[0])     
, '%s -umonetdb -Pmonetdb --host=%s --port=%s %s' % (env['SQLDUMP'], HOST, 
env['MAPIPORT'], env['SQL_TRACE'])
         exe['XQuery_Client'] = CheckExec(env['XQUERYCLIENT'].split(None, 
1)[0]), '%s -umonetdb -Pmonetdb --host=%s --port=%s' % (env['XQUERYCLIENT'], 
HOST, env['MAPIPORT'])
@@ -3310,13 +3344,19 @@
         if par['PACKAGE'] == 'monetdb-amdb':
             if not env['exe']['X100_Client'][0]:
                 ErrXit('Stopping X100/AmDB testing as "%s" is not available!' 
% env['X100CLIENT'].split(None, 1)[0])
+            if not env['exe']['MIL_Client'][0]:
+                ErrXit('Stopping X100/AmDB testing as "%s" is not available!' 
% env['MILCLIENT'].split(None, 1)[0])
             MissingMods = CheckMods(env, '', '', 'x100')
             if MissingMods:
                 ErrXit('Stopping X100/AmDB testing as modules "%s" are 
missing!' % str(MissingMods))
 
-        if par['PACKAGE'][:8] == 'monetdb-' and par['PACKAGE'][8:] in 
('sql','geom','xquery','amdb'):
-            if not env['exe']['Mapi_Client'][0]:
-                ErrXit('Stopping %s testing as "%s" is not available!' % 
(par['PACKAGE'][8:], env['MAPICLIENT'].split(None, 1)[0]))
+        if par['PACKAGE'][:8] == 'monetdb-' and par['PACKAGE'][8:] in 
('sql','geom'):
+            if not env['exe']['SQL_Client'][0]:
+                ErrXit('Stopping %s testing as "%s" is not available!' % 
(par['PACKAGE'][8:], env['SQLCLIENT'].split(None, 1)[0]))
+
+        if par['PACKAGE'] == 'monetdb-xquery':
+            if not env['exe']['XQuery_Client'][0]:
+                ErrXit('Stopping XQuery testing as "%s" is not available!' % 
env['XQUERYCLIENT'].split(None, 1)[0])
 
         for SRVR in 'MAPI', 'XRPC':
             port = int(env[SRVR+'PORT'])

Index: MkillUsers.in
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/MkillUsers.in,v
retrieving revision 1.25.6.2
retrieving revision 1.25.6.3
diff -u -d -r1.25.6.2 -r1.25.6.3
--- MkillUsers.in       24 Aug 2007 09:01:53 -0000      1.25.6.2
+++ MkillUsers.in       3 Sep 2007 12:53:44 -0000       1.25.6.3
@@ -93,7 +93,7 @@
 if [   "$TEMPLATE_BUILD" ] ; then BINPATH="$BINPATH   
$TEMPLATE_BUILD/src/tools   $TEMPLATE_BUILD/src/tools/.libs" ; fi
 if [ "$PATHFINDER_BUILD" ] ; then BINPATH="$BINPATH 
$PATHFINDER_BUILD/src/tools $PATHFINDER_BUILD/src/tools/.libs" ; fi
 for b in $BINPATH ; do
-       files="$files `ls $b/* 2>/dev/null | egrep 
'/(mserver5|Mserver|MapiClient|mclient|MapiClient\.py|Mdiff|Mlog|Mtimeout|pf)$'`"
+       files="$files `ls $b/* 2>/dev/null | egrep 
'/(mserver5|Mserver|mclient|mclient\.py|Mdiff|Mlog|Mtimeout|pf)$'`"
 done
 
 case `uname` in

Index: Makefile.ag
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/Makefile.ag,v
retrieving revision 1.18
retrieving revision 1.18.4.1
diff -u -d -r1.18 -r1.18.4.1
--- Makefile.ag 5 Apr 2007 08:41:52 -0000       1.18
+++ Makefile.ag 3 Sep 2007 12:53:44 -0000       1.18.4.1
@@ -35,6 +35,7 @@
 bin_Mprofile.py.bat = bin_Mtest.py.bat
 
 scripts_bat = {
+       COND = NATIVE_WIN32
        DIR = bindir
        SOURCES = Mlog.bat Mtest.py.bat
 }
@@ -56,6 +57,7 @@
 }
 
 scripts_sh = {
+       COND = NOT_WIN32
        EXT = ""
        DIR = bindir
        SOURCES = Mlog MkillUsers


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Monetdb-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-checkins

Reply via email to