Cannot build v10.6.0 from source on ubuntu 20.04 - Internal MSBuild Error: Node 2 does not have a provider. #1935

Closed
opened 2026-02-06 21:30:28 +03:00 by OVERLORD · 3 comments
Owner

Originally created by @ppetraki on GitHub (Jul 24, 2020).

Describe the bug
Followed the directions and the build blows up with an internal error. This appears to be dependent on the build entry point. If I use the build script which is using dh to build a package I get the internal error. If I try I then try to run the dotnet command that caused the command it will fail the same way.

If I look in /tmp for MSBuild_failure.txt it does not exist. Now... If I delete all the /tmp/MSBuildXXXXXXX files and run the dotnet command again, it succeeds! It's notable that there's 1/4 less MSBuild files in the success case over the failing case. I'm guessing there's some recursion going in the dh_ driven build which is cause msbuild to bomb out with an internal error.

While I can build the binaries this way, I can't build the native deb package.

System (please complete the following information):

  • OS: Ubuntu 20.04
  • Virtualization: None
  • Clients: N/A
  • Browser: N/A
  • Jellyfin Version: 10.6.0
  • Playback: N/A
  • Installed Plugins: N/A
  • Reverse Proxy: N/A
  • Base URL: N/A
  • Networking: N/A
  • Storage: N/A

To Reproduce

  1. clone source && cd dir && git submodule update --init
  2. git co v10.6.0
  3. ./build.sh -t native -p ubuntu.amd64
  4. Failing subcommand: dotnet publish --configuration Release --output='/home/ppetraki/Sandbox/installed/jellyfin21/usr/lib/jellyfin/bin' --self-contained --runtime debian-x64 "-p:GenerateDocumentationFile=false;DebugSymbols=false;DebugType=none" Jellyfin.Server

Expected behavior
build success

Logs
Microsoft (R) Build Engine version 16.6.0+5ff7b0c9e for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.

Determining projects to restore...
MSBUILD : error MSB4166: Child node "2" exited prematurely. Shutting down. Diagnostic information may be found in files in "/tmp/" and will be named MSBuild_.failure.txt. This location can be changed by setting the MSBUILDDEBUGPATH environment variable to a different directory.
MSBUILD : error MSB4166: Child node "3" exited prematurely. Shutting down. Diagnostic information may be found in files in "/tmp/" and will be named MSBuild_
.failure.txt. This location can be changed by setting the MSBUILDDEBUGPATH environment variable to a different directory.
MSBUILD : error MSB1025: An internal failure occurred while running MSBuild.
Microsoft.Build.Shared.InternalErrorException: MSB0001: Internal MSBuild Error: Node 2 does not have a provider.
at Microsoft.Build.Shared.ErrorUtilities.ThrowInternalError(String message, Object[] args)
at Microsoft.Build.BackEnd.NodeManager.SendData(Int32 node, INodePacket packet)
at Microsoft.Build.Execution.BuildManager.PerformSchedulingActions(IEnumerable1 responses) at Microsoft.Build.Execution.BuildManager.PerformSchedulingActions(IEnumerable1 responses)
at Microsoft.Build.Execution.BuildManager.HandleNewRequest(Int32 node, BuildRequestBlocker blocker)
at Microsoft.Build.Execution.BuildManager.ProcessPacket(Int32 node, INodePacket packet)
at Microsoft.Build.Execution.BuildManager.<>c__DisplayClass70_0.<Microsoft.Build.BackEnd.INodePacketHandler.PacketReceived>b__0()
at Microsoft.Build.Execution.BuildManager.ProcessWorkQueue(Action action)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.Build.Execution.BuildManager.EndBuild()
at Microsoft.Build.CommandLine.MSBuildApp.BuildProject(String projectFile, String[] targets, String toolsVersion, Dictionary2 globalProperties, Dictionary2 restoreProperties, ILogger[] loggers, LoggerVerbosity verbosity, DistributedLoggerRecord[] distributedLoggerRecords, Int32 cpuCount, Boolean enableNodeReuse, TextWriter preprocessWriter, TextWriter targetsWriter, Boolean detailedSummary, ISet1 warningsAsErrors, ISet1 warningsAsMessages, Boolean enableRestore, ProfilerLogger profilerLogger, Boolean enableProfiler, Boolean interactive, Boolean isolateProjects, Boolean graphBuild, Boolean lowPriority, String[] inputResultsCaches, String outputResultsCache)

