#104: apparently bad recids in MySQL bibrec table (was: regexes grab too much)
-----------------------+----------------------------------------------------
Reporter: jblayloc | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: WebSearch | Version:
Keywords: |
-----------------------+----------------------------------------------------
Comment(by jblayloc):
Oh, not in seqp, for a change, but down in search_engine:
>>>>> Frame record_exists in /usr/lib/python2.4/site-
packages/invenio/search_engine.py at line 2901
>
*******************************************************************************
> 2898 out = 0
> 2899 res = run_sql("SELECT id FROM bibrec WHERE id=%s",
(recID,), 1)
> 2900 if res:
> ***** 2901 recID = int(recID)
> 2902 # record exists; now check whether it isn't marked as
deleted:
> 2903 dbcollids = get_fieldvalues(recID, "980__%")
> 2904 if ("DELETED" in dbcollids) or (CFG_CERN_SITE and
"DUMMY" in dbcollids):
>
*******************************************************************************
> res = ((9133,),)
> recID = '9133 and a bern'
> out = 0
It looks like we genuinely have non-numeric recids in the database
somewhere. Fixing these in situ is a good idea, but we should figure out
where they're coming from.
--
Ticket URL: <http://cdswaredev/invenio/ticket/104#comment:1>
Invenio <http://invenio-software.org>