[CalendarServer-changes] [1079] CalDAVTester/trunk

source_changes at macosforge.org source_changes at macosforge.org
Fri Jan 19 17:11:03 PST 2007


Revision: 1079
          http://trac.macosforge.org/projects/calendarserver/changeset/1079
Author:   cdaboo at apple.com
Date:     2007-01-19 17:11:02 -0800 (Fri, 19 Jan 2007)

Log Message:
-----------
New variant of performance tool and data that will be used for automated performance monitoring.

Modified Paths:
--------------
    CalDAVTester/trunk/performer.py

Added Paths:
-----------
    CalDAVTester/trunk/buildperformance/
    CalDAVTester/trunk/buildperformance/get/
    CalDAVTester/trunk/buildperformance/get/get-end.xml
    CalDAVTester/trunk/buildperformance/get/get-large.xml
    CalDAVTester/trunk/buildperformance/get/get-small.xml
    CalDAVTester/trunk/buildperformance/get/get-start.xml
    CalDAVTester/trunk/buildperformance/put/
    CalDAVTester/trunk/buildperformance/put/put-end.xml
    CalDAVTester/trunk/buildperformance/put/put-large.xml
    CalDAVTester/trunk/buildperformance/put/put-small.xml
    CalDAVTester/trunk/buildperformer.py
    CalDAVTester/trunk/scripts/buildperformance/
    CalDAVTester/trunk/scripts/buildperformance/get-large.xml
    CalDAVTester/trunk/scripts/buildperformance/get-small.xml
    CalDAVTester/trunk/scripts/buildperformance/perfinfo.dtd
    CalDAVTester/trunk/scripts/buildperformance/put-large.xml
    CalDAVTester/trunk/scripts/buildperformance/put-small.xml

Added: CalDAVTester/trunk/buildperformance/get/get-end.xml
===================================================================
--- CalDAVTester/trunk/buildperformance/get/get-end.xml	                        (rev 0)
+++ CalDAVTester/trunk/buildperformance/get/get-end.xml	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+
+<!DOCTYPE caldavtest SYSTEM "caldavtest.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<caldavtest ignore-all='yes'>
+	<description>Performance check GET</description>
+
+	<start>
+		<request>
+			<method>DELETE</method>
+			<ruri>1.ics</ruri>
+		</request>
+		<request>
+			<method>DELETE</method>
+			<ruri>2.ics</ruri>
+		</request>
+		<request>
+			<method>DELETE</method>
+			<ruri>3.ics</ruri>
+		</request>
+	</start>
+	
+	<test-suite/>
+	
+	<end/>
+	
+</caldavtest>

Added: CalDAVTester/trunk/buildperformance/get/get-large.xml
===================================================================
--- CalDAVTester/trunk/buildperformance/get/get-large.xml	                        (rev 0)
+++ CalDAVTester/trunk/buildperformance/get/get-large.xml	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,43 @@
+<?xml version="1.0"?>
+
+<!DOCTYPE caldavtest SYSTEM "caldavtest.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<caldavtest ignore-all='yes'>
+	<description>Performance check GET</description>
+
+	<start/>
+	
+	<test-suite name='Plain GET - calendar collection' ignore='no'>
+		<test name='1' count='1' stats='yes'>
+			<description>GET on calendar collection</description>
+			<request>
+				<method>GET</method>
+				<ruri>3.ics</ruri>
+				<verify>
+					<callback>statusCode</callback>
+				</verify>
+			</request>
+		</test>
+	</test-suite>
+	
+	<end/>
+	
+</caldavtest>

Added: CalDAVTester/trunk/buildperformance/get/get-small.xml
===================================================================
--- CalDAVTester/trunk/buildperformance/get/get-small.xml	                        (rev 0)
+++ CalDAVTester/trunk/buildperformance/get/get-small.xml	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,43 @@
+<?xml version="1.0"?>
+
+<!DOCTYPE caldavtest SYSTEM "caldavtest.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<caldavtest ignore-all='yes'>
+	<description>Performance check GET</description>
+
+	<start/>
+	
+	<test-suite name='Plain GET - calendar collection' ignore='no'>
+		<test name='1' count='1' stats='yes'>
+			<description>GET on calendar collection</description>
+			<request>
+				<method>GET</method>
+				<ruri>1.ics</ruri>
+				<verify>
+					<callback>statusCode</callback>
+				</verify>
+			</request>
+		</test>
+	</test-suite>
+	
+	<end/>
+	
+</caldavtest>

