Hello all,
I recently deleted the demo records in a demo site (running latest master) by
replacing all 113 demo records
with an empty xml containing only 001 and 980__c:DELETED.
For this, I used bibupload -r and everything seemed fine.
But when I tried running:
sudo -u apache /opt/invenio/bin/bibindex -w filetype -R
I got:
2013-11-11 14:20:37 --> Creating new tmp index tables for id 25
2013-11-11 14:20:37 --> tmp_idxWORD25F contains 0 words from 0 records
2013-11-11 14:20:37 --> tmp_idxWORD25F is in consistent state
2013-11-11 14:20:37 --> tmp_idxWORD25F for 1-113 is in consistent state
2013-11-11 14:20:37 --> tmp_idxWORD25F adding records #1-#113 started
2013-11-11 14:20:37 --> Exception caught: argument of type 'NoneType' is not
iterable
2013-11-11 14:20:37 --> Exception caught: argument of type 'NoneType' is not
iterable
2013-11-11 14:20:37 --> tmp_idxWORD25F normal wordtable flush started
2013-11-11 14:20:37 --> ...updating 0 words into tmp_idxWORD25F started
2013-11-11 14:20:37 --> ...updating 0 words into tmp_idxWORD25F ended
2013-11-11 14:20:37 --> ...updating reverse table tmp_idxWORD25R started
2013-11-11 14:20:37 --> ...updating reverse table tmp_idxWORD25R ended
2013-11-11 14:20:37 --> tmp_idxWORD25F normal wordtable flush ended
2013-11-11 14:20:37 --> Traceback (most recent call last):
File "/usr/lib64/python2.6/site-packages/invenio/bibtask.py", line 984, in
_task_run
if callable(task_run_fnc) and task_run_fnc():
File "/usr/lib64/python2.6/site-packages/invenio/bibindex_engine.py", line
1435, in task_run_core
wordTable.add_recIDs_by_date(task_get_option("modified"),
task_get_option("flush"))
File "/usr/lib64/python2.6/site-packages/invenio/bibindex_engine.py", line
821, in add_recIDs_by_date
self.add_recIDs(alist, opt_flush)
File "/usr/lib64/python2.6/site-packages/invenio/bibindex_engine.py", line
757, in add_recIDs
just_processed = self.add_recID_range(i_low, i_high)
File "/usr/lib64/python2.6/site-packages/invenio/bibindex_engine.py", line
883, in add_recID_range
record = get_record(recID)
File "/usr/lib64/python2.6/site-packages/invenio/bibfield.py", line 109, in
get_record
record = CFG_BIBFIELD_READERS['bibfield_%sreader.py' %
(blob_wrapper.master_format,)](blob_wrapper)
File "/usr/lib64/python2.6/site-packages/invenio/bibfield_jsonreader.py",
line 76, in __init__
self._translate()
File "/usr/lib64/python2.6/site-packages/invenio/bibfield_jsonreader.py",
line 234, in _translate
self._unpack_rule(json_id, field_name)
File "/usr/lib64/python2.6/site-packages/invenio/bibfield_jsonreader.py",
line 261, in _unpack_rule
return self._apply_virtual_rule(field_name, rule_def['aliases'],
rule_def['rules'], rule_def['type'])
File "/usr/lib64/python2.6/site-packages/invenio/bibfield_jsonreader.py",
line 310, in _apply_virtual_rule
if rule['only_if'] and not all(self._try_to_eval(rule['only_if'])):
File "/usr/lib64/python2.6/site-packages/invenio/bibfield_utils.py", line
352, in _try_to_eval
res = eval(string, globals().update(context), locals()) # kwalitee:
disable=eval
File "<string>", line 1, in <module>
TypeError: argument of type 'NoneType' is not iterable
2013-11-11 14:20:38 --> Task #123 finished. [CERROR]
The same applies for itemcount index:
sudo -u apache /opt/invenio/bin/bibindex -w itemcount -R
All other indexes work fine.
Can you imagine what's going wrong or should I include the whole stack from the
relevant exception in my mail?
Best regards,
Theodoros