Timeout not working properly

  • Goal: Wait for a query to finish.

  • Steps: Increased timeout to 600000ms

  • Details: I have a query that waits for a workflow to complete. The problem is that the query times out after 3mins and not 10 mins

  • The workflow does complete later but I want the query to wait for the workflow to complete, at least for 10 mins

Same issue here, timeout set at 100 000ms (100s) on a ressource query, but we consistently get a network timeout at 10 000ms (10s).

The query is a REST API from our own Retool ressources.

@nduchon Is this happening in a workflow or in an app? Are you using Retool on cloud or a self hosted instance? Timeouts on REST API queries should have a max of 600s, and I'm currently able to see the increased timeout take affect. Any additional information about your setup would be great to help troubleshoot. Thanks!

@joeBumbaca this is on a workflow, on Retool cloud.

The exact same API call on an App handle the increased timeout correctly.

What additional information would be helpful ?

A screenshot of the query block and the settings with the increased timeout would be great, along with the logs for that run. I just tested in a workflow and see the increased timeout taking effect, so want to set up exactly as you have to try and reproduce the issue.

Here is the query block in question:

I lowered it to from 100 000 to 80 000 ms yesterday and deployed the workflow again, just in case.

The query itself is a PUT on one of our REST API endpoint (https://REDACTED/order/rest/order/{id}), with a very simple JSON payload ({"status": "VALIDATE"}). The same query with an extended timeout works fine on an App.

The ressource is a REST API with OAuth 2.0 auth, using client credentials flow. This ressource is used throughout most of our Apps and Workflows and work without issue.

Here is a timeout from this morning:

error	                true
message	                network timeout at: https://REDACTED/order/rest/order/REDACTED
isRetoolSystemError	    false
queryExecutionMetadata	{"estimatedResponseSizeBytes":138,"resourceTimeTakenMs":10004,"isPreview":false,"resourceType":"restapi","lastReceivedFromResourceAt":1711713324606}
{
   "error":{
      "error":true,
      "message":"network timeout at: https://REDACTED/order/rest/order/REDACTED",
      "isRetoolSystemError":false,
      "queryExecutionMetadata":{
         "estimatedResponseSizeBytes":138,
         "resourceTimeTakenMs":10004,
         "isPreview":false,
         "resourceType":"restapi",
         "lastReceivedFromResourceAt":1711713324606
      }
   },
   "data":null,
   "value":null
}

You can see that the query block incorrectly timed out after 10004 ms despite being configured to timeout after 80000 ms.

The query did complete correctly on our API's side.

@joeBumbaca this is still an issue / still happening:

Hey @nduchon, sorry for the delay here. I see that query is imported from the Query Library. Can you check the settings on the query there? Did some testing and it looks like if the Timeout setting in the workflow will not override the timeout setting in the Query Library.

Query Library settings

Workflow Settings

Timeout after 5 seconds

But updating the QL timeout setting allows the workflow query block to run successfully. I'm submitting a report to the team, but let me know if that solves the issue for you.

@joeBumbaca I confirm that updating the Query Library timeout fix the issue (and that the timeout setting in the workflow does not override the timeout setting of the Query Library).

Thank your for your help :+1:

1 Like

Glad that worked!