Warning: Can't synchronize with repository "(default)" (/home/git/ome.git does not appear to be a Git repository.). Look in the Trac log for more information.
Notice: In order to edit this ticket you need to be either: a Product Owner, The owner or the reporter of the ticket, or, in case of a Task not yet assigned, a team_member"

Task #5780 (closed)

Opened 13 years ago

Closed 8 years ago

OmeroPy.gateway needs performance tests

Reported by: atarkowska Owned by: cneves
Priority: major Milestone: Testing2
Component: OmeroPy Version: OMERO-5.2.0
Keywords: n.a. Cc: jamoore, cxallan
Resources: n.a. Referenced By: n.a.
References: n.a. Remaining Time: 0.0d
Sprint: n.a.

Description (last modified by wmoore)

Test speed of FileAnnotation? retrieval (getObjects("FileAnnotation?") vv metadataService.

May also need other tests for similar calls. Will put these all in a single file.

Change History (9)

comment:1 Changed 13 years ago by wmoore

  • Status changed from new to accepted

comment:2 Changed 13 years ago by wmoore

  • Description modified (diff)

comment:3 Changed 13 years ago by Will Moore <will@…>

(In [8369bc74e71948caff6029b16a0fc0ed135ad43a/ome.git] on branch develop) Updating doc string for Blitz getObjects(). See #5780

comment:4 Changed 13 years ago by Will Moore <will@…>

  • Remaining Time set to 0
  • Resolution set to fixed
  • Status changed from accepted to closed

(In [cad1cf8813a25b43aaa6200c5c316a10e3f3da50/ome.git] on branch develop) gatewaytest to check performance of getObjects() vv listFileAnnotations. Closes #5780

comment:5 Changed 12 years ago by cneves

  • Milestone changed from OMERO-Beta4.3 to OMERO-4.4.x
  • Priority changed from critical to major
  • Resolution fixed deleted
  • Sprint 2011-06-16 (14) deleted
  • Status changed from closed to reopened

The performance tests are a bit confusing because as they are coded they don't consistently pass:

(a)        self.assertTrue(t1 < t2, "Blitz listFileAnnotations() should be faster than getObjects('FileAnnotation')")
(b)        self.assertTrue(t3 < t2, "Blitz getObjects('FileAnnotation') should be faster without fa.getFileName()")
(c)        self.assertTrue(t3 < t1, "Blitz getting unloaded 'FileAnnotation' should be faster than listFileAnnotations()")

(a) is always false, (b) and (c) are sometimes false too. The time resolution here for the 250 objects tested is a bit narrow:

getObjects, lazy loading file names for 250 files = 0.338165998459 secs
getObjects, NO file names for 250 files = 0.350911140442 secs

is one run of test (b)

getObjects, lazy loading file names for 250 files = 0.333851099014 secs
getObjects, NO file names for 250 files = 0.30108499527 secs

is another.

Adding more objects to the test (I tested 2000) does make the test consistently pass, but then it takes a long time to clean up (delete the created annotations).

Are these tests really needed on the python gateway side?

comment:6 Changed 12 years ago by cneves

  • Owner changed from wmoore to cneves-x
  • Status changed from reopened to accepted

comment:7 Changed 12 years ago by jmoore

And perhaps we make the bits that are slow (deleting annotations) faster?

comment:8 Changed 8 years ago by jamoore

  • Milestone changed from 5.x to Testing2
  • Version set to OMERO-5.2.0

comment:9 Changed 8 years ago by sbesson

  • Resolution set to duplicate
  • Status changed from accepted to closed

Captured as part of the Gateway tests review card - https://trello.com/c/O37HsEP6/414-gateway-integration-tests-cleanup

Note: See TracTickets for help on using tickets. You may also have a look at Agilo extensions to the ticket.

1.3.13-PRO © 2008-2011 Agilo Software all rights reserved (this page was served in: 0.75042 sec.)

We're Hiring!