Open-EO / openeo-geopyspark-driver

OpenEO driver for GeoPySpark (Geotrellis)
Apache License 2.0
26 stars 4 forks source link

byoc id as property #159

Open jdries opened 2 years ago

jdries commented 2 years ago

Original discussion: https://github.com/openEOPlatform/architecture-docs/issues/4

So we want:

byoc_collection_id = 'byoc-...'

toc = connection.load_collection(
    collection_id="PLANETSCOPE",
    spatial_extent={"west": -17.32709, "south": 14.74847, "east": -17.31364, "north": 14.7617},
    temporal_extent=["2021-05-11", "2021-05-11"],
    bands=["B4", "B3", "B2"],
   properties = {"byoc_id":lambda id:id==byoc_collection_id}
)
jdries commented 2 years ago

So it's moving byoc_collection_id from feature flags into a property of the collection. @bossie can also help!

bossie commented 2 years ago

Tried it out but the back-end returns an error:

openeo.rest.OpenEoApiError: [500] Internal: Server error: ValueError('too many values to unpack (expected 2)') (ref: 5bbc0a2f-c630-4d9f-8cec-5a2b8bba9986)
jdries commented 2 years ago

The full error: {"message": "ValueError('too many values to unpack (expected 2)')", "levelname": "ERROR", "name": "openeo_driver.views.error", "created": 1653486098.7527208, "filename": "views.py", "lineno": 259, "process": 356, "exc_info": "Traceback (most recent call last):\n File \"/opt/venv/lib64/python3.8/site-packages/flask/app.py\", line 1516, in full_dispatch_request\n rv = self.dispatch_request()\n File \"/opt/venv/lib64/python3.8/site-packages/flask/app.py\", line 1502, in dispatch_request\n return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)\n File \"/opt/venv/lib64/python3.8/site-packages/openeo_driver/users/auth.py\", line 88, in decorated\n return f(*args, **kwargs)\n File \"/opt/venv/lib64/python3.8/site-packages/openeo_driver/views.py\", line 590, in result\n result = backend_implementation.processing.evaluate(process_graph=process_graph, env=env)\n File \"/opt/venv/lib64/python3.8/site-packages/openeo_driver/ProcessGraphDeserializer.py\", line 239, in evaluate\n return evaluate(process_graph=process_graph, env=env)\n File \"/opt/venv/lib64/python3.8/site-packages/openeo_driver/ProcessGraphDeserializer.py\", line 308, in evaluate\n return convert_node(result_node, env=env)\n File \"/opt/venv/lib64/python3.8/site-packages/openeo_driver/ProcessGraphDeserializer.py\", line 314, in convert_node\n return apply_process(\n File \"/opt/venv/lib64/python3.8/site-packages/openeo_driver/ProcessGraphDeserializer.py\", line 1348, in apply_process\n args = {name: convert_node(expr, env=env) for (name, expr) in sorted(args.items())}\n File \"/opt/venv/lib64/python3.8/site-packages/openeo_driver/ProcessGraphDeserializer.py\", line 1348, in <dictcomp>\n args = {name: convert_node(expr, env=env) for (name, expr) in sorted(args.items())}\n File \"/opt/venv/lib64/python3.8/site-packages/openeo_driver/ProcessGraphDeserializer.py\", line 319, in convert_node\n return convert_node(processGraph['node'], env=env)\n File \"/opt/venv/lib64/python3.8/site-packages/openeo_driver/ProcessGraphDeserializer.py\", line 314, in convert_node\n return apply_process(\n File \"/opt/venv/lib64/python3.8/site-packages/openeo_driver/ProcessGraphDeserializer.py\", line 1443, in apply_process\n return process_function(args=args, env=env)\n File \"/opt/venv/lib64/python3.8/site-packages/openeo_driver/ProcessGraphDeserializer.py\", line 479, in load_collection\n return env.backend_implementation.catalog.load_collection(collection_id, load_params=load_params, env=env)\n File \"/opt/venv/lib64/python3.8/site-packages/openeo/util.py\", line 363, in wrapper\n return f(*args, **kwargs)\n File \"/opt/venv/lib64/python3.8/site-packages/openeogeotrellis/layercatalog.py\", line 480, in load_collection\n pyramid = sentinel_hub_pyramid()\n File \"/opt/venv/lib64/python3.8/site-packages/openeogeotrellis/layercatalog.py\", line 366, in sentinel_hub_pyramid\n (condition, byoc_id) = metadata_properties().get('byoc_id', (None, None))\nValueError: too many values to unpack (expected 2)", "req_id": "819bc39a-f28b-4612-8047-9bd6d5ccc318", "user_id": "vdboschj"}