-
Notifications
You must be signed in to change notification settings - Fork 3.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EFCore.SqlServer.FunctionalTest hanging on Linux VM (Ubuntu 16.04 LTS and 18.10) #15333
Comments
It does not hang on Windows |
@Gary-Zh How many logical CPUs are you using when you run the tests on Linux? |
@ajcvickers I have 3 logical CPUs on my VM. |
@roji to try running locally on Linux. |
Tested locally - everything seems OK, no deadlocks... (ran tests on daeb665, on Ubuntu 19.04, against SQL Server running locally, 6 physical cores). |
@Gary-Zh - How many logical CPUs on your windows machine? The current implementation on query translation and concurrent running on tests can cause deadlock on machines with low number of cores regardless of OS. |
@smitpatel I have 8 logical CPUs on my windows machine. Do you suggest me to add more cores to the VM and try reproducing the issue again? |
@Gary-Zh yes, that is something we believe is worth trying. |
Closing this as we have been able to run on Linux without issues, and until the known deadlock issues in query are fixed there is nothing more to try here for now. |
Hi @divega , it's been a while since we last time running EFCore tests. It still hangs on my Linux VM. |
Can we re-open this issue and investigate more? |
@Gary-Zh the problem is that this occurs neither in our continuous builds (which run all the time), nor on my personal build machine. So whatever issue you're running into seems to be somehow tied to your specific environment... Any chance you could try on a physical Linux box (non-VM) and report? |
@roji would it possible to break into the running tests with a debugger to figure out where the execution is at then the tests stall? |
Sure, but I haven't actually seen the tests stall on my Linux machine at any point... I just ran the SqlServer functional test suite, once on 2.2.5 and once on master and everything was fine. @Gary-Zh have you had a chance to try on a physical Linux box, ideally against the same SQL Server instance? |
When I was running EFCore.SqlServer.FunctionalTest on Linux VM, the test hangs frequently.
The test runs but does not finish. dotnet process looks hanging as well, it consumes 0 CPU usage but does not terminate.
When it doesn't hang, the test finishes within 10 mins on my VM, but it could hang hours and I had to manually terminate the test execution.
Here's what I did:
Create a completely clean Ubuntu VM (I've tried version 18.10 and 16.04).
Install git and clone EFCore repo.
Go to EFCore root folder and run
./build.sh -c Release -v d
export Test__SqlServer__DefaultConnection="Data Source=192.xxx.xxx.xxx;DataBase=master;UID={id};PWD={pwd};Connect Timeout=60;ConnectRetryCount=0;"
(in order not to skip tests)./test.sh -projects /test/EFCore.SqlServer.FunctionalTests/EFCore.SqlServer.FunctionalTests.csproj -configuration Release -v d
Sometimes the test finishes successfully and gives me the test result file. Sometimes it just hangs.
Here's the log file being generated when it hangs:
EFCore.SqlServer.FunctionalTests_netcoreapp3.0_x64.log
The screenshot shows the dotnet process is hanging:
Further technical details
EF Core version: latest in master branch
Operating system: Ubuntu 16.04 LTS and 18.0.
The text was updated successfully, but these errors were encountered: