CKAN Datapusher PDF给出" IndexError:从空列表中弹出"上传到数据存储区时

时间:2015-11-18 09:05:07

标签: ckan

我正在尝试建立一个CKAN网站(最新的稳定版本:2.5.0a)。我有一个本地在VirtualBox Ubuntu 14.04 Lts作为测试环境,一个在Ubuntu 14.04 Lts服务器上作为生产网站运行。它们都是按照教程设置的。使用Tomcat部署Solr,使用Apache2部署生产服务器。

我正在尝试设置数据存储区,file_store,resource_proxy和datapusher,以便能够上传或链接文件(csv,pdf,...),索引它们并为资源创建视图。

在我的本地测试机器上,我设法设置了所有这些。当我链接或上传csv文件时,一切正常。但是当我上传或链接pdf文件时,我从datapusher得到以下错误:

Fetching from: http://127.0.0.1:5000/dataset/e336410b-5d3d-4669-a29a-0f7c114077e5/resource/396941c8-a56c-4673-b232-cd7a9bc0faf6/download/test.pdf
Job "push_to_datastore (trigger: RunTriggerNow, run = True, next run at: None)" raised an exception
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/apscheduler/scheduler.py", line 512, in _run_job
    retval = job.func(*job.args, **job.kwargs)
  File "/home/bart/ckan/lib/default/src/datapusher/datapusher/jobs.py", line 343, in push_to_datastore
    row_set = table_set.tables.pop()
IndexError: pop from empty list

在我的生产环境中尝试相同时,链接pdf文件时会出现相同的错误。但上传任何文件(csv,pdf,...)会给我以下错误:

Fetching from: http://my_site_ip_here/dataset/72d76b70-c6bc-4d00-a753-6d1477375fd1/resource/55bab371-781b-4938-97b9-225e1534ca52/download/newusers.csv
ec5d8eb6-a277-41aa-b483-ae229595bf08
Job "push_to_datastore (trigger: RunTriggerNow, run = True, next run at: None)" raised an exception
Traceback (most recent call last):
  File "/usr/lib/ckan/datapusher/lib/python2.7/site-packages/apscheduler/scheduler.py", line 512, in _run_job
    retval = job.func(*job.args, **job.kwargs)
  File "/home/ubuntu/ckan/lib/datapusher/src/datapusher/datapusher/jobs.py", line 306, in push_to_datastore
    DOWNLOAD_TIMEOUT)
JobError

在我的生产网站上链接csv文件有效。 关于JobError,我发现我可以根据"从"获取来下载我的文件。链接错误。但是,当我尝试使用相同的链接从其他浏览器或计算机下载文件时,它不起作用(请注意这仅适用于上传的文件)。

提供错误的代码是

response = urllib2.urlopen(request, timeout=DOWNLOAD_TIMEOUT)

如jobs.py中所述,功能push_to_datastore行号297。

所以我的问题是:

  1. 我的生产服务器上的datapusher出了什么问题?
  2. 为什么pdf文件在生产和开发方面都会产生特定错误,而其他文件类型有效?
  3. resource_proxy的确切任务是什么?它不应该下载链接文件并在本地设置它们吗?如果下载链接到文件然后不是我自己的CKAN实例的链接而不是外部位置?目前情况并非如此。
  4. 感谢您的帮助!

0 个答案:

没有答案