flashbots / flashbots/mev-share-node
CI fails due to 64-bit misalignment for certain Go versions
- Dominant language
- Go
- Stars
- 109
- Forks
- 15
- PR merge metrics
- No merged PRs in 30d
Description
Lint CI check is failing with error:
```
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x61232f]
```
The reason originates from the usage of `sync/atomic` Uint64-related functions [here](https://github.com/flashbots/mev-share-node/blob/6fb6a9847eb4c9a077ed712342ed3490676b75a2/simqueue/queue.go#L163-L171). The bug is explained in package notes [here](https://pkg.go.dev/sync/atomic#pkg-note-BUG).
To fundamentally fix this, uint64s should be aligned by either placing on top of structs or with padding. It's not a big issue so it can be fixed in the CI by using Go version 1.21.6.
Also, [README's status badge](https://github.com/flashbots/mev-share-node/blob/6fb6a9847eb4c9a077ed712342ed3490676b75a2/README.md?plain=1#L5C87-L5C127) is not using this repo's workflows.
Contributor guide
Assessment
This issue has not been assessed yet.