Breaking it down:

   - Django.setup wants to load all apps, and calls apps.populate
   - Django-cms plugins register themselves at load time
   - Django-cms plugin registration involves loading templates
   - Django-multisite provides a template loader (for per-site templates)
   - Django-multisite also monkey-patches Sites' cache (normally a dict) 
   with a wrapper around a django cache
   - The django-multisite template loader fetches the current site from 
   cache when loading templates
   - Django's LocMemCache backend fetches a pickled model from cache
   - It is implicitly unpickled by django.db.models.base.Model which calls 
   model_unpickle
   - model_unpickle tests if apps.ready is true and if not, calls 
   apps.populate

I could break the cycle any number of places, but it seems to me that all 
the apps are doing reasonable things (monkey patching aside), and django 
shouldn't be calling apps.populate to unpickle a model.  Perhaps that is 
unavoidable?

John

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/f5271566-56ce-4171-a21e-fa24bbd73451%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to