2014-10-04 8 views
0

Мы использовали ckanext-dcat для сбора урожая из удаленных источников json, иногда некоторые задания по уборке не заканчивались и их нужно было удалить вместе со всеми наборами данных из этого источника, что не очень но тогда все возвращается к норме, я не знаю, есть ли способ удалить только одно задание.Убиратели, использующие расширение DCAT, застряли

Но теперь я получаю это в собирать потребитель журнал:

Traceback (most recent call last): 
    File "/usr/lib/ckan/default/bin/paster", line 9, in <module> 
    load_entry_point('PasteScript==1.7.5', 'console_scripts', 'paster')() 
    File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/script/command.py", line 104, in run 
    invoke(command, command_name, options, args[1:]) 
    File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/script/command.py", line 143, in invoke 
    exit_code = runner.run(args) 
    File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/paste/script/command.py", line 238, in run 
    result = self.command() 
    File "/usr/lib/ckan/default/src/ckanext-harvest/ckanext/harvest/commands/harvester.py", line 129, in command 
    gather_callback(consumer, method, header, body) 
    File "/usr/lib/ckan/default/src/ckanext-harvest/ckanext/harvest/queue.py", line 219, in gather_callback 
    harvest_object_ids = harvester.gather_stage(job) 
    File "/usr/lib/ckan/default/src/ckanext-dcat/ckanext/dcat/harvesters.py", line 186, in gather_stage 
    content = self._get_content(url, harvest_job, page) 
    File "/usr/lib/ckan/default/src/ckanext-dcat/ckanext/dcat/harvesters.py", line 66, in _get_content 
    cl = r.headers['content-length'] 
    File "/usr/lib/ckan/default/local/lib/python2.7/site-packages/requests/structures.py", line 54, in __getitem__ 
    return self._store[key.lower()][1] 
KeyError: 'content-length 

отделки работы, но не наборы данных не получить создан, если я удалю эту работу и reharvest он продолжает работать, но никогда не заканчивается и другие рабочие места сбора урожая не обновить.

Как это исправить?

ответ

1

@Urkonn, разные вещи здесь происходит:

  • Комбайн застрять: это может быть вызвано реализацией багги на комбайне, вызванное определенным форматом или поля в файлах, которые вы уборочных , Трудно отлаживать, не зная больше, можете ли вы передать мне ссылку на один из файлов, который заставляет харвестер зависать, или то, что журналы говорят, когда это происходит?

  • Очистка источника без удаления наборов данных: я полностью понимаю, что удаление всех наборов данных кажется излишним, но если мы очистим задания, объекты и т. Д. От источника, тогда существующие наборы данных потеряют ссылку на источник, который для экземпляр будет означать, что они не указаны на исходной странице. Кроме того, новые задания не будут знать, что набор данных уже собирается для этого источника, поэтому он создаст дубликат, даже если набор данных уже существует. Может быть, есть способ предотвратить это, но я бы сказал, что воссоздание наборов данных безопаснее.

  • KeyError: 'content-length': это вызвано обновлением до запросов 2.3. Я поставил исправление для ckanext-dcat, чтобы предотвратить это [1], поэтому, пожалуйста, потяните последнюю версию, чтобы получить патч и перезапустить все процессы сбора урожая.

[1] https://github.com/ckan/ckanext-dcat/commit/ed186623d83cf3baf9dd29bdb13be7f1431b8ab8

+0

Спасибо за ваш ответ, я посылаю Вам письмо – Urkonn