Esempio n. 1
0
  def test04StressBulk( self ):
    """ stress test bulk """

    db = RequestDB()

    for i in range( self.stressRequests ):
      request = Request( { "RequestName": "test-%d" % i } )
      op = Operation( { "Type": "RemoveReplica", "TargetSE": "CERN-USER" } )
      op += File( { "LFN": "/lhcb/user/c/cibak/foo" } )
      request += op
      put = db.putRequest( request )
      self.assertEqual( put["OK"], True, "put failed" )

    loops = self.stressRequests // self.bulkRequest + ( 1 if ( self.stressRequests % self.bulkRequest ) else 0 )
    totalSuccessful = 0

    startTime = time.time()

    for i in range( loops ):
      get = db.getRequests( self.bulkRequest, True )
      if "Message" in get:
        print get["Message"]
      self.assertEqual( get["OK"], True, "get failed" )

      totalSuccessful += len( get["Value"] )

    endTime = time.time()

    print "getRequests duration %s " % ( endTime - startTime )

    self.assertEqual( totalSuccessful, self.stressRequests, "Did not retrieve all the requests: %s instead of %s" % ( totalSuccessful, self.stressRequests ) )

    for i in range( self.stressRequests ):
      delete = db.deleteRequest( "test-%s" % i )
      self.assertEqual( delete["OK"], True, "delete failed" )