Hello everyone,
I recently migrated from my old 0.9xxx version to the brand new 1.0rc0 on a 
test server. As my collections seemed broken, i began reindexing (following 
point 4.3 from /help/admin/bibindex-admin-guide).

The bibindex --reindex task ended with an error status. This is what the 
bibsched_task_xxx.log returns (the .err file is empty) 

2011-03-03 09:59:48 --> tmp_idxPHRASE18F normal wordtable flush ended
2011-03-03 09:59:48 --> 40615 records took 44.6 seconds to complete.(54580 
recs/min)
2011-03-03 09:59:48 --> Estimated runtime: 2.3 minutes
2011-03-03 09:59:48 --> tmp_idxPHRASE18F contains 26486 words from 40615 records
2011-03-03 09:59:48 --> tmp_idxPHRASE18F is in consistent state
2011-03-03 09:59:48 --> Putting new tmp index tables for id 18 into production
2011-03-03 09:59:49 --> Task #1070450 finished. [ERROR]

The error is a bit more detailed in invenio.err (you'll find an excerpt 
attached to this mail).

What can I do to fix this?

Best regards,
Greg


____________________________________________________________________

Gregory Favre
Coordinateur Infoscience
École Polytechnique Fédérale de Lausanne
KIS - DIT
Case Postale 121
CH-1015 Lausanne
+41 21 693 22 88
+ 41 79 599 09 06
[email protected]
http://plan.epfl.ch/?sciper=128933
____________________________________________________________________



The following problem occurred on <http://infoscience.epfl.ch> (Invenio 
1.0.0-rc0)

