Skip to content
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

Azure DevOps: .NET build fails on macOS 15.3 but succeeds on macOS 15.2 – what's changed? #47188

Open
tmontagnoni opened this issue Feb 28, 2025 · 0 comments
Labels
Area-Workloads untriaged Request triage from a team member

Comments

@tmontagnoni
Copy link

We have Azure DevOps pipelines compiling a .NET 8 application for iOS and Android. Since the last macOS update (15.3), our pipelines are failing inconsistently—sometimes during the restore step and sometimes during the build step. Azure agents are on version 3.238.0

Here’s an example of the error we get when installing the iOS workload:

/xxxx/sds-azure-agent/agent/_work/_tool/dotnet/dotnet workload install ios
dotnet(55273,0x1edec4840) malloc: Unrecognized value for MallocDebugReport (1) - using 'stderr'
dotnet(55273) MallocStackLogging: could not tag MSL-related memory as no_footprint, so those pages will be included in process footprint - (null)
dotnet(55273) MallocStackLogging: stack logs being written to /private/tmp/stack-logs.55273.105074000.dotnet.8X77wI.index
dotnet(55273) MallocStackLogging: recording malloc and VM allocation stacks to disk using standard recorder
dotnet(55273,0x16b4db000) malloc: *** error for object 0x600003c0a0e0: pointer being freed was not allocated
dotnet(55273,0x16b4db000) malloc: *** set a breakpoint in malloc_error_break to debug
[1] 55273 abort /xxx/sds-azure-agent/agent/_work/_tool/dotnet/dotnet

We use the following task to install dotnet-sdk:

    - task: UseDotNet@2
      displayName: 'Configuration - Dotnet'
      inputs:
        version: '8.0.405'

This task works on both macOS versions, but we noticed that the workload version differs, which might be causing the issue.

On Macos 15.2 we have:

    .NET SDK:
     Version:           8.0.405
     Commit:            fb1830d421
     Workload version:  8.0.400-manifests.56b5f3fe
     MSBuild version:   17.11.9+a69bbaaf5

On Macos 15.3 we have:

    .NET SDK:
     Version:           8.0.405
     Commit:            fb1830d421
     Workload version:  8.0.400-manifests.c7afa696
     MSBuild version:   17.11.9+a69bbaaf5

An this is what we do during restore task for iOS apps:

    - task: CmdLine@2
      displayName: Project - Install workload
      inputs:
         script: |
            ulimit -n 65536
            dotnet workload uninstall ios
            dotnet workload install ios --from-rollback-file $(Build.SourcesDirectory)/workload-manifest.json 

For Android apps:

    - task: CmdLine@2
      displayName: Project - Install workload
      inputs:
         script: |
            ulimit -n 65536
            dotnet workload uninstall android
            dotnet workload install android --from-rollback-file $(Build.SourcesDirectory)/workload-manifest.json 

And our workload-manifest:

    {
      "microsoft.net.sdk.android": "34.0.145/8.0.100",
      "microsoft.net.sdk.ios": "18.0.8319/8.0.100"
    }

Does anyone have an idea what might be causing this issue? Could it be related to the workload version differences or a change in macOS 15.3?

Thank you! 🙏

@dotnet-issue-labeler dotnet-issue-labeler bot added Area-Workloads untriaged Request triage from a team member labels Feb 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Workloads untriaged Request triage from a team member
Projects
None yet
Development

No branches or pull requests

1 participant