[Buildbot-commits] [buildbot/buildbot] 30f61e: AsyncLRUCache changes

noreply at github.com noreply at github.com
Sat May 28 21:47:01 UTC 2011


Branch: refs/heads/master
Home:   https://github.com/buildbot/buildbot

Commit: 30f61e3c28b00e3da405d51c748ad0023ea53e25
    https://github.com/buildbot/buildbot/commit/30f61e3c28b00e3da405d51c748ad0023ea53e25
Author: Dustin J. Mitchell <dustin at v.igoro.us>
Date:   2011-05-28 (Sat, 28 May 2011)

Changed paths:
  M master/buildbot/test/unit/test_util_lru.py
  M master/buildbot/util/lru.py

Log Message:
-----------
AsyncLRUCache changes

* add set_max_size method
* make miss_fn an instance attr
* allow **miss_fn_kwargs for get() invocations, to pass "hints"
* do not cache negative results
* add 'put' method to update a value


Commit: dc86b375596eab8a69053945b89c6e8aed1303d2
    https://github.com/buildbot/buildbot/commit/dc86b375596eab8a69053945b89c6e8aed1303d2
Author: Dustin J. Mitchell <dustin at v.igoro.us>
Date:   2011-05-28 (Sat, 28 May 2011)

Changed paths:
  A master/buildbot/cache.py
  M master/buildbot/master.py
  A master/buildbot/test/unit/test_cache.py

Log Message:
-----------
add master.caches, so-far unused


Commit: 8e87bc986e657d5c9d6779e8a3978835c566b691
    https://github.com/buildbot/buildbot/commit/8e87bc986e657d5c9d6779e8a3978835c566b691
Author: Dustin J. Mitchell <dustin at v.igoro.us>
Date:   2011-05-28 (Sat, 28 May 2011)

Changed paths:
  M master/buildbot/db/base.py
  A master/buildbot/test/unit/test_db_base.py

Log Message:
-----------
Add @base.cached for DBConnectorComponents

This adds caching to "getter" methods, using lazy binding to the caches.


Commit: c7b8b02595541ca924b21f4a957be1279cb1023a
    https://github.com/buildbot/buildbot/commit/c7b8b02595541ca924b21f4a957be1279cb1023a
Author: Dustin J. Mitchell <dustin at v.igoro.us>
Date:   2011-05-28 (Sat, 28 May 2011)

Changed paths:
  M master/buildbot/db/base.py
  M master/buildbot/db/buildrequests.py
  M master/buildbot/db/buildsets.py
  M master/buildbot/db/changes.py
  M master/buildbot/db/sourcestamps.py
  M master/buildbot/scripts/runner.py
  A master/buildbot/test/fake/fakemaster.py
  M master/buildbot/test/integration/test_upgrade.py
  M master/buildbot/test/regressions/test_import_unicode_changes.py
  M master/buildbot/test/unit/test_db_base.py
  M master/buildbot/test/unit/test_db_buildrequests.py
  M master/buildbot/test/util/connector_component.py

Log Message:
-----------
cache db results

This adds caches for ssdicts, brdicts, chdicts, bsdicts, and adds a
no_cache=1 option to all master.db.comp.getFooBar methods


Commit: 6e282456dc924bf0b0e9e0718ace72ce7b408373
    https://github.com/buildbot/buildbot/commit/6e282456dc924bf0b0e9e0718ace72ce7b408373
Author: Dustin J. Mitchell <dustin at v.igoro.us>
Date:   2011-05-28 (Sat, 28 May 2011)

Changed paths:
  M master/buildbot/sourcestamp.py
  M master/buildbot/test/unit/test_process_builder.py
  M master/buildbot/test/unit/test_process_buildrequest.py
  M master/buildbot/test/unit/test_sourcestamp.py

Log Message:
-----------
cache SourceStamps; add a fakemaster module to help tests


Commit: cc0f7dc66f0093754a374aa66f5a1f2abb7b5f93
    https://github.com/buildbot/buildbot/commit/cc0f7dc66f0093754a374aa66f5a1f2abb7b5f93
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date:   2011-05-28 (Sat, 28 May 2011)

Changed paths:
  M master/buildbot/process/buildrequest.py

Log Message:
-----------
cache BuildRequest instances


Commit: ab8926341888b54567c9691803acdcd436533e6f
    https://github.com/buildbot/buildbot/commit/ab8926341888b54567c9691803acdcd436533e6f
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date:   2011-05-28 (Sat, 28 May 2011)

Changed paths:
  M master/buildbot/changes/changes.py
  M master/buildbot/schedulers/basic.py
  M master/buildbot/test/util/scheduler.py

Log Message:
-----------
cache Change instances


Commit: 9e2408449d0fb9d10807ab03bb0cd4cb38a42800
    https://github.com/buildbot/buildbot/commit/9e2408449d0fb9d10807ab03bb0cd4cb38a42800
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date:   2011-05-28 (Sat, 28 May 2011)

Changed paths:
  A master/buildbot/cache.py
  M master/buildbot/changes/changes.py
  M master/buildbot/db/base.py
  M master/buildbot/db/buildrequests.py
  M master/buildbot/db/buildsets.py
  M master/buildbot/db/changes.py
  M master/buildbot/db/sourcestamps.py
  M master/buildbot/master.py
  M master/buildbot/process/buildrequest.py
  M master/buildbot/schedulers/basic.py
  M master/buildbot/scripts/runner.py
  M master/buildbot/sourcestamp.py
  A master/buildbot/test/fake/fakemaster.py
  M master/buildbot/test/integration/test_upgrade.py
  M master/buildbot/test/regressions/test_import_unicode_changes.py
  A master/buildbot/test/unit/test_cache.py
  A master/buildbot/test/unit/test_db_base.py
  M master/buildbot/test/unit/test_db_buildrequests.py
  M master/buildbot/test/unit/test_process_builder.py
  M master/buildbot/test/unit/test_process_buildrequest.py
  M master/buildbot/test/unit/test_sourcestamp.py
  M master/buildbot/test/unit/test_util_lru.py
  M master/buildbot/test/util/connector_component.py
  M master/buildbot/test/util/scheduler.py
  M master/buildbot/util/lru.py

Log Message:
-----------
Implement caching

This is conservative in how it caches database dictionaries, but more
aggressive with process objects.

* bug1953:
  cache Change instances
  cache BuildRequest instances
  cache SourceStamps; add a fakemaster module to help tests
  cache db results
  Add @base.cached for DBConnectorComponents
  add master.caches, so-far unused
  AsyncLRUCache changes

Fixes #1953.


Compare: https://github.com/buildbot/buildbot/compare/dc3ca6e...9e24084




More information about the Commits mailing list