Skip to content

Build fails to touch out-of-date CopyUpToDateMarker #7161

@sharwell

Description

@sharwell

During investigation of a Roslyn incremental build failure, I observed the following output:

10>FastUpToDate: No inputs are newer than earliest output 'C:\dev\roslyn\artifacts\obj\Microsoft.CodeAnalysis.Scripting.TestUtilities\Debug\net472\Microsoft.CodeAnalysis.Scripting.TestUtilities.xml' (12/20/2021 9:29:45 AM). Newest input is 'C:\dev\roslyn\artifacts\obj\Microsoft.CodeAnalysis.Test.Utilities\Debug\net472\ref\Microsoft.CodeAnalysis.Test.Utilities.dll' (12/20/2021 9:25:08 AM). (Microsoft.CodeAnalysis.Scripting.TestUtilities)
10>FastUpToDate: Latest write timestamp on input marker is 12/20/2021 9:29:40 AM on 'C:\dev\roslyn\artifacts\bin\Microsoft.CodeAnalysis.Test.Utilities\Debug\net472\Microsoft.CodeAnalysis.Test.Utilities.dll'. (Microsoft.CodeAnalysis.Scripting.TestUtilities)
10>FastUpToDate: Write timestamp on output marker is 12/15/2021 7:29:31 PM on 'C:\dev\roslyn\artifacts\obj\Microsoft.CodeAnalysis.Scripting.TestUtilities\Debug\net472\Microsoft.CodeAnalysis.Scripting.TestUtilities.csproj.CopyComplete'. (Microsoft.CodeAnalysis.Scripting.TestUtilities)
10>FastUpToDate: Input marker is newer than output marker, not up to date. (Microsoft.CodeAnalysis.Scripting.TestUtilities)
10>------ Build started: Project: Microsoft.CodeAnalysis.Scripting.TestUtilities, Configuration: Debug Any CPU ------
10>Microsoft.CodeAnalysis.Scripting.TestUtilities -> C:\dev\roslyn\artifacts\bin\Microsoft.CodeAnalysis.Scripting.TestUtilities\Debug\net6.0\Microsoft.CodeAnalysis.Scripting.TestUtilities.dll
10>Microsoft.CodeAnalysis.Scripting.TestUtilities -> C:\dev\roslyn\artifacts\bin\Microsoft.CodeAnalysis.Scripting.TestUtilities\Debug\net472\Microsoft.CodeAnalysis.Scripting.TestUtilities.dll
========== Build: 1 succeeded, 0 failed, 9 up-to-date, 0 skipped ==========

In this situation, the build was up-to-date except for the CopyUpToDateMarker. Unfortunately, due to #6698 the file was not touched, and the state was perpetually incorrect. A resolution in this situation is to ensure the _CopyFilesMarkedCopyLocal target touches CopyUpToDateMarker any time the marker is currently older than the newest build input.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugclosed-by-botClosed due to lack of activityneeds-more-infoIssues that need more info to continue investigation.staleFor issues that haven't had activity in some time.triaged

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions