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

Modified Files:
      Tag: GDK-2
        Makefile.ag Mfilter.py.in Mtest.py.in README 
Removed Files:
      Tag: GDK-2
        Mprofile-commands.lst prof.py 
Log Message:
propagated changes of Monday Sep 10 2007 - Tuesday Sep 18 2007
from the development trunk to the GDK-2 branch


--- prof.py DELETED ---

Index: Mtest.py.in
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/Mtest.py.in,v
retrieving revision 1.280.2.6
retrieving revision 1.280.2.7
diff -u -d -r1.280.2.6 -r1.280.2.7
--- Mtest.py.in 6 Sep 2007 13:50:57 -0000       1.280.2.6
+++ Mtest.py.in 18 Sep 2007 12:51:49 -0000      1.280.2.7
@@ -29,7 +29,6 @@
 #   contains(<file>,<string>)
 # - do multi-level prompting?
 # - normalize all path's used
-# - remove one of milM, milS
 
 try:
     True
@@ -49,7 +48,6 @@
 #import signal
 #import getpass
 import Mfilter
-import prof
 
 def _configure(str):
     # expand configure variables in str and return result
@@ -98,15 +96,21 @@
             str = nstr
     return str
 
-# add dir where monet_options, trace & subprocess26 are installed to sys.path
-# we must expand configure variables in the process
-sys.path.append(_configure(os.path.join('@QXdatadir@','@PACKAGE@','python')))
-import monet_options
+try:
+    from MonetDB import monet_options
+except ImportError:
+    import distutils.sysconfig
+    p = 
_configure(os.path.join('@QXprefix@',distutils.sysconfig.get_python_lib(1,0,"")))
+    sys.path.insert(0, p)
+    from MonetDB import monet_options
+    if os.environ.has_key('PYTHONPATH'):
+        p = p + os.pathsep + os.environ['PYTHONPATH']
+    os.environ['PYTHONPATH'] = p
 try:
     import subprocess
 except ImportError:
     # use private copy for old Python versions
-    import subprocess26 as subprocess
+    import MonetDB.subprocess26 as subprocess
 
 randomPortRepeat = 9
 
@@ -546,48 +550,6 @@
     if COMPILER:
         SYSTEM = COMPILER+", "+SYSTEM
 
