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

Modified Files:
        Mfilter.py.in MkillUsers.in Mtest.py.in README 
Log Message:
propagated changes of Wednesday Oct 03 2007 - Monday Oct 08 2007
from the MonetDB_1-20 branch to the development trunk


Index: README
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/README,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -d -r1.43 -r1.44
--- README      12 Sep 2007 09:29:48 -0000      1.43
+++ README      8 Oct 2007 09:24:37 -0000       1.44
@@ -92,13 +92,11 @@
      (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)
-     mclient connects to Mserver
+     dbinit is executed, but before (the first) mclient connects to Mserver
      (optional)                                             (TST.prologue) 
(^,`)
-  + for SQL tests, a MAL script to be used as
+  + for mclient tests, a MAL script to be used as
      prologue for mserver5, i.e., a script that is executed by mserver5 after
-     "include sql;" is called and before (the first) SQL-mclient connects
-     to mserver5
+     dbinit is executed, but before (the first) mclient connects to mserver5
      (optional)                                             
(TST.prologue5)(^,`)
   + for mclient tests, a MIL script to be used as
      epilogue for Mserver, i.e., a script that is executed by Mserver after

Index: Mtest.py.in
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/Mtest.py.in,v
retrieving revision 1.311
retrieving revision 1.312
diff -u -d -r1.311 -r1.312
--- Mtest.py.in 3 Oct 2007 14:00:03 -0000       1.311
+++ Mtest.py.in 8 Oct 2007 09:24:37 -0000       1.312
@@ -119,7 +119,8 @@
 F_WARN = 1
 F_SOCK = 2
 F_TIME = 3
-F_ERROR = 4
+F_KILL = 4
+F_ERROR = 5
 
 FAILURES = {
     F_SKIP  : "F_SKIP",
@@ -127,6 +128,7 @@
     F_WARN  : "F_WARN",
     F_SOCK  : "F_SOCK",
     F_TIME  : "F_TIME",
+    F_KILL  : "F_KILL",
     F_ERROR : "F_ERROR"
 }
 