Added: CalDAVTester/trunk/buildperformance/get/get-start.xml
===================================================================
--- CalDAVTester/trunk/buildperformance/get/get-start.xml	                        (rev 0)
+++ CalDAVTester/trunk/buildperformance/get/get-start.xml	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+
+<!DOCTYPE caldavtest SYSTEM "caldavtest.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<caldavtest ignore-all='yes'>
+	<description>Performance check GET</description>
+
+	<start>
+		<request end-delete='no'>
+			<method>PUT</method>
+			<ruri>1.ics</ruri>
+			<data>
+				<content-type>text/calendar; charset=utf-8</content-type>
+				<filepath>Resource/performance/put/1.ics</filepath>
+			</data>
+		</request>
+		<request end-delete='no'>
+			<method>PUT</method>
+			<ruri>2.ics</ruri>
+			<data>
+				<content-type>text/calendar; charset=utf-8</content-type>
+				<filepath>Resource/performance/put/2.ics</filepath>
+			</data>
+		</request>
+		<request end-delete='no'>
+			<method>PUT</method>
+			<ruri>3.ics</ruri>
+			<data>
+				<content-type>text/calendar; charset=utf-8</content-type>
+				<filepath>Resource/performance/put/3.ics</filepath>
+			</data>
+		</request>
+	</start>
+	
+	<test-suite/>
+	
+	<end/>
+	
+</caldavtest>

Added: CalDAVTester/trunk/buildperformance/put/put-end.xml
===================================================================
--- CalDAVTester/trunk/buildperformance/put/put-end.xml	                        (rev 0)
+++ CalDAVTester/trunk/buildperformance/put/put-end.xml	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+
+<!DOCTYPE caldavtest SYSTEM "caldavtest.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<caldavtest ignore-all='yes'>
+	<description>Performance check GET</description>
+
+	<start>
+		<request>
+			<method>DELETE</method>
+			<ruri>3.ics</ruri>
+		</request>
+	</start>
+	
+	<test-suite/>
+	
+	<end/>
+	
+</caldavtest>

Added: CalDAVTester/trunk/buildperformance/put/put-large.xml
===================================================================
--- CalDAVTester/trunk/buildperformance/put/put-large.xml	                        (rev 0)
+++ CalDAVTester/trunk/buildperformance/put/put-large.xml	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+
+<!DOCTYPE caldavtest SYSTEM "caldavtest.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<caldavtest ignore-all='yes'>
+	<description>Test PUT method in CalDAV with various recurrences to ensure
+	proper behaviour of server indexing</description>
+
+	<start/>
+	
+	<test-suite name='Plain PUT - no recurrence' ignore='no'>
+		<test name='1' count='1' stats='yes'>
+			<description>PUT to calendar collection</description>
+			<request>
+				<method>PUT</method>
+				<ruri>3.ics</ruri>
+				<data>
+					<content-type>text/calendar; charset=utf-8</content-type>
+					<filepath>Resource/performance/put/3.ics</filepath>
+				</data>
+				<verify>
+					<callback>statusCode</callback>
+					<arg>
+						<name>status</name>
+						<value>2xx</value>
+					</arg>
+				</verify>
+			</request>
+		</test>
+	</test-suite>
+	
+	
+	<end/>
+	
+</caldavtest>

