I am performing a request (please see the details below). If I hit the right bounding-box, the processing is instantaneous.
If, however, I change a little my request, reducing the bounding-box by one degree (West from -17 to -16), the request remains in status Queued (for hours, until I decide to cancel it).

I do not understand the behavior.

Maybe my request is malformed (but I do not think so and Notepad++ says that the only difference is on the value for West), but in this case the system should immediately reject it (fail fast, you know?!)

Maybe the data in one case is already available and in other case it needs to be downloaded/produced. But since my second bounding-box is a part of the first bounding-box, I do not think so.

Should anyone have an explanation, please share it.




https://ads.atmosphere.copernicus.eu/api/v2/resources/cams-global-atmospheric-composition-forecasts

request.json
{
  "area": [
    50,
    -17,
    5,
    60
  ],
  "date": "2022-05-01/2022-06-15",
  "format": "grib",
  "leadtime_hour": [
    "0",
    "12",
    "18",
    "24",
    "6"
  ],
  "time": "00:00",
  "type": "forecast",
  "variable": "dust_aerosol_optical_depth_550nm"
}


response.json
{
    "state": "completed",
    "request_id": "e1dc6603-a98a-42ed-b2fc-d89d1d69ecc4",
    "location": "https://download-0000-ads-clone.copernicus-climate.eu/cache-compute-0000/cache/data5/adaptor.mars_constrained.external-1655745463.3316286-18351-12-6b6cad76-6fa9-4150-9975-6efc7e94a83d.grib",
    "content_length": 15072820,
    "content_type": "application/x-grib",
    "result_provided_by": "d0c0d312-3f18-406a-9e89-5b7db718adea",
    "specific_metadata_json": {
        "top_request_origin": "api"
    }
}

The payload of the second request is equal to the first one, except for one change (West from -17 to -16).
The URL is the same: https://ads.atmosphere.copernicus.eu/api/v2/resources/cams-global-atmospheric-composition-forecasts

request.json
{
  "area": [
    50,
    -16,
    5,
    60
  ],
  "date": "2022-05-01/2022-06-15",
  "format": "grib",
  "leadtime_hour": [
    "0",
    "12",
    "18",
    "24",
    "6"
  ],
  "time": "00:00",
  "type": "forecast",
  "variable": "dust_aerosol_optical_depth_550nm"
}


response.json
{
    "state": "queued",
    "request_id": "3b9352f1-a8f9-4df3-b145-37d2b73d1e00",
    "specific_metadata_json": {
        "top_request_origin": "api"
    }
}

1 Comment

  1. It turns out that the execution of the second request took more than 3 hours (3:32:24).

    Re-executing this second request ended up in the queue (still waiting at the moment).

    The execution of the first request, on the other hand, is always instantaneous, no matter how many times it is triggered.