Error 500 with series
Following #635 (closed)
Could be related to #660 (closed) and https://forum.db.nomics.world/t/problem-retrieving-1-time-series-via-python-api/334
User report
Unfortunately I get now an error for this: df.ecb.mc<-rdb(ids="ECB/ILM/W.U2.C.L020500.U2.EUR"), which worked previously.
Also I have noticed that data from the Fed is no longer available, for example: rdb("FED/G17_IP_MAJOR_INDUSTRY_GROUPS/129.B50001.SA") But I think this is a unrelated to the issue with the ECB data (at least the error message is different).
Error stack trace
ERROR:flask.app:Exception on /series/ECB/ILM [GET]
Traceback (most recent call last):
File "/home/cepremap/virtualenvs/dbnomics-api-v22/lib/python3.5/site-packages/flask/app.py", line 2292, in wsgi_app
response = self.full_dispatch_request()
File "/home/cepremap/virtualenvs/dbnomics-api-v22/lib/python3.5/site-packages/flask/app.py", line 1815, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/home/cepremap/virtualenvs/dbnomics-api-v22/lib/python3.5/site-packages/flask_cors/extension.py", line 161, in wrapped_function
return cors_after_request(app.make_response(f(*args, **kwargs)))
File "/home/cepremap/virtualenvs/dbnomics-api-v22/lib/python3.5/site-packages/flask/app.py", line 1718, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/home/cepremap/virtualenvs/dbnomics-api-v22/lib/python3.5/site-packages/flask/_compat.py", line 35, in reraise
raise value
File "/home/cepremap/virtualenvs/dbnomics-api-v22/lib/python3.5/site-packages/flask/app.py", line 1813, in full_dispatch_request
rv = self.dispatch_request()
File "/home/cepremap/virtualenvs/dbnomics-api-v22/lib/python3.5/site-packages/flask/app.py", line 1799, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/home/cepremap/virtualenvs/dbnomics-api-v22/lib/python3.5/site-packages/flasgger/utils.py", line 248, in wrapper
return function(*args, **kwargs)
File "/home/cepremap/dbnomics-api-v22/dbnomics-api/dbnomics_api/route_handlers.py", line 406, in series_of_dataset
dataset_dir, dataset_json, series_codes, series_solr_by_id, args["observations"])
File "/home/cepremap/dbnomics-api-v22/dbnomics-api/dbnomics_api/json_responses.py", line 220, in build_series_list_for_dataset
series = add_observations(series, observations1)
File "/home/cepremap/dbnomics-api-v22/dbnomics-api/dbnomics_api/json_responses.py", line 76, in add_observations
new_attributes["period_start_day"] = list(map(period_to_start_day, periods))
File "/home/cepremap/virtualenvs/dbnomics-api-v22/lib/python3.5/site-packages/dbnomics_data_model/observations.py", line 741, in period_to_start_day
return datetime.strptime("{}-1".format(period), "%G-W%V-%u").date()
File "/usr/lib/python3.5/_strptime.py", line 510, in _strptime_datetime
tt, fraction = _strptime(data_string, format)
File "/usr/lib/python3.5/_strptime.py", line 335, in _strptime
(bad_directive, format)) from None
ValueError: 'G' is a bad directive in format '%G-W%V-%u'
Analysis
- on the server we use python 3.5 and
%G
has been introduced by python 3.6 (cf https://docs.python.org/3/library/datetime.html) - we should deploy apps using Docker instead of using Debian version
Tasks
-
find errors -
fix errors -
deploy fixes