Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BUG: Components / PVs not explicitly listed in the checkout can have cagets requested #209

Open
tangkong opened this issue Sep 22, 2023 · 0 comments

Comments

@tangkong
Copy link
Contributor

Expected Behavior

We should only attempt to access the data specified in the checkout

Current Behavior

For some devices, initializing the signal seems to try to access other PVs in the device.

Possible Solution

Be lazier?
grab the PV and make the signal explicitly? aka never try to instantiate the device when we load a checkout?

Steps to Reproduce (for bugs)

  1. disable some parts (cameras on IM3K4)
  2. ~tmoopr/atef/configure-file/common-components-partI-ATM-PF2K4.json

Context

Tong ran into this trying to use atef

For a checkout only containing Target PVs (motors/motion, moving target in and out)

Traceback

ERROR:ophyd:Exception occurred during callback <function PyepicsShimPV.get_all_metadata_callback.<locals>.get_metadata_thread at 0x7ff10ccb5550> (pvname='IM3K4:PPM:CAM:CamRepRate_RBV')
Traceback (most recent call last):
  File "/cds/group/pcds/pyps/conda/py39/envs/pcds-5.7.3/lib/python3.9/site-packages/ophyd/_dispatch.py", line 55, in run
    callback(*args, **kwargs)
  File "/cds/group/pcds/pyps/conda/py39/envs/pcds-5.7.3/lib/python3.9/site-packages/ophyd/_pyepics_shim.py", line 144, in get_metadata_thread
    md = self.get_all_metadata_blocking(timeout=timeout)
  File "/cds/group/pcds/pyps/conda/py39/envs/pcds-5.7.3/lib/python3.9/site-packages/ophyd/_pyepics_shim.py", line 137, in get_all_metadata_blocking
    self.get_ctrlvars(timeout=timeout)
  File "/cds/group/pcds/pyps/conda/py39/envs/pcds-5.7.3/lib/python3.9/site-packages/epics/pv.py", line 47, in wrapped
    return func(self, *args, **kwargs)
  File "/cds/group/pcds/pyps/conda/py39/envs/pcds-5.7.3/lib/python3.9/site-packages/epics/pv.py", line 734, in get_ctrlvars
    kwds = ca.get_ctrlvars(self.chid, timeout=timeout, warn=warn)
  File "/cds/group/pcds/pyps/conda/py39/envs/pcds-5.7.3/lib/python3.9/site-packages/epics/ca.py", line 635, in wrapper
    return fcn(*args, **kwds)
  File "/cds/group/pcds/pyps/conda/py39/envs/pcds-5.7.3/lib/python3.9/site-packages/epics/ca.py", line 1770, in get_ctrlvars
    metadata = get_with_metadata(chid, ftype=ftype, count=1, timeout=timeout,
  File "/cds/group/pcds/pyps/conda/py39/envs/pcds-5.7.3/lib/python3.9/site-packages/epics/ca.py", line 635, in wrapper
    return fcn(*args, **kwds)
  File "/cds/group/pcds/pyps/conda/py39/envs/pcds-5.7.3/lib/python3.9/site-packages/epics/ca.py", line 1390, in get_with_metadata
    return get_complete_with_metadata(chid, count=count, ftype=ftype,
  File "/cds/group/pcds/pyps/conda/py39/envs/pcds-5.7.3/lib/python3.9/site-packages/epics/ca.py", line 635, in wrapper
    return fcn(*args, **kwds)
  File "/cds/group/pcds/pyps/conda/py39/envs/pcds-5.7.3/lib/python3.9/site-packages/epics/ca.py", line 1531, in get_complete_with_metadata
    raise get_failure_reason
epics.ca.ChannelAccessGetFailure: Get failed; status code: 192

Your Environment

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant