commit | 7d21f494cb6b7a3e4ab231872d46c7aacf3a35dd | [log] [tgz] |
---|---|---|
author | Yuexi Ma <yuexima@google.com> | Thu Aug 23 17:44:06 2018 -0700 |
committer | Yuexi Ma <yuexima@google.com> | Tue Sep 04 23:59:03 2018 +0000 |
tree | b915a02d2cdc036ac2b5f8645b0078d1ca3bce7a | |
parent | bdc7b8ec320c6e70adba3fc466164b2e75d727d6 [diff] |
handle virutalenv race condition across processes simultaneous virutalenv: Errno 26 virtualenv while pip install: Errno 26 pip install while virtualenv: both success simultaneous install of same pip package: both success The above result shows we only have to handle errno 26 for race condition This CL checks errno 26 and wait for other process to complete virtuanenv prep. Now when virtualenv is created, the preparer will create an empty file named 'complete' to indicate that the process is finished. The 'complete' file and double loop retries of the virtualenv creation method handles the case where process 1 waits for process 2 to complete but process 2 crashed while creating virtualenv. Test: run vts-dev Change-Id: I9e329cd895feced7e708b82cb5d70107e96598d3
VTS consists of a set of testing frameworks and test cases, designed to help enhance the robustness, reliability, and compliance of:
VTS has mainly two types of test suites:
While the VTS framework and test cases are designed for userdebug or eng build devices, some test cases can be run on user build devices using its app namely, VTS Agent App.
Table of Contents