Added: CalDAVTester/trunk/buildperformance/put/put-small.xml
===================================================================
--- CalDAVTester/trunk/buildperformance/put/put-small.xml	                        (rev 0)
+++ CalDAVTester/trunk/buildperformance/put/put-small.xml	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+
+<!DOCTYPE caldavtest SYSTEM "caldavtest.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<caldavtest ignore-all='yes'>
+	<description>Test PUT method in CalDAV with various recurrences to ensure
+	proper behaviour of server indexing</description>
+
+	<start/>
+	
+	<test-suite name='Plain PUT - no recurrence' ignore='no'>
+		<test name='1' count='10' stats='yes'>
+			<description>PUT to calendar collection</description>
+			<request>
+				<method>PUT</method>
+				<ruri>1.ics</ruri>
+				<data>
+					<content-type>text/calendar; charset=utf-8</content-type>
+					<filepath>Resource/performance/put/1.ics</filepath>
+				</data>
+				<verify>
+					<callback>statusCode</callback>
+					<arg>
+						<name>status</name>
+						<value>2xx</value>
+					</arg>
+				</verify>
+			</request>
+		</test>
+	</test-suite>
+	
+	
+	<end/>
+	
+</caldavtest>

Added: CalDAVTester/trunk/buildperformer.py
===================================================================
--- CalDAVTester/trunk/buildperformer.py	                        (rev 0)
+++ CalDAVTester/trunk/buildperformer.py	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,21 @@
+import time
+import performer
+
+if __name__ == "__main__":
+
+    results = []
+    performs = (
+        "scripts/buildperformance/get-small.xml",
+        "scripts/buildperformance/get-large.xml",
+        "scripts/buildperformance/put-small.xml",
+        "scripts/buildperformance/put-large.xml",
+    )
+    
+    for item in performs:
+        pinfo, result = performer.runIt(item)
+        results.append((item[item.rfind("/")+1:item.rfind(".")], result[0][0], result[0][1], result[0][2]))
+  
+    print time.ctime(),
+    for result in results:
+        print "\t%s\t%.3f\t%.3f\t%.3f" % (result[0], result[1], result[2], result[3],),
+    print ""

Modified: CalDAVTester/trunk/performer.py
===================================================================
--- CalDAVTester/trunk/performer.py	2007-01-20 00:45:26 UTC (rev 1078)
+++ CalDAVTester/trunk/performer.py	2007-01-20 01:11:02 UTC (rev 1079)
@@ -35,77 +35,73 @@
 EX_INVALID_CONFIG_FILE = "Invalid Config File"
 START_DELAY = 3.0
 
-if __name__ == "__main__":
-    
-    def readXML():
+def readXML(perfinfoname):
 
-        perfinfoname = "scripts/performance/perfinfo.xml"
-        if len(sys.argv) > 1:
-            perfinfoname = sys.argv[1]
-            
-        # Open and parse the server config file
-        fd = open(perfinfoname, "r")
-        doc = xml.dom.minidom.parse( fd )
-        fd.close()
+    # Open and parse the server config file
+    fd = open(perfinfoname, "r")
+    doc = xml.dom.minidom.parse( fd )
+    fd.close()
 
-        # Verify that top-level element is correct
-        perfinfo_node = doc._get_documentElement()
-        if perfinfo_node._get_localName() != src.xmlDefs.ELEMENT_PERFINFO:
-            raise EX_INVALID_CONFIG_FILE
-        if not perfinfo_node.hasChildNodes():
-            raise EX_INVALID_CONFIG_FILE
-        pinfo = perfinfo()
-        pinfo.parseXML(perfinfo_node)
-        return pinfo
-    
-    def subs(str, i):
-        if "%" in str:
-            return str % i
-        else:
-            return str
+    # Verify that top-level element is correct
+    perfinfo_node = doc._get_documentElement()
+    if perfinfo_node._get_localName() != src.xmlDefs.ELEMENT_PERFINFO:
+        raise EX_INVALID_CONFIG_FILE
+    if not perfinfo_node.hasChildNodes():
+        raise EX_INVALID_CONFIG_FILE
+    pinfo = perfinfo()
+    pinfo.parseXML(perfinfo_node)
+    return pinfo
 
-    pinfo = readXML()
+def subs(str, i):
+    if "%" in str:
+        return str % i
+    else:
+        return str
 
-    def doScript(script):
-        # Create argument list that varies for each threaded client. Basically use a separate
-        # server account for each client.
-        def runner(*args):
-            """
-            Test runner method. 
-            @param *args:
-            """
-            
+def doScript(pinfo, script):
+    # Create argument list that varies for each threaded client. Basically use a separate
+    # server account for each client.
+    def runner(*args):
+        """
+        Test runner method. 
+        @param *args:
+        """
+        
+        if pinfo.logging:
+            print "Start: %s" % (args[0]["moresubs"]["$userid1:"],)
+        try:
+            mgr = manager(level=manager.LOG_NONE)
+            result, timing = mgr.runWithOptions(*args[1:], **args[0])
             if pinfo.logging:
