merging revision 73932 from trunk:
http://bugs.python.org/issue6460
Need to be careful with thread switching when testing the xmlrpc server.  The server thread may not have updated stats when the client thread tests them.
diff --git a/Lib/test/test_xmlrpc.py b/Lib/test/test_xmlrpc.py
index 100a93c..8461628 100644
--- a/Lib/test/test_xmlrpc.py
+++ b/Lib/test/test_xmlrpc.py
@@ -507,11 +507,17 @@
 
     def test_two(self):
         p = xmlrpclib.ServerProxy(URL)
+        #do three requests.
         self.assertEqual(p.pow(6,8), 6**8)
         self.assertEqual(p.pow(6,8), 6**8)
+        self.assertEqual(p.pow(6,8), 6**8)
+
+        #they should have all been handled by a single request handler
         self.assertEqual(len(self.RequestHandler.myRequests), 1)
-        #we may or may not catch the final "append" with the empty line
-        self.assertTrue(len(self.RequestHandler.myRequests[-1]) >= 2)
+
+        #check that we did at least two (the third may be pending append
+        #due to thread scheduling)
+        self.assertGreaterEqual(len(self.RequestHandler.myRequests[-1]), 2)
 
 #A test case that verifies that gzip encoding works in both directions
 #(for a request and the response)