Make BugDir._uuids_cache a set.
authorW. Trevor King <wking@drexel.edu>
Thu, 12 May 2011 13:23:14 +0000 (09:23 -0400)
committerW. Trevor King <wking@drexel.edu>
Thu, 12 May 2011 13:23:19 +0000 (09:23 -0400)
commit4920a709bc172ca65cf0f618226c3c2758697528
tree46604dbd4bcfa2e61d1f42acd7511c19271a9e01
parentb3a21311f816a6f5ac91c1d7b94868e42ad42c1c
Make BugDir._uuids_cache a set.

For `be list` on a bugdir with 4096 open bugs, this reduced the
cumulative time spend in 8194 calls to BugDir.uuids() from 41 seconds
to 33 seconds.

Of the 33 cumulative seconds, 24 were spend in uuids() itself (and not
in child functions), which is probably from the list comprehension
extracting in-memory Bug uuids.  With fancier accounting, you could
probably trust _uuids_cache to already contain all the in-memory
uuids and dispense with the union altogether.
libbe/bugdir.py