>> 2011-03-03 09:59:49 -> OperationalError: (1017, "Can't find file: 
>> './infoscience/idxPAIR18R.frm' (errno: 2)")

>>> User details

No client information available

>>> Traceback details

Traceback (most recent call last):
  File 
"/var/www/infoscience.epfl.ch/private/infoscience-env/lib/python2.6/site-packages/invenio/bibtask.py",
 line 754, in _task_run
    if callable(task_run_fnc) and task_run_fnc():
  File 
"/var/www/infoscience.epfl.ch/private/infoscience-env/lib/python2.6/site-packages/invenio/bibindex_engine.py",
 line 1711, in task_run_core
    swap_temporary_reindex_tables(index_id, reindex_prefix)
  File 
"/var/www/infoscience.epfl.ch/private/infoscience-env/lib/python2.6/site-packages/invenio/bibindex_engine.py",
 line 344, in swap_temporary_reindex_tables
    "%sidxPHRASE%02dF TO idxPHRASE%02dF;" % (reindex_prefix, index_id, index_id)
  File 
"/var/www/infoscience.epfl.ch/private/infoscience-env/lib/python2.6/site-packages/invenio/dbquery.py",
 line 166, in run_sql
    rc = cur.execute(sql, param)
  File "/usr/lib/pymodules/python2.6/MySQLdb/cursors.py", line 166, in execute
    self.errorhandler(self, exc, value)
  File "/usr/lib/pymodules/python2.6/MySQLdb/connections.py", line 35, in 
defaulterrorhandler
    raise errorclass, errorvalue
OperationalError: (1017, "Can't find file: './infoscience/idxPAIR18R.frm' 
(errno: 2)")
Locals by frame, innermost last

>>>> Frame <module> in 
>>>> /var/www/infoscience.epfl.ch/private/invenio/bin/bibindex at line 66
*******************************************************************************
        63     import sys
        64     sys.exit(1)
        65 
---->   66 main()
*******************************************************************************
                __builtins__ =  "<module '__builtin__' (built-in)>"
                    __file__ =  
"'/var/www/infoscience.epfl.ch/private/invenio/bin/bibindex'"
                 __package__ =  'None'
                    __name__ =  "'__main__'"
                        main =  '<function main at 0x2a7af50>'
                     __doc__ =  "'\\nBibIndex bibliographic data, reference and 
fulltext indexing utility.\\n\\nUsage: bibindex %s [options] \\nExamples:\\n    
   bibindex -a -i 234-250,293,300-500 -u admin@localhost\\n       bibindex -a 
-w author,fulltext -M 8192 -v3\\n       bibindex -d -m +4d -A on 
--flush=10000\\n\\n Indexing options:\\n -a,  --add                add or 
update words for selected records\\n -d,  --del                delete words for 
selected records\\n -i,  --id=low[-high]      select according to record re 
[...]

>>>> Frame main in 
>>>> /var/www/infoscience.epfl.ch/private/infoscience-env/lib/python2.6/site-packages/invenio/bibindex_engine.py
>>>>  at line 1377
*******************************************************************************
      1374             task_stop_helper_fnc=task_stop_table_close_fnc,
      1375             
task_submit_elaborate_specific_parameter_fnc=task_submit_elaborate_specific_parameter,
      1376             task_run_fnc=task_run_core,
----> 1377             task_submit_check_options_fnc=task_submit_check_options)
      1378 
      1379 def task_submit_check_options():
      1380     """Check for options compatibility."""
*******************************************************************************

>>>> Frame task_init in 
>>>> /var/www/infoscience.epfl.ch/private/infoscience-env/lib/python2.6/site-packages/invenio/bibtask.py
>>>>  at line 356
*******************************************************************************
       353                     ret = _task_run(task_run_fnc)
       354                     write_message("ERROR: The Python Profiler is not 
installed!", stream=sys.stderr)
       355             else:
---->  356                 ret = _task_run(task_run_fnc)
       357             if not ret:
       358                 write_message("Error occurred.  Exiting.", 
sys.stderr)
       359         except Exception, e:
*******************************************************************************
        task_submit_check_options_fnc =  '<function task_submit_check_options 
at 0x2a7daa0>'
        task_stop_helper_fnc =  '<function task_stop_table_close_fnc at 
0x2a7db90>'
                     version =  "'$Id$'"
         help_specific_usage =  "' Indexing options:\\n  -a, --add\\t\\tadd or 
update words for selected records\\n  -d, --del\\t\\tdelete words for selected 
records\\n  -i, --id=low[-high]\\t\\tselect according to doc recID\\n  -m, 
--modified=from[,to]\\tselect according to modification date\\n  -c, 
--collection=c1[,c2]\\tselect according to collection\\n  -R, 
--reindex\\treindex the selected indexes from scratch\\n\\n Repairing 
options:\\n  -k, --check\\t\\tcheck consistency for all records in the 
table(s)\\n  -r, --repair\\ [...]
             to_be_submitted =  'False'
                        argv =  
"['/var/www/infoscience.epfl.ch/private/invenio/bin/bibindex', '-u', 'admin', 
'--reindex', '-f50000']"
             specific_params =  "('adi:m:c:w:krRM:f:', ['add', 'del', 'id=', 
'modified=', 'collection=', 'windex=', 'check', 'repair', 'reindex', 'maxmem=', 
'flush='])"
                task_run_fnc =  '<function task_run_core at 0x2a7dc08>'
        authorization_action =  "'runbibindex'"
        task_submit_elaborate_specific_parameter_fnc =  '<function 
task_submit_elaborate_specific_parameter at 0x2a7db18>'
           authorization_msg =  "'BibIndex Task Submission'"
                 description =  
"'Examples:\\n\\t/var/www/infoscience.epfl.ch/private/invenio/bin/bibindex -a 
-i 234-250,293,300-500 -u 
admin@localhost\\n\\t/var/www/infoscience.epfl.ch/private/invenio/bin/bibindex 
-a -w author,fulltext -M 8192 -v3\\n            
\\t/var/www/infoscience.epfl.ch/private/invenio/bin/bibindex -d -m +4d -A on 
--flush=10000\\n'"

>>>> Frame _task_run in 
>>>> /var/www/infoscience.epfl.ch/private/infoscience-env/lib/python2.6/site-packages/invenio/bibtask.py
>>>>  at line 761
*******************************************************************************
       758         except SystemExit:
       759             pass
       760         except:
