CKAN使用jsonpdataproxy.appspot.com而不是本地数据集

问题描述:

我正在从CKAN 2.3迁移到CKAN 2.5.2。迁移是成功的,但数据网格不显示数据,因为它将转到jsonpdataproxy.appspot.com,而不是直接查询数据集。CKAN使用jsonpdataproxy.appspot.com而不是本地数据集

该数据集已启用并正常工作。我使用curl -I -k -X GET "https://127.0.0.1:444/api/3/action/datastore_search?resource_id=_table_metadata"

如果我返回到CKAN 2.3,只更改代码和Solr模式不配置文件或其他配置,数据网格再次显示。任何建议来解决问题?

谢谢

+0

有了升级路径,我可以想象你正在忍受datastore_active字段设置不正确(例如https://github.com/ckan/ckan/pull/2234),但你似乎找到了一个解决方案。作为升级的一部分,您是否执行了数据库升级? –

+0

是的问题是'datastore_active'字段总是带有错误的值。我也执行数据库升级。 –

最后问题解决了。

我看到问题是在var datastore_active附带值false值,这使得Ckan使用jsonpdataproxy.appspot.com。

查看代码中最终改变了这个变量的地方,我发现这个变量是作为json在extras列的resource表中建立的。我更新了所有资源(update resource set extras ='{"datastore_active": true}';)并重新生成Solr索引,并再次显示数据网格。

我执行命令:

paster --plugin=ckan views create --yes --config=/etc/ckan/${BASE_NAME}/production.ini --no-default-filters

但它返回一个错误:

/usr/local/ckan/venv_test/lib/python2.6/site-packages/sqlalchemy/sql/default_comparator.py:33: SAWarning: The IN-predicate on "group.name" was invoked with an empty sequence. This results in a contradiction, which nonetheless can be expensive to evaluate. Consider alternative strategies for improved performance. return o[0](self, self.expr, op, *(other + o[1:]), **kwargs) 2016-10-03 13:40:56,802 INFO [ckan.lib.cli] Done

我不知道这个错误使得该数据网格中未显示迁移。

+0

观看的一代是否工作?看起来这只是一个警告... –

+0

我不确定此命令是否有效,因为我在之前的迁移到CKAN 2.3并且视图正确显示时这样做,所以可能是之前正确创建了视图。然而,该命令返回一个零_return code_和一个ok消息'2016-10-03 13:40:56,802信息[ckan.lib.cli]完成' –