DiamondLightSource / DiamondLightSource/pythonSoftIOC
Intermittently failing test
- 主要語言
- Python
- 星號
- 46
- 分支
- 15
- 平均合併
- 1 天 18 小時
- 30 天內合併 PR
- 1
描述
There seems to be an intermittent failing test, introduced in the Autosave feature. Here's the failure stack from the[ last failed run](https://github.com/DiamondLightSource/pythonSoftIOC/actions/runs/12115105099/job/33772826165):
```
_____________________ test_context_manager_thread_safety ______________________
Traceback (most recent call last):
...
...
File "C:\Users\runneradmin\AppData\Local\Temp\cibw-run-4d5mbdhg\cp39-win_amd64\venv-test\lib\site-packages\_pytest\python.py", line 159, in pytest_pyfunc_call
result = testfunction(**testargs)
File "D:\a\pythonSoftIOC\pythonSoftIOC\tests\test_autosave.py", line 443, in test_context_manager_thread_safety
builder.aOut("PV-FROM-CM")
File "C:\Users\runneradmin\AppData\Local\Temp\cibw-run-4d5mbdhg\cp39-win_amd64\venv-test\lib\site-packages\softioc\builder.py", line 59, in aOut
return PythonDevice.ao(name, EGU = EGU, PREC = PREC, **fields)
File "C:\Users\runneradmin\AppData\Local\Temp\cibw-run-4d5mbdhg\cp39-win_amd64\venv-test\lib\site-packages\softioc\pythonSoftIoc.py", line 117, in __call__
return RecordWrapper(
File "C:\Users\runneradmin\AppData\Local\Temp\cibw-run-4d5mbdhg\cp39-win_amd64\venv-test\lib\site-packages\softioc\pythonSoftIoc.py", line 36, in __init__
record.address = '@' + record.name
File "C:\Users\runneradmin\AppData\Local\Temp\cibw-run-4d5mbdhg\cp39-win_amd64\venv-test\lib\site-packages\epicsdbbuilder\recordbase.py", line 216, in __setattr__
self.__ValidateField(fieldname, value)
File "C:\Users\runneradmin\AppData\Local\Temp\cibw-run-4d5mbdhg\cp39-win_amd64\venv-test\lib\site-packages\epicsdbbuilder\recordbase.py", line 227, in __ValidateField
self._validate.ValidFieldValue(fieldname, str(value))
File "C:\Users\runneradmin\AppData\Local\Temp\cibw-run-4d5mbdhg\cp39-win_amd64\venv-test\lib\site-packages\epicsdbbuilder\dbd.py", line 91, in ValidFieldValue
assert message is None, \
AssertionError: Can't write "@PV-FROM-CM" to field OUT: fldDes not found
```
The issue appears to be coming from epicsdbbuilder, which is why I've raised [this issue there.](https://github.com/DiamondLightSource/epicsdbbuilder/issues/32)
I've attempted to investigate this issue in CI in PR #177 , but have been unable to recreate it so far.
貢獻指南
研究方向
Start with tests/test_autosave.py::test_context_manager_thread_safety and reproduce the Windows CI failure from the linked run. Compare the Autosave-related behavior with epicsdbbuilder issue #32 and PR #177; done means identifying the intermittent cause, making the test pass reliably in CI, and confirming the failure no longer occurs.
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- python
- 領域
- testing
- Issue 類型
- 缺陷
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 停滯
- 描述清晰度
- 需要釐清
- 新手友好度
- 30/100