[ckan-dev] Datasets without current revision
    Adrià Mercader 
    amercadero at gmail.com
       
    Thu Jan  5 18:14:58 UTC 2012
    
    
  
Hi all,
I'm investigating some exceptions that occur in the test.ckan.org
instance when rebuilding the search index. The exception returned is a
NotFound logic one:
  File "/home/okfn/var/srvc/test.ckan.net/src/ckan/ckan/lib/search/__init__.py",
line 134, in rebuild
    {'id': pkg.id}
  File "/home/okfn/var/srvc/test.ckan.net/src/ckan/ckan/logic/action/get.py",
line 517, in package_show_rest
    package_show(context, data_dict)
  File "/home/okfn/var/srvc/test.ckan.net/src/ckan/ckan/logic/action/get.py",
line 357, in package_show
    package_dict = package_dictize(pkg, context)
  File "/home/okfn/var/srvc/test.ckan.net/src/ckan/ckan/lib/dictization/model_dictize.py",
line 119, in package_dictize
    raise NotFound
This is where it's fired:
https://github.com/okfn/ckan/blob/master/ckan/lib/dictization/model_dictize.py#L145
After some digging, I found that they are caused by some of the
packages not having a "current" revision.
See for instance, the package "eu-ebr" in the test.ckan.org database:
test.ckan.org=# select name,state,revision_id,current from
package_revision where name = 'eu-ebr';
  name  | state  |             revision_id              | current
--------+--------+--------------------------------------+---------
 eu-ebr | active | 1d28dd1d-c3aa-483d-81b3-9be73080c089 | f
(1 row)
And on the thedatahub.org database:
ckan.net=> select name,state,revision_id,current from package_revision
where name = 'eu-ebr';
  name  | state  |             revision_id              | current
--------+--------+--------------------------------------+---------
 eu-ebr | active | 1d28dd1d-c3aa-483d-81b3-9be73080c089 | t
(1 row)
I'm not sure if this was caused by a bad DB import when reinstalling
test.ckan.org on s023 or something else is going on.
Any clues on that?
On a related note, shouldn't we capture these exceptions when
rebuilding the search index so the process does not stop and most of
the datasets are indeed indexed? (Right now, test.ckan.org only shows
607 datasets, because the 608th threw the exception)
Adrià
    
    
More information about the ckan-dev
mailing list