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

ioc startup: make individual iocs bats more flexible and start procServ on demand from procServControl #8558

Open
FreddieAkeroyd opened this issue Oct 29, 2024 · 3 comments

Comments

@FreddieAkeroyd
Copy link
Member

FreddieAkeroyd commented Oct 29, 2024

As a developer i would like the IOC startup bat scripts that are created in iocstartup/ioc_bats by running make iocstartups to allow additional options as well as just starting IOC. I would also like procserv to be started on demand from procServControl so there are not so many running on the system and consuming resources

Acceptance critera

using ILM200_01.bat as an example, running:

  • ILM200_01.bat or ILM200_01.bat start starts procserv
  • ILM200_01.bat stop stops procserv
  • ILM200_01.bat restart restarts procserv
  • ILM200_01.bat logrot closes and reopens log file. If you do this the following day it should create a new file with today's date which will not normally happen if no data is logged
  • ILM200_01.bat pid prints PID of process

After a start_ibex_server

  • check less procServ processes are running i.e. only those relevant to the configuration loaded, but all is working as before
  • check change config works. Note that non-needed iocs are stopped as before, but any procServ started earlier will remain.
  • check start/stop ioc from GUI to start/stop both a configuration present and non-configuration ioc work
  • check PSCTRL and BLOCKSERVER log files have no errors about failing to strat iocs

notes

  • when on branch at top of EPICS run make iocstartups to remake bats (this is also done by start_ibex_server)
  • If IOC is not generating any messages, then running logrot the following day creates a new file with today's date
  • running logrot may resolve the ProcServ: reproduce issue with "bad"/"locked" permissions #8555 issue on a case by case basis, it looks like permissions are OK after procserv stops so it may be the close/reopen from logrot is enough to clear things even if there is no day change
  • a startup argument is also added, on boot bats called with startup arg that only launches procserv for boot start items, and disable asyn autoconnect on non-boot items The related procservcontrol ticket will launch procserv on demand and also adjust asyn autoconnect
@FreddieAkeroyd FreddieAkeroyd self-assigned this Oct 29, 2024
@FreddieAkeroyd FreddieAkeroyd changed the title ioc startup: make more flexible ioc startup: make individual iocs bats more flexible and start procServ on demand from procServControl Nov 1, 2024
@FreddieAkeroyd FreddieAkeroyd moved this to Review in PI_2024_08 Nov 1, 2024
@rerpha
Copy link
Contributor

rerpha commented Nov 4, 2024

I think this also closes #7051

@rerpha
Copy link
Contributor

rerpha commented Nov 14, 2024

If i try to build RUNCTRL from a make clean uninstall && make i get:

*** No rule to make target '../../../lib/windows-x64/htmltidy.lib', needed by 'RUNCTRL_01.exe'.

I don't quite understand if it's missing something else in the configure/RELEASE that is in the MASTER_RELEASE file

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Review
Development

No branches or pull requests

2 participants