Dear Hossein,

In data venerdì 13 novembre 2009 02:49:47, Benoit Thiell ha scritto:
> -------- Original Message --------
> Subject: Re: Registered exception error
> Date: Thu, 12 Nov 2009 14:33:55 -0800
> From: Hossein Rafighi <[email protected]>
> To: Benoit Thiell <[email protected]>
> 'http://www.pa.msu.edu/~huston/triumf/triumf_huston.ppt')]
> 2009-11-12 14:02:11 --> .... processing ppt from
> http://www.pa.msu.edu/~huston/triumf/triumf_huston.ppt started
> 2009-11-12 14:02:13 --> task_sig_ping(), got signal 12 frame <frame
> object at 0x8eb023c>
> 2009-11-12 14:02:13 --> Updating task status to ERROR.
> 2009-11-12 14:02:13 --> Task #242 finished. [ERROR]
> 
> Cheers,
> Hossein

this seems to be related to a bug that happens when indexing remote fulltext 
files, due to a conflict between UNIX sockets and UNIX signals on Python.

An immediate workaround to this is to temporary switch off indexing of remote 
fulltext by setting in your invenio(-local).conf:

CFG_BIBINDEX_FULLTEXT_INDEX_LOCAL_FILES_ONLY = True

However you can apply the attached patch to fix this permanently.

In order to apply it just save it somewhere and then:

$ cd /opt/cds-invenio/lib/python/invenio
$ sudo patch -p4 --dry-run < /tmp/bibtask.patch
$ # if everything looks fine then...
$ sudo patch -p4 < /tmp/bibtask.patch

Best regards,
        Samuele

-- 
Samuele Kaplun ** CERN Document Server ** <http://cds.cern.ch/>
X-Git-Url: http://cdsware.cern.ch/repo/?p=personal%2Fcds-invenio-sam.git;a=blobdiff_plain;f=modules%2Fbibsched%2Flib%2Fbibtask.py;fp=modules%2Fbibsched%2Flib%2Fbibtask.py;h=d170e57fda0811cb01221eb8615db36692f4b867;hp=927c0cab14ab514c0ee3966283ebcac4912f9df0;hb=04d2cee71d151b7ce600011f4d2414ff28020419;hpb=ef59d1a66e928ac222ef6cd833e6f49742930808

diff --git a/modules/bibsched/lib/bibtask.py b/modules/bibsched/lib/bibtask.py
index 927c0ca..d170e57 100644
--- a/modules/bibsched/lib/bibtask.py
+++ b/modules/bibsched/lib/bibtask.py
@@ -544,7 +544,7 @@ def _task_run(task_run_fnc):
     ## initialize signal handler:
     _task_params['signal_request'] = None
     signal.signal(signal.SIGUSR1, _task_sig_sleep)
-    signal.signal(signal.SIGUSR2, _task_sig_ping)
+    signal.signal(signal.SIGUSR2, signal.SIG_IGN)
     signal.signal(signal.SIGTSTP, _task_sig_ctrlz)
     signal.signal(signal.SIGTERM, _task_sig_stop)
     signal.signal(signal.SIGQUIT, _task_sig_stop)

Reply via email to