diff options
| author | Barry Warsaw | 2011-10-23 22:10:36 -0400 |
|---|---|---|
| committer | Barry Warsaw | 2011-10-23 22:10:36 -0400 |
| commit | 27ee61e8c69db8152678912c07f9de3e7dad84dc (patch) | |
| tree | 54983c34580b73dc8697504583b81ead26e5f4fe /src/mailman/database/model.py | |
| parent | 63b338e18c6cf07a3c46a8e9db436c9c10654330 (diff) | |
| parent | b4020ac6233b8c01966530ca81116c066546109b (diff) | |
| download | mailman-27ee61e8c69db8152678912c07f9de3e7dad84dc.tar.gz mailman-27ee61e8c69db8152678912c07f9de3e7dad84dc.tar.zst mailman-27ee61e8c69db8152678912c07f9de3e7dad84dc.zip | |
Diffstat (limited to 'src/mailman/database/model.py')
| -rw-r--r-- | src/mailman/database/model.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/mailman/database/model.py b/src/mailman/database/model.py index 3e5dcad57..eec88936f 100644 --- a/src/mailman/database/model.py +++ b/src/mailman/database/model.py @@ -24,6 +24,9 @@ __all__ = [ 'Model', ] + +from operator import attrgetter + from storm.properties import PropertyPublisherMeta @@ -46,8 +49,14 @@ class ModelMeta(PropertyPublisherMeta): @staticmethod def _reset(store): - for model_class in ModelMeta._class_registry: + from mailman.config import config + config.db._pre_reset(store) + # Make sure this is deterministic, by sorting on the storm table name. + classes = sorted(ModelMeta._class_registry, + key=attrgetter('__storm_table__')) + for model_class in classes: store.find(model_class).remove() + config.db._post_reset(store) |
