geopython / demo.pygeoapi.io

Demo setup for https://demo.pygeoapi.io
MIT License
8 stars 13 forks source link

Some Collections in pygeoapi master and stable endpoints give error on queryables #53

Open justb4 opened 3 months ago

justb4 commented 3 months ago

Problem

On the demo server, log in and execute docker logs --follow pygeoapi_stable. This gives errors like:

[2024-03-27T14:23:58Z] {/usr/local/lib/python3.10/dist-packages/flask/app.py:828} ERROR - Exception on /collections/mapserver_world_map/queryables [GET]
Traceback (most recent call last):
  File "/pygeoapi/pygeoapi/util.py", line 542, in get_provider_by_type
    p = (next(d for i, d in enumerate(providers)
StopIteration

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/pygeoapi/pygeoapi/api.py", line 1508, in get_collection_queryables
    p = load_plugin('provider', get_provider_by_type(
  File "/pygeoapi/pygeoapi/util.py", line 545, in get_provider_by_type
    raise ProviderTypeError('Invalid provider type requested')
pygeoapi.provider.base.ProviderTypeError: Invalid provider type requested

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/pygeoapi/pygeoapi/util.py", line 542, in get_provider_by_type
    p = (next(d for i, d in enumerate(providers)
StopIteration

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/pygeoapi/pygeoapi/api.py", line 1513, in get_collection_queryables
    p = load_plugin('provider', get_provider_by_type(
  File "/pygeoapi/pygeoapi/util.py", line 545, in get_provider_by_type
    raise ProviderTypeError('Invalid provider type requested')
pygeoapi.provider.base.ProviderTypeError: Invalid provider type requested

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/pygeoapi/pygeoapi/util.py", line 542, in get_provider_by_type
    p = (next(d for i, d in enumerate(providers)
StopIteration

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/flask/app.py", line 1463, in wsgi_app
    response = self.full_dispatch_request()
  File "/usr/local/lib/python3.10/dist-packages/flask/app.py", line 872, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/usr/local/lib/python3.10/dist-packages/flask_cors/extension.py", line 176, in wrapped_function
    return cors_after_request(app.make_response(f(*args, **kwargs)))
  File "/usr/local/lib/python3.10/dist-packages/flask/app.py", line 870, in full_dispatch_request
    rv = self.dispatch_request()
  File "/usr/local/lib/python3.10/dist-packages/flask/app.py", line 855, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
  File "/pygeoapi/pygeoapi/flask_app.py", line 213, in collection_queryables
    return get_response(api_.get_collection_queryables(request, collection_id))
  File "/pygeoapi/pygeoapi/api.py", line 228, in inner
    headers, status, content = func(*args, **kwargs)
  File "/pygeoapi/pygeoapi/api.py", line 210, in inner
    return func(cls, req_out, *args[2:])
  File "/pygeoapi/pygeoapi/linked_data.py", line 60, in inner
    return func(*args, **kwargs)
  File "/pygeoapi/pygeoapi/api.py", line 1517, in get_collection_queryables
    p = load_plugin('provider', get_provider_by_type(
  File "/pygeoapi/pygeoapi/util.py", line 545, in get_provider_by_type
    raise ProviderTypeError('Invalid provider type requested')
pygeoapi.provider.base.ProviderTypeError: Invalid provider type requested

Analysis

justb4 commented 3 months ago

Edit: the problem is triggered from a remote client: https://qswega93.muc.moss.itn/wega-client/ not sure why it is issueing so many requests continuously.