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

Reply via email to