@@ -319,6 +321,7 @@
 purple = '#aa00aa'
 stylesheet = Element('style', None, Text('''
 .error   { font-weight: bold; font-style: italic; color: red; }
+.killed  { font-weight: bold; font-style: italic; color: purple; }
 .timeout { font-weight: bold; font-style: italic; color: purple; }
 .socket  { font-weight: bold; font-style: italic; color: purple; }
 .warning { font-weight: bold; color: orange; }
@@ -537,13 +540,16 @@
         f.close()
         diffclass = 'error'
         difftext = 'Major differences'
-    if diffclass == 'error' and SockTime in (F_SOCK, F_TIME):
+    if diffclass == 'error' and SockTime in (F_SOCK, F_TIME, F_KILL):
         if SockTime == F_SOCK:
             diffclass = 'socket'
             difftext = difftext + ' (Socket)'
         if SockTime == F_TIME:
             diffclass = 'timeout'
             difftext = difftext + ' (Timeout)'
+        if SockTime == F_KILL:
+            diffclass = 'killed'
+            difftext = difftext + ' (Killed)'
     SYSTEM = DISTVER+":"
     if COMPILER:
         SYSTEM = COMPILER+", "+SYSTEM
@@ -727,6 +733,8 @@
 def AddHref (href, target, linktext, diff) :
     if   diff == F_ERROR:
         klass = 'error'
+    elif diff == F_KILL:
+        klass = 'killed'
     elif diff == F_TIME:
         klass = 'timeout'
     elif diff == F_SOCK:
@@ -777,10 +785,12 @@
         ff.write("\n<!--MajorDiffs-->\n")
         ff.close()
         e = F_ERROR
-    if e == F_ERROR and SockTime in (F_SOCK, F_TIME):
+    if e == F_ERROR and SockTime in (F_SOCK, F_TIME, F_KILL):
         e = SockTime
     if o == F_ERROR or e == F_ERROR:
         tstclass = 'error'
+    elif e == F_KILL:
+        tstclass = 'killed'
     elif e == F_TIME:
         tstclass = 'timeout'
     elif e == F_SOCK:
@@ -1685,7 +1695,7 @@
         if MkillUsers:
             os.system(MkillUsers)
 
-        killed = 0
+        killed = F_OK
         n = TST+".KILLED."
         for (x,txf) in [("out",TestOutFile),("err",TestErrFile)]:
             f = n+x
@@ -1700,7 +1710,7 @@
                 if p is not None:
                     for l in open(f):
                         p.write("! "+l)
-                        killed = 1
+                        killed = F_KILL
                     p.close()
 
         sockerr = F_OK
@@ -1734,7 +1744,7 @@
             else:
                 STDOUT.write("(Timeout!) ")
 
-        if killed:
+        if killed == F_KILL:
             if quiet:
                 STDOUT.write("\n%s : Killed!\n" % TST)
             else:
@@ -1802,8 +1812,8 @@
             diff_html.write('<!--MajorDiffs-->\n')
             diff_html.close()
             timedout = 1
-            if timeout == F_TIME:
-                # test run timed out => expect major differences!
+            if timeout == F_TIME or killed == F_KILL:
+                # test run timed out or orphan processes were killed => expect 
major differences!
                 ACCURACYout = -1
             else:
                 fs = open("%s%s.FILTERED" % (TST, STABLEout))
@@ -1841,8 +1851,8 @@
             diff_html.write('<!--MajorDiffs-->\n')
             diff_html.close()
             timedout = 1
-            if timeout == F_TIME:
-                # test run timed out => expect major differences!
+            if timeout == F_TIME or killed == F_KILL:
+                # test run timed out or orphan processes were killed => expect 
major differences!
                 ACCURACYerr = -1
             else:
                 fs = open("%s%s.FILTERED" % (TST, STABLEerr))
@@ -1864,7 +1874,7 @@
                     timedout = os.system('%s -q -I"%s" "%s" -A%d -r"%s" 
"%s%s.FILTERED" "%s.test.err.FILTERED" "%s.err.diff.html"' % (MDIFF, 
par['IGNORE'], par['CONTEXT'], ACCURACYerr, REVe, TST, STABLEerr, TST, TST))
                 ACCURACYerr = ACCURACYerr - 1
 
-            FailedOut, FailedErr, elem = AddTstToHtmlIndex(env, TST, 
STABLEout, STABLEerr, EXT, max(sockerr, timeout))
+            FailedOut, FailedErr, elem = AddTstToHtmlIndex(env, TST, 
STABLEout, STABLEerr, EXT, max(sockerr, timeout, killed))
 
     return TX,FailedOut,FailedErr,elem
 ### RunTest(env, TST, BusyPorts) #
@@ -2149,18 +2159,13 @@
         if SERVER == "SQL":
             lang="sql"
             if par['M5']:
-                source = ""
-                if PROLOGUE:
-                    source = ' language.source("%s");' % 
(os.path.join(env['TSTTRGDIR'],PROLOGUE[1:]))
-                Srvr = "%s --dbinit='%s include sql;%s'" % (Srvr, DBINIT, 
source)
+                Srvr = '%s --set mal_listing=0 --dbinit="%s include sql;"' % 
(Srvr, DBINIT)
             else:
                 Srvr = '%s --dbinit="%s module(sql_server);"' % (Srvr, DBINIT)
         if SERVER == "XQUERY":
             lang="xquery"
             Srvr = '%s --dbinit="%s module(pathfinder);"' % (Srvr, DBINIT)
-        if SERVER != "SQL"  or  par['M4']:
-            Srvr = Srvr+PROLOGUE
-        #-background"
+        Srvr = Srvr+PROLOGUE
         if os.name == "nt":
             Srvr = Srvr+' & echo.& '
         else:
@@ -3400,7 +3405,7 @@
     if THISFILE == "Mtest.py":
         fn = os.path.join(env['TSTTRGBASE'],TSTPREF,"times.")
         fl = open(fn+"lst","w")
-        Failure = [0,0,0,0,0,0]
+        Failure = [0,0,0,0,0,0,0]
         for TSTDIR,TST,tt,ms,FtOut,FtErr in TIMES:
             fl.write(url(os.path.join(TSTDIR,TST))+":\t"+tt+
                         "\t"+FAILURES[FtOut]+
@@ -3499,12 +3504,15 @@
         if Failure[F_WARN]:
             how = "slightly"
             what += "  %3d out of %3d tests produced %s different output\n" % 
(Failure[F_WARN],num_tests,how)
+        if Failure[F_SOCK]:
+            how = "SIGNIFICANTLY"
+            what += "  %3d out of %3d tests did not properly release 
socket(s)\n" % (Failure[F_SOCK],num_tests)
         if Failure[F_TIME]:
             how = "SIGNIFICANTLY"
             what += "  %3d out of %3d tests ran into timeout\n" % 
(Failure[F_TIME],num_tests)
-        if Failure[F_SOCK]:
+        if Failure[F_KILL]:
             how = "SIGNIFICANTLY"
-            what += "  %3d out of %3d tests did not properly release 
socket(s)\n" % (Failure[F_SOCK],num_tests)
+            what += "  %3d out of %3d tests had orphan processes killed\n" % 
(Failure[F_KILL],num_tests)
         if Failure[F_ERROR]:
             how = "SIGNIFICANTLY"
             what += "  %3d out of %3d tests produced %s different output\n" % 
(Failure[F_ERROR],num_tests,how)

Index: MkillUsers.in
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/MkillUsers.in,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -d -r1.29 -r1.30
--- MkillUsers.in       8 Sep 2007 20:19:13 -0000       1.29
+++ MkillUsers.in       8 Oct 2007 09:24:37 -0000       1.30
@@ -50,10 +50,10 @@
 
 cpids=""
 if [ "$PARENT" ] ; then
-  cpids="`ps -ef | egrep '^ *[a-zA-Z0-9_]+ +[0-9]+ +'"$PARENT"' ' | egrep -v 
'^ *[a-zA-Z0-9_]+ +'"$CHILD"' +[0-9]+ ' | sort -k 4.1 | awk '{printf  "%s " , 
$2}' | perl -pe 's|  *$||'`"
+  cpids="`ps -ef | egrep '^ *[a-zA-Z0-9_]+ +[0-9]+ +'"$PARENT"' ' | egrep -v 
'^ *[a-zA-Z0-9_]+ +'"$CHILD"' +[0-9]+ | '"$0"' ' | sort -k 4.1 | awk '{printf  
"%s " , $2}' | perl -pe 's|  *$||'`"
   if [ "$cpids" ] ; then
 #      KIDS="`echo "($cpids)" | perl -pe 's/ /|/g'`"
-#      gpids="`ps -ef | egrep '^ *[a-zA-Z0-9_]+ +[0-9]+ +'"$KIDS"' ' | egrep 
-v '^ *[a-zA-Z0-9_]+ +'"$CHILD"' +[0-9]+ ' | sort -k 4.1 | awk '{printf  "%s " 
, $2}' | perl -pe 's|  *$||'`"
+#      gpids="`ps -ef | egrep '^ *[a-zA-Z0-9_]+ +[0-9]+ +'"$KIDS"' ' | egrep 
-v '^ *[a-zA-Z0-9_]+ +'"$CHILD"' +[0-9]+ | '"$0"' ' | sort -k 4.1 | awk 
'{printf  "%s " , $2}' | perl -pe 's|  *$||'`"
 #      if [ "$gpids" ] ; then
 #              cpids="$cpids $gpids"
 #      fi

Index: Mfilter.py.in
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/testing/Mfilter.py.in,v
retrieving revision 1.150
retrieving revision 1.151
diff -u -d -r1.150 -r1.151
--- Mfilter.py.in       12 Sep 2007 08:37:08 -0000      1.150
+++ Mfilter.py.in       8 Oct 2007 09:24:36 -0000       1.151
@@ -228,7 +228,8 @@
 norm_in  = re.compile('(?:'+')|(?:'.join([
     r'^(ERROR = !| *!|)(syntax|parse|parse error: syntax)( error, )(unexpected 
.* on line |unexpected .* in: )?(.*)\n',                         # 01: 5
     r'^(!ERROR: .*: [0-9]+ times inserted nil due to errors at tuples 
)([0-9]+)(\..*)\n',                                                       # 02: 
3
-    r'^(ERROR =|       )( !ERROR: | !SQLException:assert:| !SQLException:sql: 
| !SQLException:| !MALException:)([^:]+)(: *)([^ ].*)\n',         # 03: 5
+    r'^( *!ERROR: shred: cannot stat .*: )(No such file or directory|Error 
0)\n',                                                               # 03a: 2
+    r'^(ERROR =|       )( !ERROR: | !SQLException:assert:| !SQLException:sql: 
| !SQLException:| !MALException:)([^:]+)(: *)([^ ].*)\n',         # 03b: 5
     r'^(Connection warning:.*\()(mserver_mal|mserver_sql)(\).*)\n',            
                                                                 # 04: 3
     r'^(ERROR: I/O warning : failed to load external entity ")(.*)(".*)\n',    
                                                                 # 05: 3
     r'^(ERROR: shred:mainSHREDDER: xmlCreateURLParserCtxt\(")(.*)("\) 
failed.*)\n',                                                             # 06: 
3
@@ -248,6 +249,7 @@
     r'^(QUERY = import rpc-module namespace xrpc = 
"http://www.monetdb.nl/basicfunctions"; at 
")(/.*)(/tests/XRpc/basic_queries/Tests/basicfunctions.xq";)\n', # 20: 3
     r"^(QUERY = connect)( to|)( ')(localhost)(' port )([0-9]+)( .*)\n",        
                                                                 # 21: 7
     r"^([Uu]sage: )(/.*/|)(lt-|)([A-Za-z0-9_]+)([ \t].*)\n",                   
                                                                 # 22: 5
+    r'^(.*: )(illegal|invalid)( option -- .*)\n',                              
                                                                 # 23: 3
     r'^(.*: at )(\([0-9]+,[0-9]+\-[0-9]+,[0-9]+\))(: .*)\n',                   
                                                                 # 90: 3
     r'^(fatal error|ERROR)(: err:FORG0005, fn:exactly-one called with a 
sequence containing zero or more than one item..*)()\n',                # 99: 3
 ])+')',  re.MULTILINE)
@@ -256,7 +258,8 @@
 #   None, 'syntax/parse', None, 'unexpected ... on line/in: ', None,           
                         # 01: 5
     None, 'syntax/parse', None, '', '',                                        
                         # 01: 5
     None, '...', None,                                                         
                         # 02: 3
-    None, ' !ERROR', '', ': ', None,                                           
                         # 03: 5
+    None, 'No such file or directory',                                         
                         # 03a: 2
+    None, ' !ERROR', '', ': ', None,                                           
                         # 03b: 5
     None, 'mserver_sql', None,                                                 
                         # 04: 3
     None, '...', None,                                                         
                         # 05: 3
     None, '...', None,                                                         
                         # 06: 3
@@ -276,6 +279,7 @@
     None, '$TSTSRCBASE', None,                                                 
                         # 20: 3
     None, None, None, '<HOST>', None, '<MAPIPORT>', None,                      
                         # 21: 7
     None, '', '', None, None,                                                  
                         # 22: 5
+    None, 'invalid', None,                                                     
                         # 23: 3
     None, '...', None,                                                         
                         # 90: 3
     '=ERROR', None, '\n#',                                                     
                         # 99: 3
 ##    '=ERROR', None, '''


-------------------------------------------------------------------------
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