-                print "Start: %s" % (args[0]["moresubs"]["$userid1:"],)
-            try:
-                mgr = manager(level=manager.LOG_NONE)
-                result, timing = mgr.runWithOptions(*args[1:], **args[0])
-                if pinfo.logging:
-                    print "Done: %s" % (args[0]["moresubs"]["$userid1:"],)
-            except Exception, e:
-                print "Thread run exception: %s" % (str(e),)
-    
-        args = []
-        for i in range(1, pinfo.clients + 1):
-            moresubs = {}
-            for key, value in pinfo.subsdict.iteritems():
-                moresubs[key] = subs(value, i)
-            args.append(({"moresubs": moresubs}, subs(pinfo.serverinfo, i), "", [subs(script, i)]))
-        for arg in args:
-            runner(*arg)
+                print "Done: %s" % (args[0]["moresubs"]["$userid1:"],)
+        except Exception, e:
+            print "Thread run exception: %s" % (str(e),)
 
-    def doStart():
-        if pinfo.startscript:
-            print "Runnning start script %s" % (pinfo.startscript,)
-            doScript(pinfo.startscript)
+    args = []
+    for i in range(1, pinfo.clients + 1):
+        moresubs = {}
+        for key, value in pinfo.subsdict.iteritems():
+            moresubs[key] = subs(value, i)
+        args.append(({"moresubs": moresubs}, subs(pinfo.serverinfo, i), "", [subs(script, i)]))
+    for arg in args:
+        runner(*arg)
 
-    def doEnd():
-        if pinfo.endscript:
-            print "Runnning end script %s" % (pinfo.endscript,)
-            doScript(pinfo.endscript)
+def doStart(pinfo):
+    if pinfo.startscript:
+        print "Runnning start script %s" % (pinfo.startscript,)
+        doScript(pinfo, pinfo.startscript)
 
-    doStart()
+def doEnd(pinfo):
+    if pinfo.endscript:
+        print "Runnning end script %s" % (pinfo.endscript,)
+        doScript(pinfo, pinfo.endscript)
 
+def runIt(script):
+
+    pinfo = readXML(script)
+
+    doStart(pinfo)
+
     # Cummulative results
     allresults = []
     
@@ -189,11 +185,23 @@
         result[2] /= test[2]
         
         allresults.append(result)
+
+    print "|"
     
-    doEnd()
+    doEnd(pinfo)
 
+    return pinfo, allresults
+
+if __name__ == "__main__":
+
+    perfinfoname = "scripts/performance/perfinfo.xml"
+    if len(sys.argv) > 1:
+        perfinfoname = sys.argv[1]
+
+    pinfo, allresults = runIt(perfinfoname)
+
     # Print out averaged results.
     print "\n\nClients\tSpread\tReqs/sec\tAverage\t\tStd. Dev.\tTotal"
-    print "==============================================================="
+    print "====================================================================="
     for i in range(len(pinfo.tests)):
         print "%.0f\t%.0f\t%.3f\t\t%.3f\t\t%.3f\t\t%.3f" % (pinfo.tests[i][0], pinfo.tests[i][1], pinfo.tests[i][0]/pinfo.tests[i][1], allresults[i][0], allresults[i][1], allresults[i][2],)

