We are developing a dotnet core project in Docker and we need to retrieve the list of countries (~250records) with about 9 additional columns, which are not longer than guids. While developing, each developer is using a local instance of Microsoft SQL server 2017 Developer edition.
The problem is, when selecting these ~250 records, some new and powerful workstations have no problem (although this implies they might have problems for larger queries). However, some weaker and older laptops cannot execute the query, and SQL server throws timeout. We thought this was a RAM problem, and increased the RAM of the laptops, but issue is not resolved.
The odd thing is that there is a record count threshold which the timeout is thrown. I don’t remember the exact number for each laptop, but let’s say 120. When number of records is 120 then the query is returned successfully in about 2-3 seconds. However once the number of queries become 121, the timeout exception is thrown. And there is no issue when we use a remote SQL server, although that server is a VM sharing the host with 6 other VMs and works fairly slow when connected via SQLServer Management Studio. Similarly, managing the local server with SQLServer Management Studio is fast, and the very same query executes in about 1 second.
What could be the problem with this behavior? Is there somehow a limit on Docker’s TCP when communicating with the host?