SpaceTeam / STS1_COBC_SW

Software for the communication and onboard computer (COBC) of SpaceTeamSat1 (STS1)
MIT License
10 stars 2 forks source link

Segmentation violation in LfsRam.test.cpp even though nothing changed #281

Closed PatrickKa closed 6 months ago

PatrickKa commented 6 months ago

Description

As seen in #279 and described in this comment, the tests in LfsRam.test.cpp started to cause a segmentation violation for no apparent reason. The code didn't change, and the version of the docker image didn't change either. Furthermore, the error is not reproducible locally.

Possible solution

The only thing I can think of that might have changed since the last successful run of the test on 21.04.2024 is some part of the GitHub actions infrastructure. For example, there were problems with Microsoft's apt package repositories on 25.04.2024 causing lots of CI workflows to fail. So maybe there was also some change that caused this break. One thing I noticed is that we get lots of warnings about deprecated node.js versions because we use some of our actions with outdated versions. Maybe updating them helps.

Edit: Seems like I was wrong about the container version. Only the version of the dev container is fixed. The CI jobs use the latest versions and that caused the problem. This is why I like to explicitly specify all versions in CI workflows.

danielschloms commented 6 months ago

The problem is that the master branch also uses the latest Docker container to build and test (ci.yml), which uses LFS_THREADSAFE for littlefs. Either we add mock implementations for Lock/Unlock, or hold back the container version to 1.6.0.