Added: CalDAVTester/trunk/scripts/buildperformance/get-large.xml
===================================================================
--- CalDAVTester/trunk/scripts/buildperformance/get-large.xml	                        (rev 0)
+++ CalDAVTester/trunk/scripts/buildperformance/get-large.xml	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,64 @@
+<?xml version="1.0" standalone="no"?>
+
+<!DOCTYPE perfinfo SYSTEM "perfinfo.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<perfinfo>
+	<clients>20</clients>
+	<threads enable="yes"/>
+	<logging enable="no"/>
+	<tests>
+		<test>
+			<spread>1.0</spread>
+			<runs>5</runs>
+		</test>
+	</tests>
+	<serverinfo>scripts/server/serverinfo.xml</serverinfo>
+	<start>buildperformance/get/get-start.xml</start>
+	<testinfo>buildperformance/get/get-large.xml</testinfo>
+	<end>buildperformance/get/get-end.xml</end>
+	<substitutions>
+		<!-- first user id -->
+		<substitution>
+			<key>$userid1:</key>
+			<value>user%02d</value>
+		</substitution>
+		<!-- password for first user -->
+		<substitution>
+			<key>$pswd1:</key>
+			<value>user%02d</value>
+		</substitution>
+		<!-- relative path to first user principal resource-->
+		<substitution>
+			<key>$principal:</key>
+			<value>/principals/users/user%02d/</value>
+		</substitution>
+		<!-- relative path to first user calendar home-->
+		<substitution>
+			<key>$pathprefix:</key>
+			<value>/calendars/users/user%02d</value>
+		</substitution>
+		<!-- relative path to first user calendar home-->
+		<substitution>
+			<key>$calendarpath1:</key>
+			<value>/calendars/users/user%02d/calendar</value>
+		</substitution>
+	</substitutions>
+</perfinfo>

Added: CalDAVTester/trunk/scripts/buildperformance/get-small.xml
===================================================================
--- CalDAVTester/trunk/scripts/buildperformance/get-small.xml	                        (rev 0)
+++ CalDAVTester/trunk/scripts/buildperformance/get-small.xml	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,64 @@
+<?xml version="1.0" standalone="no"?>
+
+<!DOCTYPE perfinfo SYSTEM "perfinfo.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<perfinfo>
+	<clients>20</clients>
+	<threads enable="yes"/>
+	<logging enable="no"/>
+	<tests>
+		<test>
+			<spread>1.0</spread>
+			<runs>5</runs>
+		</test>
+	</tests>
+	<serverinfo>scripts/server/serverinfo.xml</serverinfo>
+	<start>buildperformance/get/get-start.xml</start>
+	<testinfo>buildperformance/get/get-small.xml</testinfo>
+	<end>buildperformance/get/get-end.xml</end>
+	<substitutions>
+		<!-- first user id -->
+		<substitution>
+			<key>$userid1:</key>
+			<value>user%02d</value>
+		</substitution>
+		<!-- password for first user -->
+		<substitution>
+			<key>$pswd1:</key>
+			<value>user%02d</value>
+		</substitution>
+		<!-- relative path to first user principal resource-->
+		<substitution>
+			<key>$principal:</key>
+			<value>/principals/users/user%02d/</value>
+		</substitution>
+		<!-- relative path to first user calendar home-->
+		<substitution>
+			<key>$pathprefix:</key>
+			<value>/calendars/users/user%02d</value>
+		</substitution>
+		<!-- relative path to first user calendar home-->
+		<substitution>
+			<key>$calendarpath1:</key>
+			<value>/calendars/users/user%02d/calendar</value>
+		</substitution>
+	</substitutions>
+</perfinfo>