-    xWHAT = WHAT
-    if THISFILE == "Mprofile.py":
-        test = 
re.compile("^"+TST+"(_[sp][0-9][0-9])?\..*mil.*\.prof\.diff\.html$", 
re.MULTILINE)
-        d = os.listdir(os.getcwd())
-        d.sort()
-        rows = ""
-        frames = ""
-        frameset = Element('frameset',
-                           {'frameborder': 'yes',
-                            'border': '1',
-                            'bordercolor': white,
-                            'marginwidth': '0',
-                            'marginheight': '0'})
-        for f in d:
-            if test.match(f):
-                rows = rows+",*"
-                frameset.addchild(Element('frame',
-                                          {'src': f,
-                                           'scrolling': 'auto',
-                                           'frameborder': 'yes',
-                                           'bordercolor': white,
-                                           'marginwidth': '0',
-                                           'marginheight': '0'}))
-        if rows:
-            xWHAT = ".prof-"+WHAT[1:]
-            rows = "*"+rows
-            frameset.inschild(0, Element('frame',
-                                         {'src': TST+WHAT+'.diff.html',
-                                          'scrolling': 'auto',
-                                          'frameborder': 'yes',
-                                          'bordercolor': white,
-                                          'marginwidth': '0',
-                                          'marginheight': '0'}))
-            frameset.attrdict['rows'] = rows
-            html = Element('html', {},
-                           Element('head', {}.
-                                   Element('title', {}, Text(HTMLTITLE))),
-                           frameset)
-            f = open(TST+xWHAT+".diff.html","w")
-            html.write(f, True)
-            f.close()
-
     html = Element('html', {},
                    Element('head', {},
                            Element('title', {}, Text(HTMLTITLE)),
@@ -607,7 +569,7 @@
                                     'marginwidth': '0',
                                     'marginheight': '0'}),
                            Element('frame',
-                                   {'src': '%s%s.diff.html' % (TST, xWHAT),
+                                   {'src': '%s%s.diff.html' % (TST, WHAT),
                                     'scrolling': 'auto',
                                     'name': '%s_%s_%s_%s_body' % (DISTVER, 
TSTDIR, TST, WHAT[1:]),
                                     'frameborder': 'yes',
@@ -627,7 +589,7 @@
     text = Element('div', {'class': 'header'},
                    Text(SYSTEM),
                    Text(' '),
-                   Element('a', {'href': '%s%s.diff.html' % (TST, xWHAT),
+                   Element('a', {'href': '%s%s.diff.html' % (TST, WHAT),
                                  'target': target,
                                  'class': diffclass},
                            Text(difftext)),
@@ -927,7 +889,7 @@
     TSTBLDDIR = 
os.path.normpath(os.path.join(env['TSTBLDBASE'],TSTDIR,TSTSUFF))
     TSTTRGDIR = 
os.path.normpath(os.path.join(env['TSTTRGBASE'],TSTPREF,TSTDIR))
 
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         TSTDB = TSTPREF+"_"+TSTDIR.replace(os.sep, '_')
     else: # THISFILE == "Mapprove.py"
         TSTDB = ""
@@ -970,7 +932,7 @@
     #       print v+" = "+str(env[v])
     #STDOUT.flush()
 
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         for LogDBvar in 'GDK_DBFARM', 'SQL_LOGDIR', 'XQUERY_LOGDIR':
             if env.has_key(LogDBvar):
                 LogDBdir = os.path.join(env[LogDBvar],TSTDB)
@@ -1015,7 +977,7 @@
                 body.append(bodyline)
         TIMES.append([TSTDIR,'',"%7.3f" % td,td,FdOut,FdErr])
 
-        if THISFILE in ["Mtest.py", "Mprofile.py"]:
+        if THISFILE == "Mtest.py":
             CreateHtmlIndex(env, *body)
             elem = AddSubToHtmlIndex(env, TSTDIR, max(FdOut,FdErr))
 
@@ -1303,6 +1265,10 @@
 def CheckBATs(env, TST, TSTDB) :
     missing = []
 
+    if not os.path.isfile(TST+".BATs"):
+        # no BATs required => no check required
+        return missing
+
     if par['M5']:
         # Warn("Monet5: Check, whether required BATs do exist, is not 
possible, yet!")
         return missing
@@ -1441,14 +1407,10 @@
         EXT = ".SQL.py"     ; CALL = "python" ; SERVER = "SQL"
     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+".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 = "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"):
@@ -1492,11 +1454,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|malC|milM|milS|milC|sql|xq|x100)`")
+            ErrMsg("test missing: 
'"+os.path.join(TSTSRCDIR,TST)+".(exe|com|bat|cmd|py|mal|malC|milS|milC|sql|xq|x100)`")
             #TODO:
             #elif os.name == "posix":
         else:
-            ErrMsg("test missing: 
'"+os.path.join(TSTSRCDIR,TST)+"[.py|.mal|.malC|.milM|.milS|.milC|.sql|.xq|.x100]`")
+            ErrMsg("test missing: 
'"+os.path.join(TSTSRCDIR,TST)+"[.py|.mal|.malC|.milS|.milC|.sql|.xq|.x100]`")
         return TX,Failed,Failed,elem
 
     if par['PACKAGE'] not in ('monetdb', 'monetdb-clients'):
@@ -1614,19 +1576,6 @@
                     f.write(expandvars(l))
                 f.close()
 
-        if THISFILE == "Mprofile.py":
-            test = re.compile("^"+TST+"(_[sp][0-9][0-9])?\..*mil.*$", 
re.MULTILINE)
-            d = os.listdir(os.getcwd())
-            for f in d:
-                if test.match(f)  and  f != TST+EXT+".src":
-                    prof.prof(f, env['CMDLST'])
-                    os.rename(f,f+".no_prof")
-                    os.rename("prof_"+f,f)
-                    if not quiet:
-                        os.system('%s -I"%s" "%s" -A%d "%s.no_prof" "%s" 
"%s.prof.diff.html"' % 
(env['exe']['Mdiff'][1],par['IGNORE'],par['CONTEXT'],par['ACCURACY'],f,f,f))
-                    else:
-                        os.system('%s -q -I"%s" "%s" -A%d "%s.no_prof" "%s" 
"%s.prof.diff.html"' % 
(env['exe']['Mdiff'][1],par['IGNORE'],par['CONTEXT'],par['ACCURACY'],f,f,f))
-
         ACCURACYout = par['ACCURACY']
         ACCURACYerr = par['ACCURACY']
         STABLEout,STABLEerr = StableOutErr(env,par,TST,OS,RELEASE,DIST,VERSION)
@@ -1671,13 +1620,13 @@
                     else:
                         TOx = 1
                     CTIMEOUT = CTIMEOUT + ( TOx * TIMEOUT )
-        elif CALL in ["malXs", "milMXs", "milSXs", "milCXs", "sqlXs", "xqXs", 
"x100Xs"]:
+        elif CALL in ["malXs", "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", "malC", "milM", "milS", "milC", "sql", "xq", 
"x100"]:
+        elif CALL in ["mal", "malC", "milS", "milC", "sql", "xq", "x100"]:
             CTIMEOUT = CTIMEOUT + TIMEOUT
         if  CTIMEOUT < TIMEOUT:
             CTIMEOUT = TIMEOUT
@@ -1718,9 +1667,6 @@
         TestErrFile = TST+".test.err"
         TestOut = open(TestOutFile,"w")
         TestErr = open(TestErrFile,"w")
-        #else:  # THISFILE == "Mprofile.py"
-        #       TestOut = open(TST+".profile.out","w")
-        #       TestErr = open(TST+".profile.err","w")
         TestOut.write("stdout of test '"+TST+"` in directory '"+url(TSTDIR)+"` 
itself:\n\n")
         TestErr.write("stderr of test '"+TST+"` in directory '"+url(TSTDIR)+"` 
itself:\n\n")
         TestOut.close()
@@ -1810,7 +1756,7 @@
             env['exe']['Mtimeout'] = env['exe']['Mtimeout'][0], 'Mtimeout 
-timeout %s ' % str(par['TIMEOUT'])
             SetExecEnv(env['exe'],0)
 
-        if THISFILE in ["Mtest.py", "Mprofile.py"]:
+        if THISFILE == "Mtest.py":
             try:
                 Mfilter.mFilter(TST+STABLEout,par['IGNORE'])
                 Mfilter.mFilter(TST+STABLEerr,par['IGNORE'])
@@ -2252,9 +2198,9 @@
         elif CALL == "python":
             cmd = MTO+str(CTO)+" "+exe['python'][1]+" "+TST+EXT+" "+TST+" 
"+PRELUDE
             RunIt(cmd, "", ClntOut, ClntErr)
-        elif CALL in ["mal", "malXs", "milM", "milS", "milMXs", "milSXs"]:
+        elif CALL in ["mal", "malXs", "milS", "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"]:
+            if CALL in ["mal", "milS"]:
                 X=""
             else:
                 X="_s[0-9][0-9]"
@@ -2520,14 +2466,9 @@
 
 THISFILE = os.path.basename(sys.argv[0])
 THISPATH = os.path.abspath(os.path.dirname(sys.argv[0]))
-if THISFILE == "Mprofile.py":
-    dftTSTPREF = "mProfiles"
-    TSTDBG = str(0)
-    dftIGNORE = '^[#~]'
-else: # THISFILE in ["Mtest.py", "Mapprove.py"]
-    dftIGNORE = '^#'
-    TSTDBG = str(2+8)
-    dftTSTPREF = "mTests"
+dftIGNORE = '^#'
+TSTDBG = str(2+8)
+dftTSTPREF = "mTests"
 TSTSUFF = "Tests"
 
 if hasattr(os,"symlink"):
@@ -2700,18 +2641,6 @@
             par['PACKAGE'] = 'monetdb'
             Warn('Using default package="%s".' % par['PACKAGE'])
 
-def FindCmdLst(env) :
-    dirs = [ os.path.join(os.getcwd(),"."), 
os.path.join(env['TSTSRCBASE'],".") ]
-    if os.environ.has_key('HOME'):
-        dirs.append(os.path.join(os.environ['HOME'],"."))
-    dirs.append(path(env['MONETDB_PREFIX']+"/share/MonetDB/"))
-    for d in dirs:
-        f = d+'Mprofile-commands.lst'
-        if os.path.isfile(f):
-            return f
-    return ""
-### FindCmdLst(env) #
-
 def GetConfig(cfg, arg) :
     cmd = CheckExec(cfg)
     proc = subprocess.Popen([cmd,arg], stdin = subprocess.PIPE, stdout = 
subprocess.PIPE, universal_newlines = True)
@@ -2745,10 +2674,8 @@
     vars = ['MONETDB_SOURCE', 'MONETDB_BUILD', 'MONETDB_PREFIX',
             'TSTSRCBASE'  , 'TSTBLDBASE' , 'TSTTRGBASE'  ,
             'SQL_PREFIX']
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         vars = vars + [ 'MILCLIENT', 'MALCLIENT', 'SQLCLIENT', 'SQLDUMP', 
'XQUERYCLIENT', 'X100CLIENT']    #, 'MONETDB_MOD_PATH' ]
-    if THISFILE == "Mprofile.py":
-        vars = vars + ['CMDLST']
 
     env = {}
 
@@ -2760,7 +2687,7 @@
     dft['TSTSRCBASE']     = "GetMonetConfig(par['PACKAGE'],'--source')"
     dft['TSTBLDBASE']     = "GetMonetConfig(par['PACKAGE'],'--build')"
     dft['TSTTRGBASE']     = "GetMonetConfig(par['PACKAGE'],'--prefix')"   # or 
os.getcwd() ?
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         dft['GDK_DEBUG']      = "TSTDBG"
         dft['MONETDB_MOD_PATH'] = "''"   
#"os.path.join(env['MONETDB_PREFIX'],'lib')+os.pathsep+os.path.join(env['MONETDB_PREFIX'],'lib','MonetDB')"
         dft['setMONETDB_MOD_PATH'] = "'--set 
\"monet_mod_path='+env['MONETDB_MOD_PATH']+'\"'"
@@ -2773,10 +2700,8 @@
         dft['MALCLIENT']      = "'mclient -lmal'"
         dft['SQLCLIENT']      = "'mclient -lsql'"
         dft['SQLDUMP']        = "'msqldump'"
-        dft['XQUERYCLIENT']   = "'mclient -lxquery -oxml'"
+        dft['XQUERYCLIENT']   = "'mclient -lxquery -fxml'"
         dft['X100CLIENT']     = "'x100run_mapi'"
-    if THISFILE == "Mprofile.py":
-        dft['CMDLST']         = "FindCmdLst(env)"
 
     #par = {}
     # get current environment
@@ -2815,7 +2740,7 @@
          "suppress messages on stdout"),
         ]
 
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         common_options = cmd_options + [
             (None, 'I', 'ignore', '<exp>',
              "ignore lines matching <exp> during diff (default: '%s')" % 
dftIGNORE),
@@ -2856,16 +2781,6 @@
 
     if THISFILE == 'Mtest.py':
         options = common_options # + []
-    elif THISFILE == "Mprofile.py":
-        options = common_options + [
-            ('CMDLIST', None, 'cmdlist', '<path>',
-             "location of .Mprofile-commands.lst file; default is the first 
of\n" +
-             "\t%s\n" % os.path.join(os.getcwd(), '.Mprofile-commands.lst') +
-             "\t%s\n" % os.path.join('<TSTSRCBASE>', '.Mprofile-commands.lst') 
+
-             "\t%s\n" % 
os.path.join(os.environ['HOME'],'.Mprofile-commands.lst') +
-             "\t%s" % 
os.path.join(GetMonetConfig(par['PACKAGE'],'--prefix'),'share','MonetDB','Mprofile-commands.lst')
-             ),
-            ]
     elif THISFILE == 'Mapprove.py':
         f = 
os.path.join(GetMonetConfig(par['PACKAGE'],'--prefix'),dftTSTPREF,'.Mapprove.rc')
         v = ReadMapproveRc(f)
@@ -2949,7 +2864,7 @@
 
     par['RECURSIVE'] = opts.get('recursive', 0)
     par['QUIET'] = opts.get('quiet', 0)
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         par['IGNORE'] = opts.get('ignore', dftIGNORE)
         par['CONTEXT'] = '-C%d' % int(opts.get('context', 1))
         a = int(opts.get('accuracy', (os.name != 'nt' and 1) or 0))
@@ -3041,7 +2956,7 @@
         #os.environ['PATH'] = bp
 
     # tidy-up and fall-back to defaults where necessary
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         vars_ = vars + ['MAPIPORT', 'XRPCPORT', 'GDK_DEBUG', 
'MONETDB_MOD_PATH']
     else: # THISFILE == "Mapprove.py"
         vars_ = vars
@@ -3050,7 +2965,7 @@
             env[v] = eval(dft[v])
             #TODO:
             # make sure, that PATHs are absolute
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         if env['MONETDB_MOD_PATH']:
             env['setMONETDB_MOD_PATH'] = eval(dft['setMONETDB_MOD_PATH'])
         else:
@@ -3072,13 +2987,6 @@
         else:
             env['setDBG'] = ''
 
-    if THISFILE == "Mprofile.py"  and  not env['CMDLST']:
-        try:
-            Usage(options)
-        except monet_options.Error:
-            pass
-        ErrXit("No .Mprofile-commands.lst found!")
-
     #TODO:
     ## in case of inconsistencies, try to fallback to "save" settings
     #
@@ -3167,7 +3075,7 @@
     #STDOUT.flush()
 
     # find mil script for MIL and SQL server
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         env['SQL_SERVER'] = "sql_server"
         env['SQL_TRACE'] = ""
 
@@ -3181,7 +3089,7 @@
         URLPREFIX = URLPREFIXMAP.get(repo) # None if unknown
     # export and display env
     STDERR.flush()
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         vars_ = vars_ + 
['XQUERY_LOGDIR','SQL_LOGDIR','GDK_DBFARM','setMONETDB_MOD_PATH','SQL_SERVER']
     else: # THISFILE == "Mapprove.py"
         vars_ = vars_
@@ -3199,7 +3107,7 @@
 
     ## set/extend PATH & LD_LIBRARY_PATH
     #bp = ""        #os.path.join(env['MONETDB_PREFIX'],"bin")
-    #if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    #if THISFILE == "Mtest.py":
     #       lp = env['MONETDB_MOD_PATH']
     #else: # THISFILE == "Mapprove.py"
     #       lp = ""
@@ -3230,7 +3138,7 @@
         os.chdir(env['TSTSRCBASE'])
 
     # check for executables, set their standard options and export them
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         exe = {}
         exe['Mtimeout']      = CheckExec('Mtimeout')     , 'Mtimeout -timeout 
%d ' % par['TIMEOUT']
         if par['M5']:
@@ -3241,12 +3149,12 @@
                                                                (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['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['MIL_Client']    = CheckExec(env['MILCLIENT'].split(None, 1)[0])  
, '%s -umonetdb -Pmonetdb --host=%s --port=%s' % (env['MILCLIENT'], HOST, 
env['MAPIPORT'])
+        exe['MAL_Client']    = CheckExec(env['MALCLIENT'].split(None, 1)[0])  
, '%s -umonetdb -Pmonetdb --host=%s --port=%s' % (env['MALCLIENT'], 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'])
-        exe['X100_Client']   = CheckExec(env['X100CLIENT'].split(None, 1)[0])  
, '%s -umonetdb -Pmonetdb "--config=%s" --host=%s --port=%s' % 
(env['X100CLIENT'], config, HOST, env['MAPIPORT'])
+        exe['X100_Client']   = CheckExec(env['X100CLIENT'].split(None, 1)[0])  
, '%s -umonetdb -Pmonetdb --host=%s --port=%s' % (env['X100CLIENT'], HOST, 
env['MAPIPORT'])
         if par['TIMEOUT'] == 0 or not exe['Mtimeout'][0]:
             exe['Mtimeout'] = '', ''
         env['exe'] = exe
@@ -3336,7 +3244,7 @@
 
     BusyPorts = []
 
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
 
         if os.name == "nt":
             n = os.path.join(THISPATH,"MkillNT.")
@@ -3496,7 +3404,7 @@
             if elem is not None:
                 body.append(elem)
 
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         fn = os.path.join(env['TSTTRGBASE'],TSTPREF,"times.")
         fl = open(fn+"lst","w")
         Failure = [0,0,0,0,0,0]
@@ -3580,7 +3488,7 @@
                 fl.write(sql)
         fl.close()
 
-    if THISFILE in ["Mtest.py", "Mprofile.py"]:
+    if THISFILE == "Mtest.py":
         env['TSTDIR'] = ""
         env['TSTTRGDIR'] = os.path.join(env['TSTTRGBASE'],TSTPREF)
         CreateHtmlIndex(env, *body)

--- Mprofile-commands.lst DELETED ---

Index: README
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/README,v
retrieving revision 1.35.4.2
retrieving revision 1.35.4.3
diff -u -d -r1.35.4.2 -r1.35.4.3
--- README      3 Sep 2007 12:53:45 -0000       1.35.4.2
+++ README      18 Sep 2007 12:51:51 -0000      1.35.4.3
@@ -1,13 +1,13 @@
-Hi all Monet and DS hackers,
 
-here comes the new version of the testing environment. Only a few details
-have changed since my proposal.
+This is the documentation of the MonetDB regression testing environment.
+
+For futher information about the automatic nightly multi-platform regression
+testing of MonetDB, please also see
+http://monetdb.cwi.nl/Development/TestWeb/index.html
 
 
 - The testing environment consists of the following tools:
   + Mtest.py   a python script to run tests
-  + Mprofile.py        a python script to run tests and collect profiling 
information
-               (see below)
   + Mfilter.py a python script to filter the test output before running Mdiff 
                (see below)
   + Mdiff      a C program to show the differences of two files as HTML 
document
@@ -18,8 +18,11 @@
                (used "fuser" to detect such processes)
   (Mtimeout and MkillUsers are currently available on Unix, only)
 
+  When called with command-line option "--help", each of these tools
+  provides the respective usage information.
 
-- In each directory of the current Monet and/or DS source tree tests may be
+
+- In each directory of all MonetDB-related source trees, tests may be
   provided in a subdirectory called "Tests". Of course, the tests should
   deal with the part/modules where they are located and they should be
   provided and maintained by the respective developer (see also below).
@@ -36,10 +39,7 @@
                    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 Mserver                (TST.milS) (',^,`)
     * 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)  (",^,`)
@@ -58,20 +58,20 @@
         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
-        TST_sXX.mil(M|S) (XX={00,01,...,99})
-        these are executed by subsequently calling Mserver
+   (') For Mserver/mserver5, if several files are present named
+        TST_sXX.(milS|mal) (XX={00,01,...,99})
+        these are executed by subsequently calling Mserver/mserver5
    (") For mclient, if several files are present named
-        (1) TST_sXX.(milC|sql|xq) (XX={00,01,...,99})
-            these are executed subsequently using the same Mserver
-        (2) TST_pXX.(milC|sql|xq) (XX={00,01,...,99})
-            these are executed cuncurrently using the same Mserver
+        (1) TST_sXX.(milC|malC|sql|xq) (XX={00,01,...,99})
+            these are executed subsequently using the same Mserver/mserver5
+        (2) TST_pXX.(milC|malC|sql|xq) (XX={00,01,...,99})
+            these are executed concurrently using the same Mserver/mserver5
    (^) For each test file TST[.*] involved,
         if a file called
        TST[.*].src  exists instead of  TST[.*],
        TST[.*].src  is expected to contain a single line
        giving the original location of the test file to be used.
-       E.g.,  src/modules/plain/Tests/arith.milM.src  contains
+       E.g.,  src/modules/plain/Tests/arith.milS.src  contains
                $TSTBLDBASE/$TSTDIR/arith.mil
        in order to use the MIL script extracted from
        src/modules/plain/arith.mx  as test script.
@@ -84,9 +84,12 @@
      (optional)                                             (TST.prelude)  
(^,`)
   + a MAL script to be used as prelude for mserver5
      (optional)                                             (TST.prelude5) 
(^,`)
-  + for frontend tests, a MIL script to be used 
-     instead of the frontends dbinit script.
+  + for frontend tests with MonetDB4 (Mserver), a MIL script to be executed
+     by the server before stating the frontend
      (optional)                                             (TST.dbinit) (^,`)
+  + for frontend tests with MonetDB5 (mserver5), a MAL script to be executed
+     by the server before stating the frontend
+     (optional)                                             (TST.dbinit5) (^,`)
   + for mclient tests, a MIL script to be used as
      prologue for Mserver, i.e., a script that is executed by Mserver after
      dbinit is executed, but before (the first)
@@ -106,10 +109,10 @@
      (all) mclient(s) have finished
      (optional)                                             
(TST.epilogue5)(^,`)
   + a file that contains a list of modules (one per line)
-     required by the test  (optional)                       (TST.modules)  
(^,`)
+     required by the test  (optional; MonetDB4, only)       (TST.modules)  
(^,`)
   + a file that contains a list of BATs (one per line)
      (created by previous tests within the same directory)
-     required by the test  (optional)                       (TST.BATs)     
(^,`)
+     required by the test  (optional; MonetDB4, only)       (TST.BATs)     
(^,`)
   + a set of files used by the arbitrary executable
      (optinal)                                              (TST.*)        
(^,`)
   + stable (i.e. correct) versions of stdout and stderr
@@ -125,21 +128,30 @@
   Using this naming conventions, the test environment can automatically
   decide what to do when called as "Mtest.py TST" (see below), i.e. execute
   one of the following:
-  * TST[.exe|.com|.bat|.cmd] TST [TST.prelude]
+  * TST[.sh|.exe|.com|.bat|.cmd] TST [TST.prelude]
   * python TST.py [TST.prelude]
-  * Mserver --dbname=TSTDB [TST.prelude] < TST.mil(M|S)
-  * Mserver --dbname=TSTDB --set mapi_port=$MAPIPORT --set xrpc_port=$XRPCPORT 
--dbinit="module(mapi); mil_start();" [TST.prologue] &
+  * Mserver --dbname=TSTDB [TST.prelude] < TST.milS
+  * mserver5 --dbname=TSTDB [TST.prelude] < TST.mal
+  * Mserver --dbname=TSTDB --set mapi_port=$MAPIPORT --set xrpc_port=$XRPCPORT 
--dbinit="[<TST.dbinit] module(mapi); mil_start();" [TST.prologue] &
          mclient -lmil < TST[_(s|p)XX].milC
-     or  TST[.exe|.com|.bat|.cmd] TST [TST.prelude]
-     or  python TST.py [TST.prelude]
-  * Mserver --dbname=TSTDB --set mapi_port=$MAPIPORT --set xrpc_port=$XRPCPORT 
--dbinit="module(sql_server);" [TST.prologue] &
+     or  TST.MIL.(sh|exe|com|bat|cmd) TST [TST.prelude]
+     or  python TST.MIL.py [TST.prelude]
+  * mserver5 --dbname=TSTDB --set mapi_port=$MAPIPORT --set 
xrpc_port=$XRPCPORT --dbinit="[<TST.dbinit5]" [TST.prologue5] &
+         mclient -lmal < TST[_(s|p)XX].malC
+     or  TST.MAL.(sh|exe|com|bat|cmd) TST
+     or  python TST.MAL.py
+  * Mserver --dbname=TSTDB --set mapi_port=$MAPIPORT --set xrpc_port=$XRPCPORT 
--dbinit="[<TST.dbinit] module(sql_server);" [TST.prologue] &
          mclient -lsql < TST[_(s|p)XX].sql
-     or  TST[.exe|.com|.bat|.cmd] TST [TST.prelude]
-     or  python TST.py [TST.prelude]
-  * Mserver --dbname=TSTDB --set mapi_port=$MAPIPORT --set xrpc_port=$XRPCPORT 
--dbinit="module(pathfinder);" [TST.prologue] &
-         mclient -lxquery -oxml < TST[_(s|p)XX].xq
-     or  TST[.exe|.com|.bat|.cmd] TST [TST.prelude]
-     or  python TST.py [TST.prelude]
+     or  TST.SQL.(sh|exe|com|bat|cmd) TST
+     or  python TST.SQL.py
+  * mserver5 --dbname=TSTDB --set mapi_port=$MAPIPORT --set 
xrpc_port=$XRPCPORT --dbinit="[<TST.dbinit5] include sql;" [TST.prologue5] &
+         mclient -lsql < TST[_(s|p)XX].sql
+     or  TST.SQL.(sh|exe|com|bat|cmd) TST
+     or  python TST..SQL.py
+  * Mserver --dbname=TSTDB --set mapi_port=$MAPIPORT --set xrpc_port=$XRPCPORT 
--dbinit="[<TST.dbinit] module(pathfinder);" [TST.prologue] &
+         mclient -lxquery -fxml < TST[_(s|p)XX].xq
+     or  TST.XQUERY.(sh|exe|com|bat|cmd) TST
+     or  python TST.XQUERY.py
 
   (On Unix, all M<tool>'s are started with "Mtimeout -timeout TIMEOUT
    M<tool> ..." to kill (probably) hanging M<tool>'s after a certain
@@ -159,13 +171,13 @@
 
 - Mtest.py uses three directory trees based at TSTSRCBASE, TSTBLDBASE, and
   TSTTRGBASE, respectively. These trees have similar purpose as the SOURCE,
-  BUILD, and PREFIX trees when configuring and compiling Monet: the original
+  BUILD, and PREFIX trees when configuring and compiling MonetDB: the original
   tests are found in TSTSRCBASE, tests extracted from .mx or .in files
   during testing are fould in TSTBLDBASE, and Mtest.py writes the test
   output to TSTTRGBASE. The default settings are as follows:
-       TSTSRCBASE=$MONETDB_SOURCE  (where you cecked out Monet's source tree)
+       TSTSRCBASE=$MONETDB_SOURCE  (where you cecked out MonetDB's source tree)
        TSTBLDBASE=$MONETDB_BUILD   (where you called configure and make)
-       TSTTRGBASE=$MONETDB_PREFIX  (where you told configure to put Monet)
+       TSTTRGBASE=$MONETDB_PREFIX  (where you told configure to put MonetDB)
   You can over rule any of these defaults by setting the respective
   environment variable, or by giving, e.g., --TSTTRGBASE=/tmp as command
   line option to Mtest.py. 
@@ -178,7 +190,7 @@
   The latter is a restiction that might be released in the future, but for
   the time being, using paths that contain symbolic links will cause
   problems with Mtest.py.
-  Hence, if you compiled Monet in a path that contains a symbolic link,
+  Hence, if you compiled MonetDB in a path that contains a symbolic link,
   e.g., ~/dev/monet -> /net/myhost/export/scratch1/myname/monet,
   you should either
   a) overrule the initial setting of MONETDB_SOURCE, MONETDB_BUILD,
@@ -226,9 +238,9 @@
     default settings:
        name            default                                 description
        ----            -------                                 -----------
-       MONETDB_SOURCE  (where you checked out Monet)           base of Monet's 
source tree
+       MONETDB_SOURCE  (where you checked out MonetDB)         base of 
MonetDB's source tree
        MONETDB_BUILD   (where you called configure & make)     base of 
extracted source tree
-       MONETDB_PREFIX  (where you installed Monet to)          base of Monet 
distribution
+       MONETDB_PREFIX  (where you installed MonetDB to)        base of MonetDB 
distribution
        TSTSRCBASE      $MONETDB_SOURCE                         base of test 
source tree
        TSTBLDBASE      $MONETDB_BUILD                          base of 
extracted test tree
        TSTTRGBASE      $MONETDB_PREFIX                         base for test 
output
@@ -236,13 +248,13 @@
        MALCLIENT       mclient -lmal                           mal-client 
program      `)
        SQLCLIENT       mclient -lsql                           sql-client 
program      `)
        SQLDUMP         msqldump                                sql-dump 
program        `)
-       XQUERYCLIENT    mclient -lxquery -oxml                  xquery-client 
program   `)
+       XQUERYCLIENT    mclient -lxquery -fxml                  xquery-client 
program   `)
 
     `) 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
+       MONETDB_MOD_PATH        
$MONETDB_PREFIX/lib(64);MONETDB_PREFIX/lib(64)/MonetDB
 
     The setting of all these environment variables maybe overruled
     by commandline options with the same names, e.g., "--MILCLIENT=mclient.py".
@@ -361,7 +373,7 @@
                        # approve new/modified correct output of your tests
                        run  Mapprove.py <names...>
                endloop
-               # run all Monet tests...
+               # run all MonetDB tests...
                cd $TSTSRCBASE
                run  Mtest.py -r
                # ... and check their results
@@ -373,19 +385,6 @@
        run  cvs ci
 
 
-- Mprofile.py:
-   Mprofile.py works just like Mtest.py, only it uses "prof.py" to add some
-   mprof-commands to all TST*.*mil* files before actually running the test.
-   Thus, profiling information is collected.
-   prof.py reads a list of mil commands from a .Mprofile-commands.lst file
-   (specified by Mprofile.py's "--CMDLST" parameter) and wraps all
-   occurances of these commands in a mil script in
-       pmB("<command>");
-       <command>; 
-       pmE("<command>");
-   Further, prof.py adds a "pmSummary();" at the end of the mil script.
-
-
 --
 | Stefan Manegold     | mailto:[EMAIL PROTECTED] |
 | CWI,  P.O.Box 94079 | http://www.cwi.nl/~manegold/  |

Index: Makefile.ag
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/Makefile.ag,v
retrieving revision 1.18.4.2
retrieving revision 1.18.4.3
diff -u -d -r1.18.4.2 -r1.18.4.3
--- Makefile.ag 6 Sep 2007 13:50:57 -0000       1.18.4.2
+++ Makefile.ag 18 Sep 2007 12:51:45 -0000      1.18.4.3
@@ -15,7 +15,7 @@
 # All Rights Reserved.
 
 EXTRA_DIST = Mtest.py.in Mtest.py.bat Mlog.in Mlog.bat Mfilter.py.in \
-            MkillUsers.in prof.py Mprofile-commands.lst
+            MkillUsers.in
 
 INCLUDES = ../common
 
@@ -31,8 +31,6 @@
 
 bin_Mapprove.py = bin_Mtest.py
 bin_Mapprove.py.bat = NATIVE_WIN32?bin_Mtest.py.bat
-bin_Mprofile.py = bin_Mtest.py
-bin_Mprofile.py.bat = NATIVE_WIN32?bin_Mtest.py.bat
 
 scripts_bat = {
        COND = NATIVE_WIN32
@@ -42,20 +40,15 @@
 
 scripts_py = {
        DIR = bindir
-       SOURCES = prof.py Mtest.py Mfilter.py 
+       SOURCES = Mtest.py Mfilter.py 
 }
 
-scripts_python = {
-       EXT = py
-       DIR = pkgdatadir/python
+headers_python = {
+       HEADERS = py
+       DIR = $(prefix)/$(PYTHON_LIBDIR)/MonetDB
        SOURCES = trace.py subprocess26.py
 }
 
-scripts_lst = {
-       DIR = pkgdatadir
-       SOURCES = Mprofile-commands.lst
-}
-
 scripts_sh = {
        COND = NOT_WIN32
        EXT = ""

Index: Mfilter.py.in
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/Mfilter.py.in,v
retrieving revision 1.146.4.2
retrieving revision 1.146.4.3
diff -u -d -r1.146.4.2 -r1.146.4.3
--- Mfilter.py.in       21 Aug 2007 13:25:14 -0000      1.146.4.2
+++ Mfilter.py.in       18 Sep 2007 12:51:47 -0000      1.146.4.3
@@ -190,7 +190,7 @@
 ##                    r'^\[ "(?:mapi_params|tmp_62)",\t* *[10],\t* *[10],\t* 
*0\t* *\]$',
                 # src/gdk/cast:
                     r'^\[ (?:\-|)0 \]$',
-                # src/monet/modrefcnt1 & 
tests/BugDay_2005-11-09_4.9.3/double_load_double_drop.SF-1082293.milM (on 
Itanium)
+                # src/monet/modrefcnt1 & 
tests/BugDay_2005-11-09_4.9.3/double_load_double_drop.SF-1082293 (on Itanium)
                     r"^!ERROR: DESCload: atom 'lock' unknown, in BAT 
'[0-9]+'.$",
                 # pathfinder/tests/XQuery/fn_aps:
                     r'^0.900000 0.500000 0.400000 (?:\-|)0.000000 0.400000 
0.500000 0.900000 1 *$',


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-checkins

Reply via email to