Dear devs,
On 31/08/2010, I got the following error when trying to see any of the
predefined 'key' statistics on our test invenio installation. A few days
later, everything seemed to work without problems (FYI, nothing changed
in the meantime-fingers crossed). Could it be that on that day something
was miscalculated in the invenio stats code?
Unfortunately this test installation runs as a vserver and i cannot
change the date without affecting the host and the other (important)
vservers to replicate the error. So, by looking at the code, could you
spot any apparent reason why this happened on that date?
Thanks in advance :)
[Although the output is from v0.99.90.20091222, the same happened with
invenio 0.99.1 !]
Forced traceback (most recent call last):
Traceback (most recent call last):
File
"/usr/lib/python2.6/site-packages/invenio/webinterface_handler_wsgi.py",
line 352, in application
ret = invenio_handler(req)
File
"/usr/lib/python2.6/site-packages/invenio/webinterface_handler.py", line
296, in _profiler
return _handler(req)
File
"/usr/lib/python2.6/site-packages/invenio/webinterface_handler.py", line
338, in _handler
return root._traverse(req, path, False, guest_p)
File
"/usr/lib/python2.6/site-packages/invenio/webinterface_handler.py", line
191, in _traverse
return obj._traverse(req, path, do_head, guest_p)
File
"/usr/lib/python2.6/site-packages/invenio/webinterface_handler.py", line
202, in _traverse
result = _check_result(req, obj(req, form))
File
"/usr/lib/python2.6/site-packages/invenio/webstat_webinterface.py", line
108, in collection_population
body=perform_display_keyevent('collection population', argd, req,
ln=ln),
File "/usr/lib/python2.6/site-packages/invenio/webstat.py", line 593,
in perform_display_keyevent
[('timespan', ('Time span', _get_timespans())), ('format', ('Output
format', _get_formats()))])
File "/usr/lib/python2.6/site-packages/invenio/webstat.py", line 878,
in _get_timespans
to_str(dt.replace(year=dt.year-1,month=(dt.month+1) % 12)),
ValueError: day is out of range for month
Local variables:
environ = {'mod_wsgi.reload_mechanism': '1',
'mod_wsgi.listener_port': '80', 'HTTP_REFERER':
'http://invenio1.lib.auth.gr/stats/?ln=en', 'mod_wsgi.listener_host':
'', 'SERVER_SOFTWARE': 'Apache', 'SCRIPT_NAME': '', 'SERVER_SIGNATURE':
'', 'REQUEST_METHOD': 'GET', 'HTTP_KEEP_ALIVE': '115',
'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'PATH':
'/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.1.2:/opt/cd
[...]
possible_handler = None
possible_module = None
req = <invenio.webinterface_handler_wsgi.SimulatedModPythonRequest
object at 0x940b74c>
start_response = <built-in method start_response of mod_wsgi.Adapter
object at 0xb6e5a5c0>