MSBUILD : error MSB1025: An internal failure occurred while running MSBuild.
Microsoft.Build.Shared.InternalErrorException: MSB0001: Internal MSBuild Error: Node 2 does not have a provider.
at Microsoft.Build.CommandLine.MSBuildApp.BuildProject(String projectFile, String[] targets, String toolsVersion, Dictionary2 globalProperties, Dictionary2 restoreProperties, ILogger[] loggers, LoggerVerbosity verbosity, DistributedLoggerRecord[] distributedLoggerRecords, Int32 cpuCount, Boolean enableNodeReuse, TextWriter preprocessWriter, TextWriter targetsWriter, Boolean detailedSummary, ISet1 warningsAsErrors, ISet1 warningsAsMessages, Boolean enableRestore, ProfilerLogger profilerLogger, Boolean enableProfiler, Boolean interactive, Boolean isolateProjects, Boolean graphBuild, Boolean lowPriority, String[] inputResultsCaches, String outputResultsCache)
at Microsoft.Build.CommandLine.MSBuildApp.Execute(String[] commandLine)
Unhandled exception. Microsoft.Build.Shared.InternalErrorException: MSB0001: Internal MSBuild Error: Node 2 does not have a provider.
at Microsoft.Build.CommandLine.MSBuildApp.BuildProject(String projectFile, String[] targets, String toolsVersion, Dictionary2 globalProperties, Dictionary2 restoreProperties, ILogger[] loggers, LoggerVerbosity verbosity, DistributedLoggerRecord[] distributedLoggerRecords, Int32 cpuCount, Boolean enableNodeReuse, TextWriter preprocessWriter, TextWriter targetsWriter, Boolean detailedSummary, ISet1 warningsAsErrors, ISet1 warningsAsMessages, Boolean enableRestore, ProfilerLogger profilerLogger, Boolean enableProfiler, Boolean interactive, Boolean isolateProjects, Boolean graphBuild, Boolean lowPriority, String[] inputResultsCaches, String outputResultsCache)
at Microsoft.Build.CommandLine.MSBuildApp.Execute(String[] commandLine)
at Microsoft.Build.CommandLine.MSBuildApp.Main(String[] args)

Screenshots

Additional context

