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@…>
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
(In [8369bc74e71948caff6029b16a0fc0ed135ad43a/ome.git] on branch develop) Updating doc string for Blitz getObjects(). See #5780