---->  761             register_exception(alert_admin=True)
       762             task_update_status("ERROR")
       763     finally:
       764         task_status = task_read_status()
*******************************************************************************
                   sleeptime =  "''"
                    time_now =  '1299138284.027539'
                pidfile_name =  
"'/var/www/infoscience.epfl.ch/private/invenio/var/run/bibsched_task_1070450.pid'"
                task_run_fnc =  '<function task_run_core at 0x2a7dc08>'
                 task_status =  "'WAITING'"
                     pidfile =  "<closed file 
'/var/www/infoscience.epfl.ch/private/invenio/var/run/bibsched_task_1070450.pid',
 mode 'w' at 0x2a6c420>"

>>>> Frame task_run_core in 
>>>> /var/www/infoscience.epfl.ch/private/infoscience-env/lib/python2.6/site-packages/invenio/bibindex_engine.py
>>>>  at line 1711
*******************************************************************************
      1708         task_sleep_now_if_required(can_stop_too=True)
      1709 
      1710         if task_get_option("reindex"):
----> 1711             swap_temporary_reindex_tables(index_id, reindex_prefix)
      1712             update_index_last_updated(index_id, 
task_get_task_param('task_starting_time'))
      1713         task_sleep_now_if_required(can_stop_too=True)
      1714 
*******************************************************************************
        fnc_get_pairs_from_phrase =  '<function get_pairs_from_phrase at 
0x2a7a6e0>'
                  index_tags =  "['0247_a']"
           is_fulltext_index =  'False'
              reindex_prefix =  "'tmp_'"
                  index_name =  "'doi'"
                  wordTables =  "[(3, 'abstract', ['520__%']), (14, 