Originally created by @ppetraki on GitHub (Jul 24, 2020). **Describe the bug** Followed the directions and the build blows up with an internal error. This appears to be dependent on the build entry point. If I use the build script which is using dh to build a package I get the internal error. If I try I then try to run the dotnet command that caused the command it will fail the same way. If I look in /tmp for MSBuild_failure.txt it does not exist. Now... If I delete all the /tmp/MSBuildXXXXXXX files and run the dotnet command again, it succeeds! It's notable that there's 1/4 less MSBuild files in the success case over the failing case. I'm guessing there's some recursion going in the dh_ driven build which is cause msbuild to bomb out with an internal error. While I can build the binaries this way, I can't build the native deb package. **System (please complete the following information):** - OS: Ubuntu 20.04 - Virtualization: None - Clients: N/A - Browser: N/A - Jellyfin Version: 10.6.0 - Playback: N/A - Installed Plugins: N/A - Reverse Proxy: N/A - Base URL: N/A - Networking: N/A - Storage: N/A **To Reproduce** <!-- Steps to reproduce the behavior: --> 1. clone source && cd dir && git submodule update --init 2. git co v10.6.0 3. ./build.sh -t native -p ubuntu.amd64 4. Failing subcommand: dotnet publish --configuration Release --output='/home/ppetraki/Sandbox/installed/jellyfin21/usr/lib/jellyfin/bin' --self-contained --runtime debian-x64 "-p:GenerateDocumentationFile=false;DebugSymbols=false;DebugType=none" Jellyfin.Server **Expected behavior** build success **Logs** Microsoft (R) Build Engine version 16.6.0+5ff7b0c9e for .NET Core Copyright (C) Microsoft Corporation. All rights reserved. Determining projects to restore... MSBUILD : error MSB4166: Child node "2" exited prematurely. Shutting down. Diagnostic information may be found in files in "/tmp/" and will be named MSBuild_*.failure.txt. This location can be changed by setting the MSBUILDDEBUGPATH environment variable to a different directory. MSBUILD : error MSB4166: Child node "3" exited prematurely. Shutting down. Diagnostic information may be found in files in "/tmp/" and will be named MSBuild_*.failure.txt. This location can be changed by setting the MSBUILDDEBUGPATH environment variable to a different directory. MSBUILD : error MSB1025: An internal failure occurred while running MSBuild. Microsoft.Build.Shared.InternalErrorException: MSB0001: Internal MSBuild Error: Node 2 does not have a provider. at Microsoft.Build.Shared.ErrorUtilities.ThrowInternalError(String message, Object[] args) at Microsoft.Build.BackEnd.NodeManager.SendData(Int32 node, INodePacket packet) at Microsoft.Build.Execution.BuildManager.PerformSchedulingActions(IEnumerable`1 responses) at Microsoft.Build.Execution.BuildManager.PerformSchedulingActions(IEnumerable`1 responses) at Microsoft.Build.Execution.BuildManager.HandleNewRequest(Int32 node, BuildRequestBlocker blocker) at Microsoft.Build.Execution.BuildManager.ProcessPacket(Int32 node, INodePacket packet) at Microsoft.Build.Execution.BuildManager.<>c__DisplayClass70_0.<Microsoft.Build.BackEnd.INodePacketHandler.PacketReceived>b__0() at Microsoft.Build.Execution.BuildManager.ProcessWorkQueue(Action action) --- End of stack trace from previous location where exception was thrown --- at Microsoft.Build.Execution.BuildManager.EndBuild() at Microsoft.Build.CommandLine.MSBuildApp.BuildProject(String projectFile, String[] targets, String toolsVersion, Dictionary`2 globalProperties, Dictionary`2 restoreProperties, ILogger[] loggers, LoggerVerbosity verbosity, DistributedLoggerRecord[] distributedLoggerRecords, Int32 cpuCount, Boolean enableNodeReuse, TextWriter preprocessWriter, TextWriter targetsWriter, Boolean detailedSummary, ISet`1 warningsAsErrors, ISet`1 warningsAsMessages, Boolean enableRestore, ProfilerLogger profilerLogger, Boolean enableProfiler, Boolean interactive, Boolean isolateProjects, Boolean graphBuild, Boolean lowPriority, String[] inputResultsCaches, String outputResultsCache) MSBUILD : error MSB1025: An internal failure occurred while running MSBuild. Microsoft.Build.Shared.InternalErrorException: MSB0001: Internal MSBuild Error: Node 2 does not have a provider. at Microsoft.Build.CommandLine.MSBuildApp.BuildProject(String projectFile, String[] targets, String toolsVersion, Dictionary`2 globalProperties, Dictionary`2 restoreProperties, ILogger[] loggers, LoggerVerbosity verbosity, DistributedLoggerRecord[] distributedLoggerRecords, Int32 cpuCount, Boolean enableNodeReuse, TextWriter preprocessWriter, TextWriter targetsWriter, Boolean detailedSummary, ISet`1 warningsAsErrors, ISet`1 warningsAsMessages, Boolean enableRestore, ProfilerLogger profilerLogger, Boolean enableProfiler, Boolean interactive, Boolean isolateProjects, Boolean graphBuild, Boolean lowPriority, String[] inputResultsCaches, String outputResultsCache) at Microsoft.Build.CommandLine.MSBuildApp.Execute(String[] commandLine) Unhandled exception. Microsoft.Build.Shared.InternalErrorException: MSB0001: Internal MSBuild Error: Node 2 does not have a provider. at Microsoft.Build.CommandLine.MSBuildApp.BuildProject(String projectFile, String[] targets, String toolsVersion, Dictionary`2 globalProperties, Dictionary`2 restoreProperties, ILogger[] loggers, LoggerVerbosity verbosity, DistributedLoggerRecord[] distributedLoggerRecords, Int32 cpuCount, Boolean enableNodeReuse, TextWriter preprocessWriter, TextWriter targetsWriter, Boolean detailedSummary, ISet`1 warningsAsErrors, ISet`1 warningsAsMessages, Boolean enableRestore, ProfilerLogger profilerLogger, Boolean enableProfiler, Boolean interactive, Boolean isolateProjects, Boolean graphBuild, Boolean lowPriority, String[] inputResultsCaches, String outputResultsCache) at Microsoft.Build.CommandLine.MSBuildApp.Execute(String[] commandLine) at Microsoft.Build.CommandLine.MSBuildApp.Main(String[] args) **Screenshots** <!-- If applicable, add screenshots to help explain your problem. --> **Additional context** <!-- Add any other context about the problem here. -->
OVERLORD added the buildbugstale labels 2026-02-06 21:30:28 +03:00
Author
Owner

