[Bug-Candidate]: Echidna is non-deterministic when workers > 1
- Dominant language
- Haskell
- Stars
- 3.2k
- Forks
- 432
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 5
Description
### Describe the issue:
Echidna provide different results even if the seed is fixed, when the amount of workers is more than one. I'm using json output to hash the result of the campaign and compare them. This issue is NOT caused by the possible non-deterministic serialization of json (I verified that the output values are actually different).
### Code example to reproduce the issue:
Execute the following bash program from the echidna directory which will run `tests/solidity/basic/flags.sol:
```
while $(true); do echidna tests/solidity/basic/flags.sol --test-limit 10000 --shrink-limit 333 --format json --seed 123 --workers 8 | tail -n 1 | md5sum ; done```
```
### Version:
echidna compiled from `master` (2711374501fd9d46b3eb97fe169a20c3ee1d3e0a).
### Relevant log output:
```shell
$ while $(true); do echidna tests/solidity/basic/flags.sol --test-limit 10000 --shrink-limit 333 --format json --seed 123 --workers 8 | tail -n 1 | md5sum ; done
bdc6c808805e5d6eb6d5cf4c23469525 -
bdc6c808805e5d6eb6d5cf4c23469525 -
ead6b2624de00e59b41aba2caec7c82b -
bdc6c808805e5d6eb6d5cf4c23469525 -
```
Contributor guide
Assessment
This issue has not been assessed yet.