diff options
Diffstat (limited to 'src/mailman/database/model.py')
| -rw-r--r-- | src/mailman/database/model.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/mailman/database/model.py b/src/mailman/database/model.py index 3e5dcad57..173659269 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,7 +49,10 @@ class ModelMeta(PropertyPublisherMeta): @staticmethod def _reset(store): - for model_class in ModelMeta._class_registry: + # 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() |
