#529: WebAlert: fix broken alerts
----------------------+---------------------
Reporter: lmarian | Owner: lmarian
Type: defect | Status: new
Priority: major | Milestone: v1.0
Component: WebAlert | Version:
Keywords: |
----------------------+---------------------
Alert engine is failing sending the alerts. The logs show 2 different
errors, where the common problem seems to be the {{{wash_colls}}} function
from {{{search_engine.py}}}.
One of the errors, is caused by a non-existing collection (happens due to
old alerts) - the alert engine should not crash, but remove these unknown
collections from the search query.
The traceback for the second error is listed below:
{{{
File "/usr/lib64/python2.4/site-packages/invenio/alert_engine.py", line
419, in run_alerts
process_alert_queries('day', date)
File "/usr/lib64/python2.4/site-packages/invenio/alert_engine.py", line
312, in process_alert_queries
q = run_query(aq, frequency, date)
File "/usr/lib64/python2.4/site-packages/invenio/alert_engine.py", line
285, in run_query
recs = get_record_ids(query[1], date_from, date_until)
File "/usr/lib64/python2.4/site-packages/invenio/alert_engine.py", line
256, in get_record_ids
d1m=d1m, d1d=d1d, d2y=d2y, d2m=d2m, d2d=d2d)
File "/usr/lib64/python2.4/site-packages/invenio/search_engine.py", line
4418, in perform_request_search
(cc, colls_to_display, colls_to_search, hosted_colls,
wash_colls_debug) = wash_colls(cc, c, sc, verbose) # which colls to search
and to display?
File "/usr/lib64/python2.4/site-packages/invenio/search_engine.py", line
1321, in wash_colls
colls_out_for_display.remove(coll)
ValueError: list.remove(x): x not in list
}}}
--
Ticket URL: <http://invenio-software.org/ticket/529>
Invenio <http://invenio-software.org>