Skip to content

Conversation

xoofx
Copy link
Contributor

@xoofx xoofx commented Feb 23, 2022

Fixes #8

Replacing the narrow catch with a wider catch on IOException and it is fixing the issue.

xoofx added a commit to xoofx/dotnet-releaser that referenced this pull request Feb 23, 2022
@daveaglick
Copy link
Owner

Awesome! Glad you figured this out, because goodness knows it would have taken me a lot longer :). I'll endeavor to get this merged and released tomorrow.

@xoofx
Copy link
Contributor Author

xoofx commented Feb 25, 2022

Hey @daveaglick,

I have pushed 1 more commit after fighting with the server process not exiting correctly on Linux. It seems that the sockets can be in a completely dangling state that will block the threads to exit (at least the reader thread was entirely blocked).

This is a screenshot of the CI before/after I applied my fix. You can see that it was taking almost 20min, probably because the socket was blocking the threads. So configuring the reader and writer threads with IsBackground = true and then process was able to exit, it is now only taking 3min

image

I don't know why there is such a behavior on Linux and I don't think it is happening on Windows, so I believe that there is something wrong in .NET with sockets/pipe, but I can't workaround it without this fix.

I have a copy of the MsBuildPipeLogger pre-comppiled assemblies in my repo, so no rush.

@daveaglick
Copy link
Owner

Procrastination pays off again! :)

Also - awesome work, now I know there's no way I would have been able to track this one down on my own, no matter how long I had.

@daveaglick daveaglick merged commit befedc3 into daveaglick:main Mar 2, 2022
@daveaglick
Copy link
Owner

Thanks! Merged and release going out now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Unhandled Interrupted system call in PipeLoggerServer

2 participants