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

Run net472 tests on mono #1030

Merged
merged 1 commit into from
Sep 9, 2020
Merged

Conversation

AArnott
Copy link
Collaborator

@AArnott AArnott commented Sep 9, 2020

We've taken significant dependencies on MessagePack and some of these scenarios will be running on mono on a mac. So we should have tests running on mono to verify that MessagePack works properly on that runtime.

At the moment, several tests fail, so I'm skipping those few for now in order to get the hundreds of tests that do pass running regularly. I'll circle around and investigate the tests that fail on mono to see which ones should/can be fixed.

@AArnott AArnott added this to the v2.2 milestone Sep 9, 2020
@AArnott AArnott self-assigned this Sep 9, 2020
@AArnott AArnott changed the base branch from v2.2 to master September 9, 2020 20:48
@AArnott AArnott marked this pull request as ready for review September 9, 2020 20:58
@AArnott AArnott modified the milestones: v2.2, v2.1 Sep 9, 2020
@AArnott AArnott requested a review from neuecc September 9, 2020 20:58
@AArnott
Copy link
Collaborator Author

AArnott commented Sep 9, 2020

Mono is unstable with these tests. I've seen it fail several tests on my computer and succeed the next time. It's happening in Azure Pipelines too. Right now 7 tests are failing in AzP related to a SharedData_FirstSimpleDataFormatter73 type load failure. Since we're using static constructors everywhere in MessagePack, one failure will cascade to all subsequent uses of that type.

I think several of the tests I've 'skipped' already for mono were of this same variety, where the tests themselves may not have been at fault, but perhaps were a casualty of a prior failure. I need to work on this more...

Copy link
Member

@neuecc neuecc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok

@AArnott
Copy link
Collaborator Author

AArnott commented Sep 9, 2020

So the irony is that it's all just one bug in mono, and I think it has to do with either MessagePack's dynamic code generation or heavy use of static generic types. Either way, the tests all pass on mono, provided they run sequentially. When run in parallel, it fails very frequently on a random set of tests.

@AArnott
Copy link
Collaborator Author

AArnott commented Sep 9, 2020

Filed mono/mono#20369 to track the concurrency bug on the mono side. In the meantime, our -parallel none switch is keeping the tests passing reliably in my testing.

@AArnott AArnott merged commit 7d82478 into MessagePack-CSharp:master Sep 9, 2020
@AArnott AArnott deleted the TestOnMono branch September 9, 2020 23:02
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.

None yet

2 participants