@BaronGreenback commented on GitHub (Jul 24, 2020):

Suggestion is to use /m:1 as a commandline parameter. Seems to be caused randomly by .dotnet keeping locks open on files.

https://github.com/dotnet/msbuild/issues/455
https://github.com/dotnet/sdk/issues/9487

@BaronGreenback commented on GitHub (Jul 24, 2020): Suggestion is to use /m:1 as a commandline parameter. Seems to be caused randomly by .dotnet keeping locks open on files. https://github.com/dotnet/msbuild/issues/455 https://github.com/dotnet/sdk/issues/9487
Author
Owner

@wwwutz commented on GitHub (Aug 7, 2020):

Quick & dirty fix by adding -maxcpucount:1 to debian/rules.

diff --git a/debian/rules b/debian/rules
index 2a5d41a69..aa234908d 100755
--- a/debian/rules
+++ b/debian/rules
@@ -39,7 +39,7 @@ override_dh_auto_test:
 override_dh_clistrip:
 
 override_dh_auto_build:
-       dotnet publish --configuration $(CONFIG) --output='$(CURDIR)/usr/lib/jellyfin/bin' --self-contained --runtime $(DOTNETRUNTIME) \
+       dotnet publish -maxcpucount:1 --configuration $(CONFIG) --output='$(CURDIR)/usr/lib/jellyfin/bin' --self-contained --runtime $(DOTNETRUNTIME) \
                "-p:GenerateDocumentationFile=false;DebugSymbols=false;DebugType=none" Jellyfin.Server
 
 override_dh_auto_clean:

works for me:

Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:01.38
@wwwutz commented on GitHub (Aug 7, 2020): Quick & dirty fix by adding `-maxcpucount:1` to `debian/rules`. ```diff diff --git a/debian/rules b/debian/rules index 2a5d41a69..aa234908d 100755 --- a/debian/rules +++ b/debian/rules @@ -39,7 +39,7 @@ override_dh_auto_test: override_dh_clistrip: override_dh_auto_build: - dotnet publish --configuration $(CONFIG) --output='$(CURDIR)/usr/lib/jellyfin/bin' --self-contained --runtime $(DOTNETRUNTIME) \ + dotnet publish -maxcpucount:1 --configuration $(CONFIG) --output='$(CURDIR)/usr/lib/jellyfin/bin' --self-contained --runtime $(DOTNETRUNTIME) \ "-p:GenerateDocumentationFile=false;DebugSymbols=false;DebugType=none" Jellyfin.Server override_dh_auto_clean: ``` works for me: ``` Build succeeded. 0 Warning(s) 0 Error(s) Time Elapsed 00:00:01.38 ```
Author
Owner

@stale[bot] commented on GitHub (Dec 5, 2020):

This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.
If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or nightlies, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.
This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.

@stale[bot] commented on GitHub (Dec 5, 2020): This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments. If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or nightlies, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label. This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on [Matrix or Social Media](https://docs.jellyfin.org/general/getting-help.html).
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/jellyfin#1935