keitaroinc / docker-ckan

CKAN docker images, docker-compose and examples
Apache License 2.0
72 stars 51 forks source link

500 Server Error: INTERNAL SERVER ERROR for url: http://datapusher:8000/job[BUG] #57

Closed dpadron closed 3 years ago

dpadron commented 3 years ago

Describe the bug I have installed docker-ckan 2.9.4.

Docker images affected

  1. CKAN 2.9.4

Expected behaviour When uploading a .csv file it is stored physically but not in the datastore

Logs Upload error: An Error occurred while sending the job: 500 Server Error: INTERNAL SERVER ERROR for url: http://datapusher:8000/job

mikelhpdatke commented 3 years ago

This problem occurs cause the image use Python 3.9 Version, while packages of project used older python version. So you should use previous image. E.g: https://hub.docker.com/layers/keitaro/ckan-datapusher/latest/images/sha256-5bf1a45f45c14c97674629318eba7e58dd28d7674dd9e6b05fe91ae2238cc5b5?context=explore

dpadron commented 3 years ago

Thank you very much, I did what you tell me and it works correctly. Thanks

weeix commented 2 years ago

Maybe we should fix this. I'll open a pull request.

Additional Info

From docker-compose logs -f:

datapusher    | Exception on /job [POST]
datapusher    | Traceback (most recent call last):
datapusher    |   File "/usr/lib/python3.9/site-packages/flask/app.py", line 2070, in wsgi_app
datapusher    |     response = self.full_dispatch_request()
datapusher    |   File "/usr/lib/python3.9/site-packages/flask/app.py", line 1515, in full_dispatch_request
datapusher    |     rv = self.handle_user_exception(e)
datapusher    |   File "/usr/lib/python3.9/site-packages/flask/app.py", line 1513, in full_dispatch_request
datapusher    |     rv = self.dispatch_request()
datapusher    |   File "/usr/lib/python3.9/site-packages/flask/app.py", line 1499, in dispatch_request
datapusher    |     return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
datapusher    |   File "/usr/lib/python3.9/site-packages/ckanserviceprovider/web.py", line 652, in job
datapusher    |     return run_asynchronous_job(asynchronous_job, job_id, job_key, input)
datapusher    |   File "/usr/lib/python3.9/site-packages/ckanserviceprovider/web.py", line 687, in run_asynchronous_job
datapusher    |     if not scheduler.running:
datapusher    |   File "/usr/lib/python3.9/site-packages/apscheduler/scheduler.py", line 148, in running
datapusher    |     thread_alive = self._thread and self._thread.isAlive()
datapusher    | AttributeError: 'Thread' object has no attribute 'isAlive'
ckan          | 2022-01-17 09:12:55,205 CRITI [ckanext.datapusher.plugin] None - {'message': 'An Error occurred while sending the job: 500 Server Error: INTERNAL SERVER ERROR for url: http://datapusher:8000/job', 'details': '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">\n<title>500 Internal Server Error</title>\n<h1>Internal Server Error</h1>\n<p>The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.</p>\n', 'status_code': 500}

From Web UI:

Could not load view: DataProxy returned an error (Data transformation failed. error: An error occured while connecting to the server: DNS lookup failed for URL: http://localhost:5000/dataset/847671b3-93bf-49dd-80b1-d2a4eea7a6a0/resource/cf5352c8-4fc1-46b3-bb79-8aec24897d23/download/wise_nea_comet_discovery_statistics.csv)

blazhovsky commented 2 years ago

This is now fixed with #63 . We went back to using Alpine 3.13 which uses python 3.8 by default and will stick with it until it reaches EOL.