Flaky TransparentCompiler fuzzing test
- Dominant language
- F#
- Stars
- 4.3k
- Forks
- 876
- Avg merge
- 4d 22h
- Merged PRs (30d)
- 144
Description
Recently reenabled fuzzing test still needs some work:
https://github.com/dotnet/fsharp/blob/373fb23c5a6a7a00ddee9d142150cb18b2bd51d5/tests/FSharp.Compiler.ComponentTests/FSharpChecker/TransparentCompiler.fs#L603-L607
It is [sporadically failing](https://dev.azure.com/dnceng-public/public/_build/results?buildId=875507&view=logs&j=09cc464c-89cd-5758-006d-ba9e3958cfa9&t=098678ff-b2f3-5c88-44d3-4c7be2f47e75&l=6302) in CI.
It takes a lot of iterations locally to trip it, but it is possible to repro.
A good way to get a repro locally, (and to stress test a selected test case in general) is to define a xUnit attrbute like this
```fsharp
type RepeatAttribute(count, [] args: obj array) =
inherit DataAttribute()
override _.GetData _ = Seq.init count (fun i -> [| yield! args; i |])
```
and apply it like this:
```fsharp
[]
[]
[]
[]
let Fuzzing signatureFiles _ =
```
Running the theory in parallel it can be repro'd in around 100 iterations.
Out of curiosity I tried to run this test with `useTransparentCompiler = false` and it also fails from time to time. It is possible that it reveals some concurrency issue unrelated to TransparentCompiler.
Contributor guide
Assessment
This issue has not been assessed yet.