0
votes

Atom feeds have been possible for a while (ckan.org/2012/05/30/atom-feeds/ and result at https://datahub.io/feeds/dataset.atom).

However when we attempt this on our own CKAN instance (which is on the same 2.4.1 version of CKAN as the datahub) we get a server error.

The docs have a few settings re feeds, but they don't appear to include a switch to enable/disable, so presume they should be 'on' by default? http://docs.ckan.org/en/latest/maintaining/configuration.html#feeds-settings

Is there something else we need to be doing to get this working?

Thanks Aaron

Update

There were details in the server logs relating to the ckan.feeds.date configuration, which they updated to include a date, but are still getting an error - log below.

There seems to have been a few issues with the ATOM feed (e.g. just looking in Github https://github.com/ckan/ckan/issues/1463 - although they should have been resolved in the version we are running). Can you see anything we may be missing, and/or is it worth logging another issue in Github if the problem is is a bug (it seems to be python related?) and not a configuration issue?

I noticed that on line 3 of the log it is using the http (vs httpS) url - we tested on a non HTTPS instance (to make sure it is the same url all the way through) and it still resulted in the same error.

Log when trying to access https://datastore.landcareresearch.co.nz/feeds/dataset.atom

[Mon Apr 04 10:43:07 2016] [error] 2016-04-04 10:43:07,074 INFO  [ckan.lib.base]  /dataset render time 0.156 seconds
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] Error - <type 'exceptions.AttributeError'>: 'list' object has no attribute 'replace'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] URL: http://datastore.landcareresearch.co.nz/feeds/dataset.atom
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/weberror/errormiddleware.py', line 162 in __call__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   app_iter = self.application(environ, sr_checker)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webob/dec.py', line 147 in __call__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   resp = self.call_func(req, *args, **self.kwargs)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webob/dec.py', line 208 in call_func
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   return self.func(req, *args, **kwargs)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/fanstatic/publisher.py', line 234 in __call__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   return request.get_response(self.app)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webob/request.py', line 1053 in get_response
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   application, catch_exc_info=False)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webob/request.py', line 1022 in call_application
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   app_iter = application(self.environ, start_response)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webob/dec.py', line 147 in __call__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   resp = self.call_func(req, *args, **self.kwargs)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webob/dec.py', line 208 in call_func
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   return self.func(req, *args, **kwargs)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/fanstatic/injector.py', line 54 in __call__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   response = request.get_response(self.app)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webob/request.py', line 1053 in get_response
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   application, catch_exc_info=False)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webob/request.py', line 1022 in call_application
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   app_iter = application(self.environ, start_response)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/src/ckan/ckan/config/middleware.py', line 389 in inner
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   result = application(environ, start_response)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/beaker/middleware.py', line 73 in __call__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   return self.app(environ, start_response)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/beaker/middleware.py', line 155 in __call__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   return self.wrap_app(environ, session_start_response)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/routes/middleware.py', line 131 in __call__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   response = self.app(environ, start_response)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/pylons/wsgiapp.py', line 125 in __call__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   response = self.dispatch(controller, environ, start_response)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/pylons/wsgiapp.py', line 324 in dispatch
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   return controller(environ, start_response)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/src/ckan/ckan/lib/base.py', line 338 in __call__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   res = WSGIController.__call__(self, environ, start_response)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/pylons/controllers/core.py', line 221 in __call__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   response = self._dispatch_call()
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/pylons/controllers/core.py', line 172 in _dispatch_call
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   response = self._inspect_call(func)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/pylons/controllers/core.py', line 107 in _inspect_call
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   result = self._perform_call(func, args)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/pylons/controllers/core.py', line 60 in _perform_call
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   return func(**args)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/src/ckan/ckan/controllers/feed.py', line 296 in general
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   navigation_urls=navigation_urls)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/src/ckan/ckan/controllers/feed.py', line 393 in output_feed
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   return feed.writeString('utf-8')
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webhelpers/feedgenerator.py', line 217 in writeString
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   self.write(s, encoding)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webhelpers/feedgenerator.py', line 333 in write
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   self.write_items(handler)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webhelpers/feedgenerator.py', line 367 in write_items
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   self.add_item_elements(handler, item)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/src/ckan/ckan/controllers/feed.py', line 514 in add_item_elements
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   super(_FixedAtom1Feed, self).add_item_elements(handler, item)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webhelpers/feedgenerator.py', line 380 in add_item_elements
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   handler.addQuickElement(u"name", item['author_name'])
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/ckan/default/lib/python2.7/site-packages/webhelpers/util.py', line 182 in addQuickElement
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   self.characters(contents)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/python2.7/xml/sax/saxutils.py', line 162 in characters
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   self._write(escape(content))
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] File '/usr/lib/python2.7/xml/sax/saxutils.py', line 39 in escape
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   data = data.replace("&", "&amp;")
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] AttributeError: 'list' object has no attribute 'replace'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] 
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] 
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] CGI Variables
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] -------------
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   AUTH_TYPE: 'cookie'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   CKAN_CURRENT_URL: '/feeds/dataset.atom'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   CKAN_LANG: 'en_NZ'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   CKAN_LANG_IS_DEFAULT: True
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   CONTENT_TYPE: '; charset=utf-8'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   DOCUMENT_ROOT: '/etc/apache2/htdocs'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   GATEWAY_INTERFACE: 'CGI/1.1'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_ACCEPT: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_ACCEPT_ENCODING: 'gzip, deflate, sdch'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_ACCEPT_LANGUAGE: 'en-GB,en-US;q=0.8,en;q=0.6'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_CACHE_CONTROL: 'no-cache'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_CONNECTION: 'close'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_COOKIE: 'ckan=80c3a3f1b25d8d933d8438e88d5da5e1523009e2861bf44580554df3ade2b6e12804008c; auth_tkt="0e1ee44900f448db092e99ab707a7be65654dd84michaels!userid_type:unicode"; auth_tkt="0e1ee44900f448db092e99ab707a7be65654dd84michaels!userid_type:unicode"; __utma=137900973.581330336.1415309487.1448933608.1453156916.12; __utmc=137900973; __utmz=137900973.1446083943.10.3.utmcsr=172.20.88.97|utmccn=(referral)|utmcmd=referral|utmcct=/; _ga=GA1.3.581330336.1415309487; __utma=84049292.581330336.1415309487.1458647532.1459722563.56; __utmb=84049292.5.10.1459722563; __utmc=84049292; __utmz=84049292.1459722563.56.2.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=https%3A%2F%2Fdatastore.landcareresearch.co.nz%2Ffeeds%2Fdataset.atom'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_HOST: 'datastore.landcareresearch.co.nz'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_PRAGMA: 'no-cache'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_REFERER: 'https://www.google.com/url?q=https%3A%2F%2Fdatastore.landcareresearch.co.nz%2Ffeeds%2Fdataset.atom&sa=D&sntz=1&usg=AFQjCNGLyJbMkRLkuuyRx9wZapwTpNQigg'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_UPGRADE_INSECURE_REQUESTS: '1'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_USER_AGENT: 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 Safari/537.36'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_X_FORWARDED_FOR: '172.20.88.18'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_X_FORWARDED_HOST: 'datastore.landcareresearch.co.nz'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_X_FORWARDED_PROTO: 'https'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_X_FORWARDED_SERVER: 'datastore.landcareresearch.co.nz'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_X_FORWARDED_SSL: 'on'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   HTTP_X_REAL_IP: '172.20.88.18'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   PATH_INFO: '/feeds/dataset.atom'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   PATH_TRANSLATED: '/etc/ckan/default/apache.wsgi/feeds/dataset.atom'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   REMOTE_ADDR: '127.0.0.1'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   REMOTE_PORT: '45221'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   REMOTE_USER: u'michaels'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   REMOTE_USER_DATA: 'userid_type:unicode'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   REMOTE_USER_TOKENS: ['']
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   REQUEST_METHOD: 'GET'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   REQUEST_URI: '/feeds/dataset.atom'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   SCRIPT_FILENAME: '/etc/ckan/default/apache.wsgi'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   SERVER_ADDR: '127.0.0.1'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   SERVER_ADMIN: '[no address given]'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   SERVER_NAME: 'datastore.landcareresearch.co.nz'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   SERVER_PORT: '80'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   SERVER_PROTOCOL: 'HTTP/1.0'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   SERVER_SIGNATURE: '<address>Apache/2.2.22 (Ubuntu) Server at datastore.landcareresearch.co.nz Port 80</address>\\n'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   SERVER_SOFTWARE: 'Apache/2.2.22 (Ubuntu)'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] 
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] 
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] WSGI Variables
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] --------------
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   application: <fanstatic.publisher.Delegator object at 0x7fbdcf7f0c10>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   beaker.cache: <beaker.cache.CacheManager object at 0x7fbdcf7f0a10>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   beaker.get_session: <bound method SessionMiddleware._get_session of <beaker.middleware.SessionMiddleware object at 0x7fbdcf7fbf10>>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   beaker.session: {'_accessed_time': 1459723387.442003, '_creation_time': 1459723387.442003}
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   fanstatic.needed: <fanstatic.core.NeededResources object at 0x7fbdcfd8bad0>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   mod_wsgi.application_group: 'default.ckanhosted.com|'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   mod_wsgi.callable_object: 'application'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   mod_wsgi.handler_script: ''
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   mod_wsgi.input_chunked: '0'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   mod_wsgi.listener_host: ''
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   mod_wsgi.listener_port: '8080'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   mod_wsgi.process_group: 'ckan_default'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   mod_wsgi.request_handler: 'wsgi-script'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   mod_wsgi.script_reloading: '1'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   mod_wsgi.version: (3, 3)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   paste.cookies: (<SimpleCookie: __utma='84049292.581330336.1415309487.1458647532.1459722563.56' __utmb='84049292.5.10.1459722563' __utmc='84049292' __utmz='84049292.1459722563.56.2.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=https%3A%2F%2Fdatastore.landcareresearch.co.nz%2Ffeeds%2Fdataset.atom' _ga='GA1.3.581330336.1415309487' auth_tkt='0e1ee44900f448db092e99ab707a7be65654dd84michaels!userid_type:unicode' ckan='80c3a3f1b25d8d933d8438e88d5da5e1523009e2861bf44580554df3ade2b6e12804008c'>, 'ckan=80c3a3f1b25d8d933d8438e88d5da5e1523009e2861bf44580554df3ade2b6e12804008c; auth_tkt="0e1ee44900f448db092e99ab707a7be65654dd84michaels!userid_type:unicode"; auth_tkt="0e1ee44900f448db092e99ab707a7be65654dd84michaels!userid_type:unicode"; __utma=137900973.581330336.1415309487.1448933608.1453156916.12; __utmc=137900973; __utmz=137900973.1446083943.10.3.utmcsr=172.20.88.97|utmccn=(referral)|utmcmd=referral|utmcct=/; _ga=GA1.3.581330336.1415309487; __utma=84049292.581330336.1415309487.145864...%2Fdataset.atom')
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   paste.registry: <paste.registry.Registry object at 0x7fbdb41f9690>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   paste.throw_errors: True
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   pylons.action_method: <bound method FeedController.general of <ckan.controllers.feed.FeedController object at 0x7fbdcfb13850>>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   pylons.controller: <ckan.controllers.feed.FeedController object at 0x7fbdcfb13850>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   pylons.environ_config: {'session': 'beaker.session', 'cache': 'beaker.cache'}
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   pylons.pylons: <pylons.util.PylonsContext object at 0x7fbdcfb13f50>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   pylons.routes_dict: {'action': u'general', 'controller': u'feed'}
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   repoze.who.api: <repoze.who.api.API object at 0x7fbdb41f9e10>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   repoze.who.identity: <repoze.who identity (hidden, dict-like) at 140452949597392>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   repoze.who.logger: <logging.Logger object at 0x7fbdcf7f0d50>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   repoze.who.plugins: {'ckan.lib.authenticator:UsernamePasswordAuthenticator': <ckan.lib.authenticator.UsernamePasswordAuthenticator object at 0x7fbdcf7eaa50>, 'friendlyform': <FriendlyFormPlugin 140453206729104>, 'auth_tkt': <CkanAuthTktCookiePlugin 140453206728784>}
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   routes.route: <routes.route.Route object at 0x7fbdcf702b10>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   routes.url: <routes.util.URLGenerator object at 0x7fbdc05870d0>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   webob._parsed_query_vars: (GET([]), '')
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   webob.adhoc_attrs: {'response': <Response at 0x7fbdc0587290 200 OK>, 'language': 'en-us'}
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   wsgi process: 'Multi process AND threads (?)'
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   wsgi.file_wrapper: <built-in method file_wrapper of mod_wsgi.Adapter object at 0x7fbdc0575e40>
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   wsgi.version: (1, 1)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   wsgiorg.routing_args: (<routes.util.URLGenerator object at 0x7fbdc05870d0>, {'action': u'general', 'controller': u'feed'})
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] ------------------------------------------------------------
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] 
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]             <p>Additionally an error occurred while sending the &lt;weberror.reporter.EmailReporter object at 0x7fbdc0650110&gt; report:
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] 
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]             <pre>Traceback (most recent call last):
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   File "/usr/lib/ckan/default/lib/python2.7/site-packages/weberror/errormiddleware.py", line 450, in send_report
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]     rep.report(exc_data)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   File "/usr/lib/ckan/default/lib/python2.7/site-packages/weberror/reporter.py", line 45, in report
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]     server = smtplib.SMTP(self.smtp_server)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/smtplib.py", line 254, in __init__
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]     (code, msg) = self.connect(host, port)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/smtplib.py", line 314, in connect
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]     self.sock = self._get_socket(host, port, self.timeout)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/smtplib.py", line 289, in _get_socket
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]     return socket.create_connection((port, host), timeout)
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/socket.py", line 571, in create_connection
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]     raise err
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] error: [Errno 111] Connection refused
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1] </pre>
[Mon Apr 04 10:43:07 2016] [error] 2016-04-04 10:43:07,761 INFO  [ckan.lib.base]  /feeds/dataset.atom render time 0.094 seconds
[Mon Apr 04 10:43:07 2016] [error] [client 127.0.0.1]             </p>
[Mon Apr 04 10:43:08 2016] [error] 2016-04-04 10:43:08,163 INFO  [ckan.lib.base]  /api/i18n/en_NZ render time 0.002 seconds
[Mon Apr 04 10:43:09 2016] [error] 2016-04-04 10:43:09,892 WARNI [ckan.lib.maintain] Function _resource_preview() in module ckan.controllers.package has been deprecated and will be removed in a later release of ckan. Resource preview is deprecated. Please use the new resource views
[Mon Apr 04 10:43:10 2016] [error] 2016-04-04 10:43:10,019 INFO  [ckan.lib.base]  /dataset/new-zealand-bark-thickness-2015/resource/e1efd90a-b4b9-4656-9c00-50970372bbb9 render time 0.159 seconds
[Mon Apr 04 10:43:14 2016] [error] 2016-04-04 10:43:14,821 INFO  [ckan.lib.base]  /dataset render time 0.082 seconds
2
What error are you getting? - jaybrau
@jay-huggins Sorry for the delay in responding to you - been waiting on an update from the IT staff. The error we get from datastore.landcareresearch.co.nz/feeds/dataset.atom is Error 500: Internal Server Error occurred. - Aaron M
@d-read Sorry for the delay in responding to you - been waiting on an update from the IT staff. - Aaron M

2 Answers

2
votes

The exception is saying that the author_name value being passed is of type 'list' (of strings, I imagine), rather than a string.

Having looked around feed.py, I think you should check that in your ckan config you don't have multiple values for ckan.feeds.author_name or ckan.site_id. Having a comma in the value would probably cause it. Failing that, also look in your package.author fields in the database, although I can't see why that would end up as a list, unless you had a custom schema.

There's also no reason why you couldn't debug this with a print or breakpoint in feed.py just before line 393 and find out where this list is coming from.

0
votes

The problem is with the following statement in feeds.py

author_name=pkg.get('author', ''),

pkg.get for author returns an array NOT a string. This is a bug.