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

NS doesn't reload PV names on initial connection to an IOC #3

Open
anjohnson opened this issue Aug 2, 2024 · 0 comments
Open

NS doesn't reload PV names on initial connection to an IOC #3

anjohnson opened this issue Aug 2, 2024 · 0 comments

Comments

@anjohnson
Copy link
Member

When the name-server starts, it parses the pvDirectory.txt file and associates all the PV names from each file listed with that IOC. The code linked below is the part of the connection handler that runs when the IOC's heartbeat PV successfully connects:

// initial connection

There's an assumption in that code which is wrong. An IOC that was down when the name-server was restarted might write a different set of PV names to the file when it next boots, adding or removing names. The name-server marks each IOC as up when the heartbeat PV connects, but the code there assumes that it doesn't need to reload the PV names on the first connection (which could be hours or days later).

A fix which handles the initial connection exactly like the reconnect case would resolve this, but restarting a running name-server would then parse the file from each active IOC twice. That's undesirable for large sites like APS (750 IOCs, 1.75m PVs), so I want to stop it reading all the files at startup, allowing that parsing to happen as each IOC's heartbeat connects.

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