{"action":"created","issue":{"url":"https://api.github.com/repos/ISISComputingGroup/IBEX/issues/2824","repository_url":"https://api.github.com/repos/ISISComputingGroup/IBEX","labels_url":"https://api.github.com/repos/ISISComputingGroup/IBEX/issues/2824/labels{/name}","comments_url":"https://api.github.com/repos/ISISComputingGroup/IBEX/issues/2824/comments","events_url":"https://api.github.com/repos/ISISComputingGroup/IBEX/issues/2824/events","html_url":"https://github.com/ISISComputingGroup/IBEX/issues/2824","id":280963552,"number":2824,"title":"BLOCKSRV: Crash on restart with too many synoptics","user":{"login":"John-Holt-Tessella","id":7570055,"avatar_url":"https://avatars2.githubusercontent.com/u/7570055?v=4","gravatar_id":"","url":"https://api.github.com/users/John-Holt-Tessella","html_url":"https://github.com/John-Holt-Tessella","followers_url":"https://api.github.com/users/John-Holt-Tessella/followers","following_url":"https://api.github.com/users/John-Holt-Tessella/following{/other_user}","gists_url":"https://api.github.com/users/John-Holt-Tessella/gists{/gist_id}","starred_url":"https://api.github.com/users/John-Holt-Tessella/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/John-Holt-Tessella/subscriptions","organizations_url":"https://api.github.com/users/John-Holt-Tessella/orgs","repos_url":"https://api.github.com/users/John-Holt-Tessella/repos","events_url":"https://api.github.com/users/John-Holt-Tessella/events{/privacy}","received_events_url":"https://api.github.com/users/John-Holt-Tessella/received_events","type":"User","site_admin":false},"labels":[{"id":328681505,"url":"https://api.github.com/repos/ISISComputingGroup/IBEX/labels/bug","name":"bug","color":"fc2929","default":true},{"id":331752831,"url":"https://api.github.com/repos/ISISComputingGroup/IBEX/labels/impeded","name":"impeded","color":"e11d21","default":false}],"state":"open","locked":false,"assignee":{"login":"Tom-Willemsen","id":24375813,"avatar_url":"https://avatars1.githubusercontent.com/u/24375813?v=4","gravatar_id":"","url":"https://api.github.com/users/Tom-Willemsen","html_url":"https://github.com/Tom-Willemsen","followers_url":"https://api.github.com/users/Tom-Willemsen/followers","following_url":"https://api.github.com/users/Tom-Willemsen/following{/other_user}","gists_url":"https://api.github.com/users/Tom-Willemsen/gists{/gist_id}","starred_url":"https://api.github.com/users/Tom-Willemsen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Tom-Willemsen/subscriptions","organizations_url":"https://api.github.com/users/Tom-Willemsen/orgs","repos_url":"https://api.github.com/users/Tom-Willemsen/repos","events_url":"https://api.github.com/users/Tom-Willemsen/events{/privacy}","received_events_url":"https://api.github.com/users/Tom-Willemsen/received_events","type":"User","site_admin":false},"assignees":[{"login":"Tom-Willemsen","id":24375813,"avatar_url":"https://avatars1.githubusercontent.com/u/24375813?v=4","gravatar_id":"","url":"https://api.github.com/users/Tom-Willemsen","html_url":"https://github.com/Tom-Willemsen","followers_url":"https://api.github.com/users/Tom-Willemsen/followers","following_url":"https://api.github.com/users/Tom-Willemsen/following{/other_user}","gists_url":"https://api.github.com/users/Tom-Willemsen/gists{/gist_id}","starred_url":"https://api.github.com/users/Tom-Willemsen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Tom-Willemsen/subscriptions","organizations_url":"https://api.github.com/users/Tom-Willemsen/orgs","repos_url":"https://api.github.com/users/Tom-Willemsen/repos","events_url":"https://api.github.com/users/Tom-Willemsen/events{/privacy}","received_events_url":"https://api.github.com/users/Tom-Willemsen/received_events","type":"User","site_admin":false}],"milestone":null,"comments":6,"created_at":"2017-12-11T10:22:40Z","updated_at":"2017-12-19T22:52:41Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"BLOCKSRV crashes if there are too many synoptics and the block cache is running. To reporduce:\n\n1. Add  ~40 synoptics to the settings\n1. console to block server and block cache\n1. Make sure block cahce is running\n1. Restart blockserver\n\nYou should see:\n\n```\nAlarm server will update in 20 seconds from now\n\nINFO: Waiting for runcontrol IOC to start ...\nINFO: ... Runcontrol IOC started\nINFO: Runcontrol IOC started\nINFO: Adding PV SYNOPTICS:NAMES\nINFO: Adding PV SYNOPTICS:GET_DEFAULT\nINFO: Adding PV SYNOPTICS:__BLANK__:GET\nINFO: Adding PV SYNOPTICS:SET_DETAILS\nINFO: Adding PV SYNOPTICS:DELETE\nINFO: Adding PV SYNOPTICS:SCHEMA\nINFO: Adding PV SYNOPTICS:SDASD:GET\nINFO: Adding PV SYNOPTICS:FREDDI:GET\nINFO: Adding PV SYNOPTICS:SAMPLE:GET\nINFO: Adding PV SYNOPTICS:LARMOR:GET\n\n@@@ @@@ @@@ @@@ @@@\n@@@ Received a sigChild for process 16836. The process was killed by signal 11\n@@@ Current time: Mon Dec 11 09:55:06 2017\n@@@ Child process is shutting down, auto restart is disabled\n@@@ ^R or ^X restarts the child, ^Q quits the server\n@@@ Restarting child \"BLOCKSVR\"\n@@@    (as C:\\Instrument\\Apps\\EPICS\\ISIS\\inst_servers\\master\\start_blockserver_c\nmd.bat)\n@@@ The PID of new child \"BLOCKSVR\" is: 14688\n@@@ @@@ @@@ @@@ @@@\n```\n\nAlso see #1770 for previous crash."},"comment":{"url":"https://api.github.com/repos/ISISComputingGroup/IBEX/issues/comments/352911423","html_url":"https://github.com/ISISComputingGroup/IBEX/issues/2824#issuecomment-352911423","issue_url":"https://api.github.com/repos/ISISComputingGroup/IBEX/issues/2824","id":352911423,"user":{"login":"FreddieAkeroyd","id":1132753,"avatar_url":"https://avatars0.githubusercontent.com/u/1132753?v=4","gravatar_id":"","url":"https://api.github.com/users/FreddieAkeroyd","html_url":"https://github.com/FreddieAkeroyd","followers_url":"https://api.github.com/users/FreddieAkeroyd/followers","following_url":"https://api.github.com/users/FreddieAkeroyd/following{/other_user}","gists_url":"https://api.github.com/users/FreddieAkeroyd/gists{/gist_id}","starred_url":"https://api.github.com/users/FreddieAkeroyd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FreddieAkeroyd/subscriptions","organizations_url":"https://api.github.com/users/FreddieAkeroyd/orgs","repos_url":"https://api.github.com/users/FreddieAkeroyd/repos","events_url":"https://api.github.com/users/FreddieAkeroyd/events{/privacy}","received_events_url":"https://api.github.com/users/FreddieAkeroyd/received_events","type":"User","site_admin":false},"created_at":"2017-12-19T22:52:41Z","updated_at":"2017-12-19T22:52:41Z","author_association":"OWNER","body":"this->pPV being NULL is not good either, as it must have been non NULL at the start of the function as this is tested for by the if statement. Given both the mutex and pPV are NULL, it would seem likely that the casPVI instance has either been deleted or overwritten. Its destructor does not zero pPV directly, I see that casPVDestroyNotify() does zero pPV and can indirectly lead to the destructor of casPVI being called and so both get to be NULL, however casPVDestroyNotify takes out a lock and so should not run if ::read is in progress!  "}}
{"actor":{"display_login":"FreddieAkeroyd"}}