Added: CalDAVTester/trunk/scripts/buildperformance/perfinfo.dtd
===================================================================
--- CalDAVTester/trunk/scripts/buildperformance/perfinfo.dtd	                        (rev 0)
+++ CalDAVTester/trunk/scripts/buildperformance/perfinfo.dtd	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,46 @@
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<!ELEMENT perfinfo (clients, threads, logging, tests, serverinfo, start, testinfo, end, substitutions)? >
+
+	<!ELEMENT clients		(#PCDATA)>
+
+	<!ELEMENT threads		EMPTY>
+		<!ATTLIST threads	enable (yes|no) "no">
+
+	<!ELEMENT logging		EMPTY>
+		<!ATTLIST logging	enable (yes|no) "no">
+
+	<!ELEMENT tests			(test*)>
+		<!ELEMENT test			(clients?, spread, runs)>
+			<!ELEMENT spread		(#PCDATA)>
+			<!ELEMENT runs			(#PCDATA)>
+
+	<!ELEMENT serverinfo	(#PCDATA)>
+
+	<!ELEMENT start	        (#PCDATA)>
+
+	<!ELEMENT testinfo	    (#PCDATA)>
+
+	<!ELEMENT end    	    (#PCDATA)>
+
+	<!ELEMENT substitutions	(substitution*)>
+		<!ELEMENT substitution	(key, value)>
+			<!ELEMENT key			(#PCDATA)>
+			<!ELEMENT value			(#PCDATA)>
+	
\ No newline at end of file

Added: CalDAVTester/trunk/scripts/buildperformance/put-large.xml
===================================================================
--- CalDAVTester/trunk/scripts/buildperformance/put-large.xml	                        (rev 0)
+++ CalDAVTester/trunk/scripts/buildperformance/put-large.xml	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,64 @@
+<?xml version="1.0" standalone="no"?>
+
+<!DOCTYPE perfinfo SYSTEM "perfinfo.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<perfinfo>
+	<clients>20</clients>
+	<threads enable="yes"/>
+	<logging enable="no"/>
+	<tests>
+		<test>
+			<spread>1.0</spread>
+			<runs>5</runs>
+		</test>
+	</tests>
+	<serverinfo>scripts/server/serverinfo.xml</serverinfo>
+	<start/>
+	<testinfo>buildperformance/put/put-large.xml</testinfo>
+	<end>buildperformance/put/put-end.xml</end>
+	<substitutions>
+		<!-- first user id -->
+		<substitution>
+			<key>$userid1:</key>
+			<value>user%02d</value>
+		</substitution>
+		<!-- password for first user -->
+		<substitution>
+			<key>$pswd1:</key>
+			<value>user%02d</value>
+		</substitution>
+		<!-- relative path to first user principal resource-->
+		<substitution>
+			<key>$principal:</key>
+			<value>/principals/users/user%02d/</value>
+		</substitution>
+		<!-- relative path to first user calendar home-->
+		<substitution>
+			<key>$pathprefix:</key>
+			<value>/calendars/users/user%02d</value>
+		</substitution>
+		<!-- relative path to first user calendar home-->
+		<substitution>
+			<key>$calendarpath1:</key>
+			<value>/calendars/users/user%02d/calendar</value>
+		</substitution>
+	</substitutions>
+</perfinfo>

Added: CalDAVTester/trunk/scripts/buildperformance/put-small.xml
===================================================================
--- CalDAVTester/trunk/scripts/buildperformance/put-small.xml	                        (rev 0)
+++ CalDAVTester/trunk/scripts/buildperformance/put-small.xml	2007-01-20 01:11:02 UTC (rev 1079)
@@ -0,0 +1,64 @@
+<?xml version="1.0" standalone="no"?>
+
+<!DOCTYPE perfinfo SYSTEM "perfinfo.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<perfinfo>
+	<clients>20</clients>
+	<threads enable="yes"/>
+	<logging enable="no"/>
+	<tests>
+		<test>
+			<spread>1.0</spread>
+			<runs>5</runs>
+		</test>
+	</tests>
+	<serverinfo>scripts/server/serverinfo.xml</serverinfo>
+	<start/>
+	<testinfo>buildperformance/put/put-small.xml</testinfo>
+	<end>buildperformance/put/put-end.xml</end>
+	<substitutions>
+		<!-- first user id -->
+		<substitution>
+			<key>$userid1:</key>
+			<value>user%02d</value>
+		</substitution>
+		<!-- password for first user -->
+		<substitution>
+			<key>$pswd1:</key>
+			<value>user%02d</value>
+		</substitution>
+		<!-- relative path to first user principal resource-->
+		<substitution>
+			<key>$principal:</key>
+			<value>/principals/users/user%02d/</value>
+		</substitution>
+		<!-- relative path to first user calendar home-->
+		<substitution>
+			<key>$pathprefix:</key>
+			<value>/calendars/users/user%02d</value>
+		</substitution>
+		<!-- relative path to first user calendar home-->
+		<substitution>
+			<key>$calendarpath1:</key>
+			<value>/calendars/users/user%02d/calendar</value>
+		</substitution>
+	</substitutions>
+</perfinfo>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20070119/9e39d0b1/attachment.html


More information about the calendarserver-changes mailing list