Customer is able to connect the Azure SQL Database any other machine successfully.Here, the client request is not reaching to the Gateway if it is failing at Gateway level we can say that there is issues with the SQL DB gateway.https://docs.microsoft.com/en-us/azure/sql-database/sql-database-connectivity-architecture
This is not because DB memory resource pressure. At pre-login handshake stage, the request has not reached DB yet.
“semaphore timeout” – this is 100% Windows kernel error that can occur for a very wide variety of reasons, but are typically due to a network card or driver-related issue. This appears as a SQL error because Windows passes this to the SQL process, so it is often mistaken to be a SQL error, when it’s a client OS-level error.
This is client side issue. Check customer firewall settings. Most likely they have a firewall allowing TCP connections but preventing data to flow to destination.
For troubleshooting this error when it involves Service Endpoints and Subnets — it is helpful to check the following:
- Is the Azure VM (or other Azure Resource that is trying to access SQL DB) on a different subnet than the SQL Database?
- Go to Azure Portal > Virtual Networks > Select ‘Service Endpoints’ > Select the ‘Microsoft.SQL’ endpoint
- Make sure that any other Subnets that will use the SQL Database are listed in here, if they are not listed click ‘+Add’ to add the other subnets/services.
- NEXT:
- Go to Azure Portal > SQL DB > Firewall Configuration > Scroll down to Service Endpoint RULES
- Here you need to add the Rule for any SubNET that uses SQL DB
- (Even the SubNET that the SQL DB itself is in!)
- Click create Rule and add the Subnets that use SQL DB
- Here you need to add the Rule for any SubNET that uses SQL DB
- Go to Azure Portal > SQL DB > Firewall Configuration > Scroll down to Service Endpoint RULES