Skip to content

Meta param causes 500 #5

Description

@tomsaleeba

Steps:

  • launch server
  • upload an image if none are present
  • request an image in original size to assert it work, e.g: /images/some/file
  • request that same image but with meta=True, so /images/some/file?meta=True

Expected behaviour:
The JSON metadata is returned. Likely there isn't any metadata so an empty dict or array would probably be the result. Not a 500 in any case.

Actual behaviour:
The server responds with a 500 and the following response:

{
message: "Internal Server Error"
}

The logs for the server show:

10.44.0.0 - - [15/Nov/2017:00:19:52 +0000] "GET /images/chickens/bertie?meta HTTP/1.1" 400 48 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.79 Safari/537.36" "129.127.180.228"
[pid: 39|app: 0|req: 5/8] 10.44.0.0 () {54 vars in 1144 bytes} [Wed Nov 15 00:19:52 2017] GET /images/chickens/bertie?meta => generated 48 bytes in 11 msecs (HTTP/1.1 400) 2 headers in 80 bytes (1 switches on core 0)
[2017-11-15 00:19:58,815] ERROR in (unknown file): Exception on /images/chickens/bertie [GET]
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/flask/app.py", line 1612, in full_dispatch_request
    rv = self.dispatch_request()
  File "/usr/local/lib/python2.7/site-packages/flask/app.py", line 1598, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/usr/local/lib/python2.7/site-packages/Flask_RESTful-0.3.6-py2.7.egg/flask_restful/__init__.py", line 480, in wrapper
    resp = resource(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/flask/views.py", line 84, in view
    return self.dispatch_request(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/Flask_RESTful-0.3.6-py2.7.egg/flask_restful/__init__.py", line 595, in dispatch_request
    resp = meth(*args, **kwargs)
  File "./Restful.py", line 122, in get
    return [ ( str(image.name), image._get_metadata()) for image in master.get_original_images(image_names, regexp) ]
  File "./Caches.py", line 1470, in get_original_images
    return [base_images[name]]
TypeError: unhashable type: 'list'
10.44.0.0 - - [15/Nov/2017:00:19:58 +0000] "GET /images/chickens/bertie?meta=True HTTP/1.1" 500 37 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.79 Safari/537.36" "129.127.180.228"
[pid: 40|app: 0|req: 4/9] 10.44.0.0 () {54 vars in 1154 bytes} [Wed Nov 15 00:19:58 2017] GET /images/chickens/bertie?meta=True => generated 37 bytes in 18 msecs (HTTP/1.1 500) 2 headers in 90 bytes (1 switches on core 0)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions