Author: amccarth Date: Fri Sep 4 15:48:48 2015 New Revision: 246870 URL: http://llvm.org/viewvc/llvm-project?rev=246870&view=rev Log: Sleep-and-retry after a failure to delete a log file, which may be because antimalware is holding the handle to the just-created file.
Differential Revision: http://reviews.llvm.org/D12641 Modified: lldb/trunk/test/lldbtest.py Modified: lldb/trunk/test/lldbtest.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/lldbtest.py?rev=246870&r1=246869&r2=246870&view=diff ============================================================================== --- lldb/trunk/test/lldbtest.py (original) +++ lldb/trunk/test/lldbtest.py Fri Sep 4 15:48:48 2015 @@ -1791,7 +1791,17 @@ class Base(unittest2.TestCase): else: # success! (and we don't want log files) delete log files for log_file in log_files_for_this_test: - os.unlink(log_file) + try: + os.unlink(log_file) + except: + # We've seen consistent unlink failures on Windows, perhaps because the + # just-created log file is being scanned by anti-virus. Empirically, this + # sleep-and-retry approach allows tests to succeed much more reliably. + # Attempts to figure out exactly what process was still holding a file handle + # have failed because running instrumentation like Process Monitor seems to + # slow things down enough that the problem becomes much less consistent. + time.sleep(0.5) + os.unlink(log_file) # ==================================================== # Config. methods supported through a plugin interface _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits