Errors in 0.8.1 when run with Django/uWSGI, but not with Django's dev runserver · Issue #1741 · pandas-dev/pandas (original) (raw)

I'm using pandas in a Django application running on Ubuntu 12.04 and after upgrading from pandas 0.6.1 to 0.8.1 I'm getting some errors that completely prevent the application from running.

If I run Django's development server (manage.py runserver), everything works fine, but if instead I run uWSGI I see the following 2 tracebacks in my uwsgi log:

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 101, in get_response
    request.path_info)
  File "/usr/local/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 298, in resolve
    for pattern in self.url_patterns:
  File "/usr/local/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 328, in url_patterns
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
  File "/usr/local/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 323, in urlconf_module
    self._urlconf_module = import_module(self.urlconf_name)
  File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 35, in import_module
    __import__(name)
  File "/sites/ycharts/urls.py", line 5, in <module>
    from apps.companies.sitemaps import CompanySitemap
  File "/sites/ycharts/apps/companies/sitemaps.py", line 6, in <module>
    from apps.companies.models import Company
  File "/sites/ycharts/apps/companies/models.py", line 19, in <module>
    from apps.main.utils import googlesearch, wikipedia, date_utils, data_utils, \
  File "/sites/ycharts/apps/main/utils/data_utils.py", line 3, in <module>
    import pandas
  File "/usr/local/lib/python2.7/dist-packages/pandas/__init__.py", line 14, in <module>
    import pandas.lib as lib
AttributeError: 'module' object has no attribute 'lib'

and

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 101, in get_response
    request.path_info)
  File "/usr/local/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 298, in resolve
    for pattern in self.url_patterns:
  File "/usr/local/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 328, in url_patterns
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
  File "/usr/local/lib/python2.7/dist-packages/django/core/urlresolvers.py", line 323, in urlconf_module
    self._urlconf_module = import_module(self.urlconf_name)
  File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 35, in import_module
    __import__(name)
  File "/sites/ycharts/urls.py", line 5, in <module>
    from apps.companies.sitemaps import CompanySitemap
  File "/sites/ycharts/apps/companies/sitemaps.py", line 6, in <module>
    from apps.companies.models import Company
  File "/sites/ycharts/apps/companies/models.py", line 19, in <module>
    from apps.main.utils import googlesearch, wikipedia, date_utils, data_utils, \
  File "/sites/ycharts/apps/main/utils/data_utils.py", line 3, in <module>
    import pandas
  File "/usr/local/lib/python2.7/dist-packages/pandas/__init__.py", line 28, in <module>
    from pandas.core.api import *
  File "/usr/local/lib/python2.7/dist-packages/pandas/core/api.py", line 10, in <module>
    from pandas.core.format import (set_printoptions, reset_printoptions,
  File "/usr/local/lib/python2.7/dist-packages/pandas/core/format.py", line 147, in <module>
    class DataFrameFormatter(object):
  File "/usr/local/lib/python2.7/dist-packages/pandas/core/format.py", line 156, in DataFrameFormatter
    __doc__ += docstring_to_string
TypeError: unsupported operand type(s) for +=: 'NoneType' and 'str

After reading in #284, I thought it may be a path issue so I tried overwriting sys.path in my uwsgi configuration file so that it's the exact same path that the dev server sets up for me, but that didn't help.

Any tips / debugging ideas / help on the above would be greatly appreciated.

Thank you!