Hi Nathan,
What process did you use to update from Mezzanine? A simple `pip install -U Mezzanine` will update the version of Mezzanine in site-packages used by your application. However, that `pip` command will not make the numerous changes required to upgrade *your* application to be compatible with the new version of Mezzanine. If you did not make many customizations, try hiding your custom templates and see if it works. Likely, you have the old pagination template, but the new version of Mezzanine doesn't do anything with them.
I went through this process on a production Cartridge site four months ago, upgrading from pre-1.0 to 1.2.4. Depending on how heavily your site is customized, this can be harrowing. I had to rewrite lots of custom checkout code and rebuild numerous custom views and templates. Some tips:
1. You ideally want to do this upgrade to production *one time*. Therefore, do it to your local development environment early and often, and make sure you can repeat it to a Vagrant that is identical to production.
2. Set up a Sentry server, initially just for your local development environment, but eventually for the Vagrant, stage, and production. After you get out to production, deactivate Sentry in all the environments except production and selectively activate it in environments as needed.
3. You are going to need to exercise every one of your custom views and templates to find breaking changes. Automate this with Selenium or something similar.
4. After you thoroughly exercise the application, your Sentry should have lots of handy debugging information waiting for you about each problem.
5. Use the django-debug-toolbar. The "Templates" panel will help prevent you from endlessly editing a template that isn't being called.
hth,
ken