Hi Tibor,
Here is invenio.err message concerning the record 60182:
***********************
* 2015-01-28 17:54:32 -> TypeError: 'NoneType' object is not iterable
(bibedit_engine.py:585:perform_request_record)
** User details
agent: Mozilla/5.0 (Windows NT 5.2;
WOW64; rv:35.0) Gecko/20100101 Firefox/35.0
email: [email protected]
group: ['jds']
guest: 0
language: en
login_method: Local
nickname: admin
precached_canseehiddenmarctags: True
precached_permitted_restricted_collections: []
precached_useadmin: True
precached_usealerts: True
precached_useapprove: True
precached_usebaskets: True
precached_usegroups: True
precached_useloans: True
precached_usemessages: True
precached_usepaperattribution: False
precached_usepaperclaim: False
precached_usestats: True
precached_viewclaimlink: False
precached_viewsubmissions: True
referer:
<http://lt-jds.jinr.ru/record/edit/?ln=en&>
remote_host:
remote_ip: 159.93.40.120
session: 32c21af9407bc848bd78632e0c212384
uid: 1
uri: </record/edit/?>
** Traceback details
Traceback (most recent call last):
File "/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py",
line 424, in _handler
return root._traverse(req, path, False, guest_p)
File "/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py",
line 239, in _traverse
return obj._traverse(req, path, do_head, guest_p)
File "/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py",
line 252, in _traverse
result = _check_result(req, obj(req, form))
File "/usr/lib64/python2.6/site-packages/invenio/bibedit_webinterface.py",
line 143, in index
json_data))
File "/usr/lib64/python2.6/site-packages/invenio/bibedit_engine.py", line
352, in perform_request_ajax
data))
File "/usr/lib64/python2.6/site-packages/invenio/bibedit_engine.py", line
585, in perform_request_record
record_revision, record = create_cache_file(recid, uid)
TypeError: 'NoneType' object is not iterable
** Stack frame details
Frame perform_request_record in
/usr/lib64/python2.6/site-packages/invenio/bibedit_engine.py at line 585
----------------------------------------------------------------------------
---
582 undo_list = []
583 redo_list = []
584 elif not existing_cache:
----> 585 record_revision, record =
create_cache_file(recid, uid)
586 mtime = get_cache_mtime(recid, uid)
587 pending_changes = []
588 disabled_hp_changes = {}
----------------------------------------------------------------------------
---
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
uid = '1'
ln = "'en'"
existing_cache = 'False'
read_only_mode = 'False'
record_status = '1'
request_type = "'getRecord'"
recid = '60182'
data = "{'inReadOnlyMode': False, 'requestType':
'getRecord', 'clonedRecord': False, 'recID': 60182, 'cacheMTime':
1422456848, 'deleteRecordCache': False, 'ID': 5}"
response = '{}'
Frame perform_request_ajax in
/usr/lib64/python2.6/site-packages/invenio/bibedit_engine.py at line 352
----------------------------------------------------------------------------
---
349 'deleteRecord', 'deleteRecordCache',
'prepareRecordMerge', 'revert'):
350 # 'Major' record related requests.
351 response.update(perform_request_record(req, request_type,
recid, uid,
----> 352 data))
353 elif request_type in ('addField', 'addSubfields', \
354 'addFieldsSubfieldsOnPositions',
'modifyContent', \
355 'modifySubfieldTag', 'modifyFieldTag',
\
----------------------------------------------------------------------------
---
uid = '1'
ln = "'en'"
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
request_type = "'getRecord'"
undo_redo = 'None'
recid = '60182'
isBulk = 'False'
data = "{'inReadOnlyMode': False, 'requestType':
'getRecord', 'clonedRecord': False, 'recID': 60182, 'cacheMTime':
1422456848, 'deleteRecordCache': False, 'ID': 5}"
response = '{}'
Frame index in
/usr/lib64/python2.6/site-packages/invenio/bibedit_webinterface.py at line
143
----------------------------------------------------------------------------
---
140 else:
141 # Handle AJAX request.
142 json_response.update(perform_request_ajax(req, recid,
uid,
----> 143 json_data))
144 return json.dumps(json_response)
145
146 def compare_revisions(self, req, form):
----------------------------------------------------------------------------
---
json_response = "{'resultCode': 0, 'recID': 60182, 'ID': 5}"
ajax_request = 'True'
uid = '1'
form = '{\'ln\': [Field(\'ln\', \'en\')],
\'jsondata\': [Field(\'jsondata\',
\'{"recID":60182,"requestType":"getRecord","deleteRecordCache":false,"cloned
Record":false,"inReadOnlyMode":false,"ID":5,"cacheMTime":1422456848}\')]}'
json_data = "{'inReadOnlyMode': False, 'requestType':
'getRecord', 'clonedRecord': False, 'recID': 60182, 'cacheMTime':
1422456848, 'deleteRecordCache': False, 'ID': 5}"
self =
'<invenio.bibedit_webinterface.WebInterfaceEditPages object at
0x7f03982b4f90>'
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
user_info = "{'uid': 1, 'agent': 'Mozilla/5.0 (Windows
NT 5.2; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0', 'uri':
'/record/edit/?', 'precached_viewclaimlink': False, 'session':
'32c21af9407bc848bd78632e0c212384', 'precached_useadmin': True, 'group':
['jds'], 'login_method': 'Local', 'precached_usepaperattribution': False,
'precached_usepaperclaim': False, 'precached_viewsubmissions': True,
'email': '[email protected]', 'precached_usealerts': True,
'precached_usestats': True, 'precached_usemessages': True [...]
recid = '60182'
argd = "{'ln': 'en'}"
Frame _traverse in
/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py at line
252
----------------------------------------------------------------------------
---
249 req.uri not in CFG_NO_LANG_RECOGNITION_URIS:
250 ln = get_preferred_user_language(req)
251 form.add_field('ln', ln)
----> 252 result = _check_result(req, obj(req, form))
253 return result
254
255 def __call__(self, req, form):
----------------------------------------------------------------------------
---
obj = '<bound method WebInterfaceEditPages.index
of <invenio.bibedit_webinterface.WebInterfaceEditPages object at
0x7f03982b4f90>>'
name = "'index'"
form = '{\'ln\': [Field(\'ln\', \'en\')],
\'jsondata\': [Field(\'jsondata\',
\'{"recID":60182,"requestType":"getRecord","deleteRecordCache":false,"cloned
Record":false,"inReadOnlyMode":false,"ID":5,"cacheMTime":1422456848}\')]}'
ln = "'en'"
guest_p = '0'
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
component = "''"
do_head = 'False'
path = '[]'
self =
'<invenio.bibedit_webinterface.WebInterfaceEditPages object at
0x7f03982b4f90>'
Frame _traverse in
/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py at line
239
----------------------------------------------------------------------------
---
236 # renderer. We even pass it the parsed form arguments.
237 if path:
238 if hasattr(obj, '_traverse'):
----> 239 return obj._traverse(req, path, do_head, guest_p)
240 else:
241 raise apache.SERVER_RETURN, apache.HTTP_NOT_FOUND
242
----------------------------------------------------------------------------
---
obj =
'<invenio.bibedit_webinterface.WebInterfaceEditPages object at
0x7f03982b4f90>'
name = 'None'
guest_p = '0'
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
component = "'record'"
do_head = 'False'
path = "['']"
self =
'<invenio.webinterface_layout.WebInterfaceInvenio object at 0x7f03b2de8210>'
Frame _handler in
/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py at line
445
----------------------------------------------------------------------------
---
442 args = cgi.parse_qs(req.args)
443 if 'debug' in args:
444 remote_debugger.error_msg(args['debug'])
----> 445 register_exception(req=req, alert_admin=True)
446 raise
447
448 # Serve an error by default.
----------------------------------------------------------------------------
---
allowed_methods = "('GET', 'POST', 'HEAD', 'OPTIONS', 'PUT')"
g = 'None'
guest_p = '0'
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
uri = "'/record/edit/'"
path = "['record', 'edit', '']"
root =
'<invenio.webinterface_layout.WebInterfaceInvenio object at 0x7f03b2de8210>'
bad_msie = 'None'
* 2015-01-28 17:54:33 -> TypeError: 'NoneType' object is not iterable
(bibedit_engine.py:585:perform_request_record)
** User details
agent: Mozilla/5.0 (Windows NT 5.2;
WOW64; rv:35.0) Gecko/20100101 Firefox/35.0
email: [email protected]
group: ['jds']
guest: 0
language: en
login_method: Local
nickname: admin
precached_canseehiddenmarctags: True
precached_permitted_restricted_collections: []
precached_useadmin: True
precached_usealerts: True
precached_useapprove: True
precached_usebaskets: True
precached_usegroups: True
precached_useloans: True
precached_usemessages: True
precached_usepaperattribution: False
precached_usepaperclaim: False
precached_usestats: True
precached_viewclaimlink: False
precached_viewsubmissions: True
referer:
<http://lt-jds.jinr.ru/record/edit/?ln=en&>
remote_host:
remote_ip: 159.93.40.120
session: 32c21af9407bc848bd78632e0c212384
uid: 1
uri: </record/edit/?>
** Traceback details
Traceback (most recent call last):
File
"/usr/lib64/python2.6/site-packages/invenio/webinterface_handler_wsgi.py",
line 506, in application
ret = invenio_handler(req)
File "/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py",
line 362, in _profiler
return _handler(req)
File "/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py",
line 424, in _handler
return root._traverse(req, path, False, guest_p)
File "/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py",
line 239, in _traverse
return obj._traverse(req, path, do_head, guest_p)
File "/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py",
line 252, in _traverse
result = _check_result(req, obj(req, form))
File "/usr/lib64/python2.6/site-packages/invenio/bibedit_webinterface.py",
line 143, in index
json_data))
File "/usr/lib64/python2.6/site-packages/invenio/bibedit_engine.py", line
352, in perform_request_ajax
data))
File "/usr/lib64/python2.6/site-packages/invenio/bibedit_engine.py", line
585, in perform_request_record
record_revision, record = create_cache_file(recid, uid)
TypeError: 'NoneType' object is not iterable
** Stack frame details
Frame perform_request_record in
/usr/lib64/python2.6/site-packages/invenio/bibedit_engine.py at line 585
----------------------------------------------------------------------------
---
582 undo_list = []
583 redo_list = []
584 elif not existing_cache:
----> 585 record_revision, record =
create_cache_file(recid, uid)
586 mtime = get_cache_mtime(recid, uid)
587 pending_changes = []
588 disabled_hp_changes = {}
----------------------------------------------------------------------------
---
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
uid = '1'
ln = "'en'"
existing_cache = 'False'
read_only_mode = 'False'
record_status = '1'
request_type = "'getRecord'"
recid = '60182'
data = "{'inReadOnlyMode': False, 'requestType':
'getRecord', 'clonedRecord': False, 'recID': 60182, 'cacheMTime':
1422456848, 'deleteRecordCache': False, 'ID': 5}"
response = '{}'
Frame perform_request_ajax in
/usr/lib64/python2.6/site-packages/invenio/bibedit_engine.py at line 352
----------------------------------------------------------------------------
---
349 'deleteRecord', 'deleteRecordCache',
'prepareRecordMerge', 'revert'):
350 # 'Major' record related requests.
351 response.update(perform_request_record(req, request_type,
recid, uid,
----> 352 data))
353 elif request_type in ('addField', 'addSubfields', \
354 'addFieldsSubfieldsOnPositions',
'modifyContent', \
355 'modifySubfieldTag', 'modifyFieldTag',
\
----------------------------------------------------------------------------
---
uid = '1'
ln = "'en'"
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
request_type = "'getRecord'"
undo_redo = 'None'
recid = '60182'
isBulk = 'False'
data = "{'inReadOnlyMode': False, 'requestType':
'getRecord', 'clonedRecord': False, 'recID': 60182, 'cacheMTime':
1422456848, 'deleteRecordCache': False, 'ID': 5}"
response = '{}'
Frame index in
/usr/lib64/python2.6/site-packages/invenio/bibedit_webinterface.py at line
143
----------------------------------------------------------------------------
---
140 else:
141 # Handle AJAX request.
142 json_response.update(perform_request_ajax(req, recid,
uid,
----> 143 json_data))
144 return json.dumps(json_response)
145
146 def compare_revisions(self, req, form):
----------------------------------------------------------------------------
---
json_response = "{'resultCode': 0, 'recID': 60182, 'ID': 5}"
ajax_request = 'True'
uid = '1'
form = '{\'ln\': [Field(\'ln\', \'en\')],
\'jsondata\': [Field(\'jsondata\',
\'{"recID":60182,"requestType":"getRecord","deleteRecordCache":false,"cloned
Record":false,"inReadOnlyMode":false,"ID":5,"cacheMTime":1422456848}\')]}'
json_data = "{'inReadOnlyMode': False, 'requestType':
'getRecord', 'clonedRecord': False, 'recID': 60182, 'cacheMTime':
1422456848, 'deleteRecordCache': False, 'ID': 5}"
self =
'<invenio.bibedit_webinterface.WebInterfaceEditPages object at
0x7f03982b4f90>'
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
user_info = "{'uid': 1, 'agent': 'Mozilla/5.0 (Windows
NT 5.2; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0', 'uri':
'/record/edit/?', 'precached_viewclaimlink': False, 'session':
'32c21af9407bc848bd78632e0c212384', 'precached_useadmin': True, 'group':
['jds'], 'login_method': 'Local', 'precached_usepaperattribution': False,
'precached_usepaperclaim': False, 'precached_viewsubmissions': True,
'email': '[email protected]', 'precached_usealerts': True,
'precached_usestats': True, 'precached_usemessages': True [...]
recid = '60182'
argd = "{'ln': 'en'}"
Frame _traverse in
/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py at line
252
----------------------------------------------------------------------------
---
249 req.uri not in CFG_NO_LANG_RECOGNITION_URIS:
250 ln = get_preferred_user_language(req)
251 form.add_field('ln', ln)
----> 252 result = _check_result(req, obj(req, form))
253 return result
254
255 def __call__(self, req, form):
----------------------------------------------------------------------------
---
obj = '<bound method WebInterfaceEditPages.index
of <invenio.bibedit_webinterface.WebInterfaceEditPages object at
0x7f03982b4f90>>'
name = "'index'"
form = '{\'ln\': [Field(\'ln\', \'en\')],
\'jsondata\': [Field(\'jsondata\',
\'{"recID":60182,"requestType":"getRecord","deleteRecordCache":false,"cloned
Record":false,"inReadOnlyMode":false,"ID":5,"cacheMTime":1422456848}\')]}'
ln = "'en'"
guest_p = '0'
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
component = "''"
do_head = 'False'
path = '[]'
self =
'<invenio.bibedit_webinterface.WebInterfaceEditPages object at
0x7f03982b4f90>'
Frame _traverse in
/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py at line
239
----------------------------------------------------------------------------
---
236 # renderer. We even pass it the parsed form arguments.
237 if path:
238 if hasattr(obj, '_traverse'):
----> 239 return obj._traverse(req, path, do_head, guest_p)
240 else:
241 raise apache.SERVER_RETURN, apache.HTTP_NOT_FOUND
242
----------------------------------------------------------------------------
---
obj =
'<invenio.bibedit_webinterface.WebInterfaceEditPages object at
0x7f03982b4f90>'
name = 'None'
guest_p = '0'
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
component = "'record'"
do_head = 'False'
path = "['']"
self =
'<invenio.webinterface_layout.WebInterfaceInvenio object at 0x7f03b2de8210>'
Frame _handler in
/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py at line
446
----------------------------------------------------------------------------
---
443 if 'debug' in args:
444 remote_debugger.error_msg(args['debug'])
445 register_exception(req=req, alert_admin=True)
----> 446 raise
447
448 # Serve an error by default.
449 raise apache.SERVER_RETURN, apache.HTTP_NOT_FOUND
----------------------------------------------------------------------------
---
allowed_methods = "('GET', 'POST', 'HEAD', 'OPTIONS', 'PUT')"
g = 'None'
guest_p = '0'
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
uri = "'/record/edit/'"
path = "['record', 'edit', '']"
root =
'<invenio.webinterface_layout.WebInterfaceInvenio object at 0x7f03b2de8210>'
bad_msie = 'None'
Frame _profiler in
/usr/lib64/python2.6/site-packages/invenio/webinterface_handler.py at line
362
----------------------------------------------------------------------------
---
359 raise Exception('Debugging requested, but no
debugger registered: "%s"' % args['debug'])
360 return _handler(req)
361 else:
----> 362 return _handler(req)
363
364 def _handler(req):
365 """ This handler is invoked by mod_python with the apache
request."""
----------------------------------------------------------------------------
---
_handler = '<function _handler at 0x7f03b2dcd140>'
args = '{}'
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
Frame application in
/usr/lib64/python2.6/site-packages/invenio/webinterface_handler_wsgi.py at
line 523
----------------------------------------------------------------------------
---
520 else:
521 req.flush()
522 except:
----> 523 register_exception(req=req, alert_admin=True)
524 if not req.response_sent_p:
525 req.status = HTTP_INTERNAL_SERVER_ERROR
526 req.headers_out['content-type'] = 'text/html'
----------------------------------------------------------------------------
---
start_response = '<built-in method start_response of
mod_wsgi.Adapter object at 0x7f03aec3a558>'
environ = '{\'mod_wsgi.listener_port\': \'80\',
\'HTTP_REFERER\': \'http://lt-jds.jinr.ru/record/edit/?ln=en&\',
\'mod_wsgi.listener_host\': \'159.93.33.28\', \'SERVER_SOFTWARE\':
\'Apache\', \'SCRIPT_NAME\': \'\', \'mod_wsgi.handler_script\': \'\',
\'SERVER_SIGNATURE\': \'\', \'REQUEST_METHOD\': \'POST\', \'PATH_INFO\':
\'/record/edit/\', \'SERVER_PROTOCOL\': \'HTTP/1.1\', \'QUERY_STRING\':
\'\', \'CONTENT_LENGTH\': \'213\', \'HTTP_USER_AGENT\': \'Mozilla/5.0
(Windows NT 5.2; WOW64; rv:35.0) Gecko/201001 [...]
req =
'<invenio.webinterface_handler_wsgi.SimulatedModPythonRequest object at
0x7f03b2d73dd0>'
possible_handler = 'None'
possible_module = 'None'
> -----Original Message-----
> From: Tibor Simko [mailto:[email protected]]
> Sent: Wednesday, January 28, 2015 4:30 PM
> To: Genis Musulmanbekov
> Cc: 'project-invenio-general'
> Subject: Re: Records with encoding errors
>
> On Wed, 28 Jan 2015, Genis Musulmanbekov wrote:
> > When I am trying to see one of them by Record Editor. It responses
> > with an error:
>
> The message says that an Internal Server Error happened. This
> indicates a trouble with the Python code on the server side. Can you
> please look into `/opt/invenio/var/log/invenio.err` where you should
> see more information about the problem, including Python stack trace
> etc?
>
> Best regards
> --
> Tibor Simko