fork_exec: cannot allocate memory
- Dominant language
- Python
- Stars
- 27
- Forks
- 29
- Avg merge
- 4d 6h
- Merged PRs (30d)
- 12
Description
```
File "robot.py", line 59, in createObjects
wpilib.CameraServer.launch()
File "/usr/local/lib/python3.8/site-packages/wpilib/cameraserver.py", line 83, in launch
proc = subprocess.Popen(
File "/usr/local/lib/python3.8/subprocess.py", line 854, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/local/lib/python3.8/subprocess.py", line 1637, in _execute_child
self.pid = _posixsubprocess.fork_exec(
OSError: [Errno 12] Cannot allocate memory
```
This user is importing rev, ctre, numpy, and lots of things, and my belief is that when we do a subprocess.run it's copying the entire process memory space (because that's what fork does on linux? -- though I thought it was supposed to be copy on write?), and failing to do so.
A workaround is to put the cameraserver launch at the beginning of the robot.py before anything else is imported. A bit of a hack, but it works. Need to think about a better way to address this.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.