'affiliation', ['973__a']), (4, 'author', ['700__%', '773__a']), (2, 
'collection', ['980__a']), (18, 'doi', ['0247_a']), (16, 'fulltext', 
['85640x']), (1, 'global', ['50%', '63%', '64%', '65%', '66%', '67%', '68%', 
'69%', '70%', '71%', '72%', '62%', '61%', '51%', '52%', '53%', '54%', '55%', 
'56%', '57%', '58%', '59%', '60%', '73%', '74%', '75%', '88%', '89%', '90%', 
'91%', '92%', '93%', '94%', '95%', '96%', '97%', '87%', '86%', '76%', '77%', 
'78%', '79%', '80% [...]
                   wordTable =  '<invenio.bibindex_engine.WordTable instance at 
0x2d2b5a8>'
        fnc_get_phrases_from_phrase =  '<function get_phrases_from_phrase at 
0x2a7a758>'
        fnc_get_words_from_phrase =  '<function get_words_from_phrase at 
0x2a7a668>'
                    index_id =  '18'

>>>> Frame swap_temporary_reindex_tables in 
>>>> /var/www/infoscience.epfl.ch/private/infoscience-env/lib/python2.6/site-packages/invenio/bibindex_engine.py
>>>>  at line 344
*******************************************************************************
       341         "idxPHRASE%02dR TO old_idxPHRASE%02dR," % (index_id, 
index_id) +
       342         "%sidxPHRASE%02dR TO idxPHRASE%02dR," % (reindex_prefix, 
index_id, index_id) +
       343         "idxPHRASE%02dF TO old_idxPHRASE%02dF," % (index_id, 
index_id) +
---->  344         "%sidxPHRASE%02dF TO idxPHRASE%02dF;" % (reindex_prefix, 
index_id, index_id)
       345     )
       346     write_message("Dropping old index tables for id %s" % index_id)
       347     run_sql("DROP TABLE old_idxWORD%02dR, old_idxWORD%02dF, 
old_idxPAIR%02dR, old_idxPAIR%02dF, old_idxPHRASE%02dR, old_idxPHRASE%02dF" % 
(index_id, index_id, index_id, index_id, index_id, index_id)
*******************************************************************************
              reindex_prefix =  "'tmp_'"
                    index_id =  '18'

>>>> Frame run_sql in 
>>>> /var/www/infoscience.epfl.ch/private/infoscience-env/lib/python2.6/site-packages/invenio/dbquery.py
>>>>  at line 168
*******************************************************************************
       165             cur = db.cursor()
       166             rc = cur.execute(sql, param)
       167         except OperationalError: # again an unexpected disconnect, 
bad malloc error, etc
---->  168             raise
       169 
       170     if string.upper(string.split(sql)[0]) in ("SELECT", "SHOW", 
"DESC", "DESCRIBE"):
       171         if n:
*******************************************************************************
                         cur =  '<MySQLdb.cursors.Cursor object at 
0x7f379dbabb90>'
                   with_desc =  '0'
                          db =  "<_mysql.connection open to 'localhost' at 
2acab40>"
                       param =  'None'
                           n =  '0'
                         sql =  "'RENAME TABLE idxWORD18R TO 
old_idxWORD18R,tmp_idxWORD18R TO idxWORD18R,idxWORD18F TO 
old_idxWORD18F,tmp_idxWORD18F TO idxWORD18F,idxPAIR18R TO 
old_idxPAIR18R,tmp_idxPAIR18R TO idxPAIR18R,idxPAIR18F TO 
old_idxPAIR18F,tmp_idxPAIR18F TO idxPAIR18F,idxPHRASE18R TO 
old_idxPHRASE18R,tmp_idxPHRASE18R TO idxPHRASE18R,idxPHRASE18F TO 
old_idxPHRASE18F,tmp_idxPHRASE18F TO idxPHRASE18F;'"

>>>> Frame execute in /usr/lib/pymodules/python2.6/MySQLdb/cursors.py at line 
>>>> 166
*******************************************************************************
       163             exc, value, tb = exc_info()
       164             del tb
       165             self.messages.append((exc, value))
---->  166             self.errorhandler(self, exc, value)
       167         self._executed = query
       168         if not self._defer_warnings: self._warning_check()
       169         return r
*******************************************************************************
                        args =  'None'
                         exc =  "<class '_mysql_exceptions.OperationalError'>"
                        self =  '<MySQLdb.cursors.Cursor object at 
0x7f379dbabb90>'
                     charset =  "'utf8'"
                          db =  '<weakproxy at 0x7f379db4bba8 to Connection at 
0x2acab40>'
                       value =  'OperationalError(1017, "Can\'t find file: 
\'./infoscience/idxPAIR18R.frm\' (errno: 2)")'
                       query =  "'RENAME TABLE idxWORD18R TO 
old_idxWORD18R,tmp_idxWORD18R TO idxWORD18R,idxWORD18F TO 
old_idxWORD18F,tmp_idxWORD18F TO idxWORD18F,idxPAIR18R TO 
old_idxPAIR18R,tmp_idxPAIR18R TO idxPAIR18R,idxPAIR18F TO 
old_idxPAIR18F,tmp_idxPAIR18F TO idxPAIR18F,idxPHRASE18R TO 
old_idxPHRASE18R,tmp_idxPHRASE18R TO idxPHRASE18R,idxPHRASE18F TO 
old_idxPHRASE18F,tmp_idxPHRASE18F TO idxPHRASE18F;'"
                    ListType =  "<type 'list'>"
                    exc_info =  '<built-in function exc_info>'
                   TupleType =  "<type 'tuple'>"

>>>> Frame defaulterrorhandler in 
>>>> /usr/lib/pymodules/python2.6/MySQLdb/connections.py at line 35
*******************************************************************************
        32         connection.messages.append(error)
        33     del cursor
        34     del connection
---->   35     raise errorclass, errorvalue
        36 
        37 
        38 class Connection(_mysql.connection):
*******************************************************************************
                  errorclass =  "<class '_mysql_exceptions.OperationalError'>"
                  errorvalue =  'OperationalError(1017, "Can\'t find file: 
\'./infoscience/idxPAIR18R.frm\' (errno: 2)")'
                       error =  '(<class 
\'_mysql_exceptions.OperationalError\'>, OperationalError(1017, "Can\'t find 
file: \'./infoscience/idxPAIR18R.frm\' (errno: 2)"))'

Reply via email to