DiamondLightSource / DiamondLightSource/pythonSoftIOC

Intermittently failing test

未關閉
#178 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
bug
主要語言
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

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。