Hi Tomek,

In data mercoledì 8 maggio 2013 13:03:22, Pazera, Tomasz ha scritto:
> some records harvested via oai cannot afterwards be edited properly.
> This bug seems to appear only if a record has the following datafield
> (after oaiharvest):
> 000145682 8564_
> $$uhttps://bib-pubdb1.desy.de/record/145682/files/art%3A10.1007%2FJHEP02
> %282013%29071.pdf
> 
> this file is listed  under
> "https://bib-pubdb1.desy.de/record/145682/files/";, but if you try to
> access, it ends up in:
>  "The requested URL /record/145682/files/art:10.1007/JHEP02(2013)071.pdf
> was not found on this server "
> 
> when I try to change any Field in that record(i.e. 980__c:DELETED) via
> bibedit the corresponding bibupload fails:
> #############
> 2013-05-08 12:21:53 --> Task #11341 started.
> 2013-05-08 12:21:53 --> Input file
> '/opt/invenio/var/tmp/bibedit_record_145682_1.xml', input mode
> 'replace'.
> 2013-05-08 12:21:54 -->    Stage 2B failed: Error while synchronizing
> 8564 tags: invalid literal for int(): 145682/art:10.1007
> 2013-05-08 12:21:54 -->    Restored original record
> #############
> 
>  It looks like  wrong behavior, while escaping special chars in
> filenames or something like that...
> We are running Invenio 1.0.2. Any help would be appreciated

In general it should not be possible to add documents with a “/” in the name.

While this bug is investigated, you might wish to try physically removing the 
wrong fulltext file from the record by directly using the BibDocFile APIs.

E.g.:

$ from invenio.bibdocfile import BibRecDocs
$ docs = BibRecDocs(11341)
$ for bibdoc in docs.list_bibdocs():
.     bibdoc.delete()

Then if you try to delete the record you should be able to.

Cheers!
        Sam

-- 
Samuele Kaplun
Invenio Developer ** <http://invenio-software.org/>
INSPIRE Service Manager ** <http://inspirehep.net/>

Reply via email to