Intermittent Net::OpenTimeout (execution expired) to *.myshopify.com — TCP connect phase times out

Our app occasionally can’t even open a TLS socket to our store domain; the TCP connect phase times out (execution expired). Looking for guidance on likely causes on the Shopify edge side and any recommended mitigations. We have to read product and order informations from a store and update product prices. We do that in batches which is very slow and takes 20-40 minutes to complete the job for around 3500 products. We run our backend in Google Cloud and it has worked for months. We face this kind of problem in the last days.
Here is the error message we get:
Failed to open TCP connection to xxx.myshopify.com:443 (execution expired)

Can you help me identify the problem? If you need more information please don’t hesitate to ask.

Hi @Tamas_Nagy! Are you still seeing these TCP timeout issues, or did they clear up?

If it’s still happening, this is a network-level connectivity problem that needs internal investigation - beyond what we can troubleshoot in the forums. You’ll need to contact support through the Help Center with your store domain and timestamps of when the timeouts occur so they can check edge and platform logs.

That said - there’s a bigger issue here. 20-40 minutes to process 3500 products suggests you’re making individual API calls in batches, which is way too slow and likely contributing to your timeout problems. You should be using bulk operations instead. Bulk ops can handle thousands of products in minutes rather than hours, don’t have the same rate limiting concerns, and won’t tie up your batch job for 40 minutes making sequential calls.

For reading product data, use bulkOperationRunQuery. For updating prices, check out productVariantsBulkUpdate or run it through bulkOperationRunMutation if you’re updating a lot at once.

Switching to bulk operations will probably eliminate the TCP timeouts entirely since you won’t be hammering the API with thousands of individual requests.