okfn / ckanext-s3filestore

Use Amazon S3 as a filestore for CKAN
GNU Affero General Public License v3.0
14 stars 35 forks source link

AttributeError: 'S3ResourceUploader' object has no attribute 'old_filename' #5

Open pwalsh opened 8 years ago

pwalsh commented 8 years ago

Background

I'm seeing a range of simple exceptions coming out of datahub.io (running CKAN 2.4 with this extension for file storage).

Issue

AttributeError: 'S3ResourceUploader' object has no attribute 'old_filename'
  File "raven/middleware.py", line 35, in __call__
    iterable = self.application(environ, start_response)
  File "webob/dec.py", line 147, in __call__
    resp = self.call_func(req, *args, **self.kwargs)
  File "webob/dec.py", line 208, in call_func
    return self.func(req, *args, **kwargs)
  File "fanstatic/publisher.py", line 234, in __call__
    return request.get_response(self.app)
  File "webob/request.py", line 1053, in get_response
    application, catch_exc_info=False)
  File "webob/request.py", line 1022, in call_application
    app_iter = application(self.environ, start_response)
  File "webob/dec.py", line 147, in __call__
    resp = self.call_func(req, *args, **self.kwargs)
  File "webob/dec.py", line 208, in call_func
    return self.func(req, *args, **kwargs)
  File "fanstatic/injector.py", line 54, in __call__
    response = request.get_response(self.app)
  File "webob/request.py", line 1053, in get_response
    application, catch_exc_info=False)
  File "webob/request.py", line 1022, in call_application
    app_iter = application(self.environ, start_response)
  File "ckan/config/middleware.py", line 389, in inner
    result = application(environ, start_response)
  File "beaker/middleware.py", line 73, in __call__
    return self.app(environ, start_response)
  File "beaker/middleware.py", line 155, in __call__
    return self.wrap_app(environ, session_start_response)
  File "routes/middleware.py", line 131, in __call__
    response = self.app(environ, start_response)
  File "pylons/wsgiapp.py", line 125, in __call__
    response = self.dispatch(controller, environ, start_response)
  File "pylons/wsgiapp.py", line 324, in dispatch
    return controller(environ, start_response)
  File "ckan/lib/base.py", line 338, in __call__
    res = WSGIController.__call__(self, environ, start_response)
  File "pylons/controllers/core.py", line 221, in __call__
    response = self._dispatch_call()
  File "pylons/controllers/core.py", line 172, in _dispatch_call
    response = self._inspect_call(func)
  File "pylons/controllers/core.py", line 107, in _inspect_call
    result = self._perform_call(func, args)
  File "ckan/controllers/package.py", line 600, in resource_edit
    get_action('resource_update')(context, data)
  File "ckan/logic/__init__.py", line 429, in wrapped
    result = _action(context, data_dict, **kw)
  File "ckan/logic/action/update.py", line 164, in resource_update
    upload.upload(id, uploader.get_max_resource_size())
  File "{__PATH__}/ckanext-s3filestore/ckanext/s3filestore/uploader.py", line 246, in upload
    filepath = self.get_path(id, self.old_filename)