Loading Common/Servers/Scheduler/src/ScheduleExecutor.cpp +7 −5 Original line number Original line Diff line number Diff line Loading @@ -4,10 +4,12 @@ using namespace baci; using namespace baci; #define NORMAL_RECORDING (m_currentScan.backendProc!=_SCHED_NULLTARGET) && (m_currentScan.duration>0.0) #define BCKEND_CONFIG (m_currentScan.backendProc!=_SCHED_NULLTARGET) #define NORMAL_RECORDING BCKEND_CONFIG && (m_currentScan.duration>0.0) #define NO_RECORDING m_currentScan.duration<=0.0 #define NO_RECORDING m_currentScan.duration<=0.0 #define DRY_RUN (m_currentScan.backendProc==_SCHED_NULLTARGET) && (m_currentScan.duration>0.0) #define DRY_RUN (m_currentScan.backendProc==_SCHED_NULLTARGET) && (m_currentScan.duration>0.0) CScheduleExecutor::CScheduleExecutor(const ACE_CString& name,CCore *param, CScheduleExecutor::CScheduleExecutor(const ACE_CString& name,CCore *param, const ACS::TimeInterval& responseTime,const ACS::TimeInterval& sleepTime) : ACS::Thread(name,responseTime,sleepTime) const ACS::TimeInterval& responseTime,const ACS::TimeInterval& sleepTime) : ACS::Thread(name,responseTime,sleepTime) { { Loading Loading @@ -142,7 +144,7 @@ void CScheduleExecutor::runLoop() catch (ACSErr::ACSbaseExImpl& ex) { catch (ACSErr::ACSbaseExImpl& ex) { _ADD_BACKTRACE(ManagementErrors::SubscanErrorExImpl,impl,ex,"CScheduleExecutor::runLoop()"); _ADD_BACKTRACE(ManagementErrors::SubscanErrorExImpl,impl,ex,"CScheduleExecutor::runLoop()"); impl.setSubScanID(m_scheduleCounter); impl.setSubScanID(m_scheduleCounter); impl.setReason("cannot check scan against telescope"); impl.setReason("scan cannot be validated"); m_core->changeSchedulerStatus(Management::MNG_FAILURE); m_core->changeSchedulerStatus(Management::MNG_FAILURE); //impl.log(LM_ERROR); //impl.log(LM_ERROR); CUSTOM_EXCPT_LOG(impl,LM_ERROR); CUSTOM_EXCPT_LOG(impl,LM_ERROR); Loading Loading @@ -178,7 +180,7 @@ void CScheduleExecutor::runLoop() if (m_schedule->getSchedReps()>0) { // if negative the schedule is repeated continuosly if (m_schedule->getSchedReps()>0) { // if negative the schedule is repeated continuosly if (m_repetition>=(DWORD)m_schedule->getSchedReps()) { // END OF SCHEDULE if (m_repetition>=(DWORD)m_schedule->getSchedReps()) { // END OF SCHEDULE CUSTOM_LOG(LM_FULL_INFO,"CScheduleExecutor::runLoop()", CUSTOM_LOG(LM_FULL_INFO,"CScheduleExecutor::runLoop()", (LM_NOTICE,"All repetions are completed, schedule will be halted")); (LM_NOTICE,"All repetitions are completed, schedule will be halted")); cleanSchedule(false); cleanSchedule(false); break; break; } } Loading Loading @@ -894,7 +896,7 @@ void CScheduleExecutor::prepareFileWriting(/*const CSchedule::TRecord& rec*/) th m_core->disableDataTransfer(); m_core->disableDataTransfer(); } } } } if (NORMAL_RECORDING) { // if the writing has been disabled if (BCKEND_CONFIG) { // if the writing has been disabled if (m_currentScan.backendProc!=m_currentBackendProcedure) { if (m_currentScan.backendProc!=m_currentBackendProcedure) { ACS_LOG(LM_FULL_INFO,"CScheduleExecutor::prepareFileWriting()",(LM_DEBUG,"NEW_BACKEND_PROCEDURE")); ACS_LOG(LM_FULL_INFO,"CScheduleExecutor::prepareFileWriting()",(LM_DEBUG,"NEW_BACKEND_PROCEDURE")); if (!m_schedule->getBackendList()->getBackend(m_currentScan.backendProc,bckInstance,command)) { if (!m_schedule->getBackendList()->getBackend(m_currentScan.backendProc,bckInstance,command)) { Loading @@ -908,7 +910,7 @@ void CScheduleExecutor::prepareFileWriting(/*const CSchedule::TRecord& rec*/) th m_currentBackendProcedure=m_currentScan.backendProc; m_currentBackendProcedure=m_currentScan.backendProc; } } m_core->_chooseDefaultDataRecorder(m_currentScan.writerInstance); //CouldntGetComponentExImpl ComponentErrors::UnexpectedExImpl m_core->_chooseDefaultDataRecorder(m_currentScan.writerInstance); //CouldntGetComponentExImpl ComponentErrors::UnexpectedExImpl m_core->enableDataTransfer(); if (NORMAL_RECORDING) m_core->enableDataTransfer(); } } else { else { m_currentBackendProcedure=_SCHED_NULLTARGET; m_currentBackendProcedure=_SCHED_NULLTARGET; Loading Medicina/CDB/alma/DataBlock/DMed/DMed.xml +24 −27 Original line number Original line Diff line number Diff line Loading @@ -7,61 +7,58 @@ IP="192.168.51.28" IP="192.168.51.28" PORT="5003"> PORT="5003"> <Configuration name="sole"> <Configuration name="default"> <Board number="6"> <Board number="6"> <Attenuator ID="0" Value="10.0"/> <Attenuator ID="0" Value="0.0"/> <Attenuator ID="1" Value="7.0"/> <Attenuator ID="1" Value="7.0"/> <Attenuator ID="2" Value="0.0"/> <Attenuator ID="2" Value="0.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="8"> <Board number="8"> <Attenuator ID="0" Value="26.0"/> <Attenuator ID="0" Value="0.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="8.0"/> <Attenuator ID="2" Value="29.0"/> <Attenuator ID="2" Value="0.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="9"> <Board number="9"> <Attenuator ID="0" Value="15.0"/> <Attenuator ID="0" Value="13.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="13.0"/> <Attenuator ID="2" Value="16.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="10"> <Board number="10"> <Attenuator ID="0" Value="23.0"/> <Attenuator ID="0" Value="16.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="22.0"/> <Attenuator ID="2" Value="14.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> </Configuration> </Configuration> <Configuration name="KKC"> <Configuration name="sun"> <Board number="6"> <Board number="6"> <Attenuator ID="0" Value="10.0"/> <Attenuator ID="0" Value="0.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="7.0"/> <Attenuator ID="2" Value="10.0"/> <Attenuator ID="2" Value="0.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="8"> <Board number="8"> <Attenuator ID="0" Value="10.0"/> <Attenuator ID="0" Value="0.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="8.0"/> <Attenuator ID="2" Value="10.0"/> <Attenuator ID="2" Value="0.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="9"> <Board number="9"> <Attenuator ID="0" Value="10.0"/> <Attenuator ID="0" Value="28.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="10.0"/> <Attenuator ID="2" Value="26.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="10"> <Board number="10"> <Attenuator ID="0" Value="10.0"/> <Attenuator ID="0" Value="11.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="10.0"/> <Attenuator ID="2" Value="22.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> </Configuration> </Configuration> </DMedConfiguration> </DMedConfiguration> Medicina/Configuration/CDB/alma/DataBlock/DMed/DMed.xml +7 −7 Original line number Original line Diff line number Diff line Loading @@ -49,15 +49,15 @@ <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="9"> <Board number="9"> <Attenuator ID="0" Value="15.0"/> <Attenuator ID="0" Value="28.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="13.0"/> <Attenuator ID="2" Value="26.0"/> <Attenuator ID="3" Value="15.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="10"> <Board number="10"> <Attenuator ID="0" Value="23.0"/> <Attenuator ID="0" Value="11.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="26.0"/> <Attenuator ID="2" Value="22.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> </Configuration> </Configuration> Loading Medicina/Misc/MedScripts/src/med-ssh 0 → 100644 +79 −0 Original line number Original line Diff line number Diff line #!/usr/bin/env bash print_help() { echo " " echo "`basename $0` v1.0" echo " " echo "Log project into the DISCOS system homes." echo "Usage: '`basename $0` [-p|--port portnumber] <projectid>@<gatein>'" echo " '`basename $0` -h|--help'" echo "-h | --help prints this help message and exit" echo "-p | --port ssh port, if different from the default one" echo " <projectid> indicates the project you wanto to log in." echo " <gatein> access point into the observatory lan. This information is provided by local staff." echo " Use 'local' if already inside the local area network." exit 1 } current_system="LINUX" ssh_port="22" project="" gatein="" local="FALSE" while [[ $# -gt 0 ]] do key="$1" case $key in -h|--help) print_help ;; -p|--port) ssh_port=$2 shift shift ;; *) if [[ $1 == *"@"* ]]; then while IFS='@' read -ra ARG; do if [[ "${#ARG[@]}" -ne 2 ]]; then echo "Please provide a correct <projectid>@<gatein> pair, retry!" print_help fi project=${ARG[0]} gatein=${ARG[1]} done <<< "$1" else echo "Unrecognized option: '$1'!" print_help fi shift ;; esac done if [[ "$gatein" == "local" ]]; then local="TRUE" fi if [[ "$OSTYPE" == *"linux-gnu"* ]] then echo -e "Linux OS is detected..." current_system="LINUX" elif [[ "$OSTYPE" == *"darwin"* ]] then echo -e "Mac OS is detected..." current_system="MACOS" else echo -e "Not supported OS, some unpredictable results may happen!" fi proxy="ProxyCommand=ssh -p ""$ssh_port"" -W %h:%p observer@""$gatein" #echo $proxy if [[ "$local" == "FALSE" ]]; then ssh -Y -p 9922 -o "$proxy" "$project"@192.167.189.98 else ssh -Y -p 9922 "$project"@192.167.189.98 fi Loading
Common/Servers/Scheduler/src/ScheduleExecutor.cpp +7 −5 Original line number Original line Diff line number Diff line Loading @@ -4,10 +4,12 @@ using namespace baci; using namespace baci; #define NORMAL_RECORDING (m_currentScan.backendProc!=_SCHED_NULLTARGET) && (m_currentScan.duration>0.0) #define BCKEND_CONFIG (m_currentScan.backendProc!=_SCHED_NULLTARGET) #define NORMAL_RECORDING BCKEND_CONFIG && (m_currentScan.duration>0.0) #define NO_RECORDING m_currentScan.duration<=0.0 #define NO_RECORDING m_currentScan.duration<=0.0 #define DRY_RUN (m_currentScan.backendProc==_SCHED_NULLTARGET) && (m_currentScan.duration>0.0) #define DRY_RUN (m_currentScan.backendProc==_SCHED_NULLTARGET) && (m_currentScan.duration>0.0) CScheduleExecutor::CScheduleExecutor(const ACE_CString& name,CCore *param, CScheduleExecutor::CScheduleExecutor(const ACE_CString& name,CCore *param, const ACS::TimeInterval& responseTime,const ACS::TimeInterval& sleepTime) : ACS::Thread(name,responseTime,sleepTime) const ACS::TimeInterval& responseTime,const ACS::TimeInterval& sleepTime) : ACS::Thread(name,responseTime,sleepTime) { { Loading Loading @@ -142,7 +144,7 @@ void CScheduleExecutor::runLoop() catch (ACSErr::ACSbaseExImpl& ex) { catch (ACSErr::ACSbaseExImpl& ex) { _ADD_BACKTRACE(ManagementErrors::SubscanErrorExImpl,impl,ex,"CScheduleExecutor::runLoop()"); _ADD_BACKTRACE(ManagementErrors::SubscanErrorExImpl,impl,ex,"CScheduleExecutor::runLoop()"); impl.setSubScanID(m_scheduleCounter); impl.setSubScanID(m_scheduleCounter); impl.setReason("cannot check scan against telescope"); impl.setReason("scan cannot be validated"); m_core->changeSchedulerStatus(Management::MNG_FAILURE); m_core->changeSchedulerStatus(Management::MNG_FAILURE); //impl.log(LM_ERROR); //impl.log(LM_ERROR); CUSTOM_EXCPT_LOG(impl,LM_ERROR); CUSTOM_EXCPT_LOG(impl,LM_ERROR); Loading Loading @@ -178,7 +180,7 @@ void CScheduleExecutor::runLoop() if (m_schedule->getSchedReps()>0) { // if negative the schedule is repeated continuosly if (m_schedule->getSchedReps()>0) { // if negative the schedule is repeated continuosly if (m_repetition>=(DWORD)m_schedule->getSchedReps()) { // END OF SCHEDULE if (m_repetition>=(DWORD)m_schedule->getSchedReps()) { // END OF SCHEDULE CUSTOM_LOG(LM_FULL_INFO,"CScheduleExecutor::runLoop()", CUSTOM_LOG(LM_FULL_INFO,"CScheduleExecutor::runLoop()", (LM_NOTICE,"All repetions are completed, schedule will be halted")); (LM_NOTICE,"All repetitions are completed, schedule will be halted")); cleanSchedule(false); cleanSchedule(false); break; break; } } Loading Loading @@ -894,7 +896,7 @@ void CScheduleExecutor::prepareFileWriting(/*const CSchedule::TRecord& rec*/) th m_core->disableDataTransfer(); m_core->disableDataTransfer(); } } } } if (NORMAL_RECORDING) { // if the writing has been disabled if (BCKEND_CONFIG) { // if the writing has been disabled if (m_currentScan.backendProc!=m_currentBackendProcedure) { if (m_currentScan.backendProc!=m_currentBackendProcedure) { ACS_LOG(LM_FULL_INFO,"CScheduleExecutor::prepareFileWriting()",(LM_DEBUG,"NEW_BACKEND_PROCEDURE")); ACS_LOG(LM_FULL_INFO,"CScheduleExecutor::prepareFileWriting()",(LM_DEBUG,"NEW_BACKEND_PROCEDURE")); if (!m_schedule->getBackendList()->getBackend(m_currentScan.backendProc,bckInstance,command)) { if (!m_schedule->getBackendList()->getBackend(m_currentScan.backendProc,bckInstance,command)) { Loading @@ -908,7 +910,7 @@ void CScheduleExecutor::prepareFileWriting(/*const CSchedule::TRecord& rec*/) th m_currentBackendProcedure=m_currentScan.backendProc; m_currentBackendProcedure=m_currentScan.backendProc; } } m_core->_chooseDefaultDataRecorder(m_currentScan.writerInstance); //CouldntGetComponentExImpl ComponentErrors::UnexpectedExImpl m_core->_chooseDefaultDataRecorder(m_currentScan.writerInstance); //CouldntGetComponentExImpl ComponentErrors::UnexpectedExImpl m_core->enableDataTransfer(); if (NORMAL_RECORDING) m_core->enableDataTransfer(); } } else { else { m_currentBackendProcedure=_SCHED_NULLTARGET; m_currentBackendProcedure=_SCHED_NULLTARGET; Loading
Medicina/CDB/alma/DataBlock/DMed/DMed.xml +24 −27 Original line number Original line Diff line number Diff line Loading @@ -7,61 +7,58 @@ IP="192.168.51.28" IP="192.168.51.28" PORT="5003"> PORT="5003"> <Configuration name="sole"> <Configuration name="default"> <Board number="6"> <Board number="6"> <Attenuator ID="0" Value="10.0"/> <Attenuator ID="0" Value="0.0"/> <Attenuator ID="1" Value="7.0"/> <Attenuator ID="1" Value="7.0"/> <Attenuator ID="2" Value="0.0"/> <Attenuator ID="2" Value="0.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="8"> <Board number="8"> <Attenuator ID="0" Value="26.0"/> <Attenuator ID="0" Value="0.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="8.0"/> <Attenuator ID="2" Value="29.0"/> <Attenuator ID="2" Value="0.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="9"> <Board number="9"> <Attenuator ID="0" Value="15.0"/> <Attenuator ID="0" Value="13.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="13.0"/> <Attenuator ID="2" Value="16.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="10"> <Board number="10"> <Attenuator ID="0" Value="23.0"/> <Attenuator ID="0" Value="16.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="22.0"/> <Attenuator ID="2" Value="14.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> </Configuration> </Configuration> <Configuration name="KKC"> <Configuration name="sun"> <Board number="6"> <Board number="6"> <Attenuator ID="0" Value="10.0"/> <Attenuator ID="0" Value="0.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="7.0"/> <Attenuator ID="2" Value="10.0"/> <Attenuator ID="2" Value="0.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="8"> <Board number="8"> <Attenuator ID="0" Value="10.0"/> <Attenuator ID="0" Value="0.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="8.0"/> <Attenuator ID="2" Value="10.0"/> <Attenuator ID="2" Value="0.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="9"> <Board number="9"> <Attenuator ID="0" Value="10.0"/> <Attenuator ID="0" Value="28.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="10.0"/> <Attenuator ID="2" Value="26.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="10"> <Board number="10"> <Attenuator ID="0" Value="10.0"/> <Attenuator ID="0" Value="11.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="10.0"/> <Attenuator ID="2" Value="22.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> </Configuration> </Configuration> </DMedConfiguration> </DMedConfiguration>
Medicina/Configuration/CDB/alma/DataBlock/DMed/DMed.xml +7 −7 Original line number Original line Diff line number Diff line Loading @@ -49,15 +49,15 @@ <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="9"> <Board number="9"> <Attenuator ID="0" Value="15.0"/> <Attenuator ID="0" Value="28.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="13.0"/> <Attenuator ID="2" Value="26.0"/> <Attenuator ID="3" Value="15.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> <Board number="10"> <Board number="10"> <Attenuator ID="0" Value="23.0"/> <Attenuator ID="0" Value="11.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="1" Value="10.0"/> <Attenuator ID="2" Value="26.0"/> <Attenuator ID="2" Value="22.0"/> <Attenuator ID="3" Value="10.0"/> <Attenuator ID="3" Value="10.0"/> </Board> </Board> </Configuration> </Configuration> Loading
Medicina/Misc/MedScripts/src/med-ssh 0 → 100644 +79 −0 Original line number Original line Diff line number Diff line #!/usr/bin/env bash print_help() { echo " " echo "`basename $0` v1.0" echo " " echo "Log project into the DISCOS system homes." echo "Usage: '`basename $0` [-p|--port portnumber] <projectid>@<gatein>'" echo " '`basename $0` -h|--help'" echo "-h | --help prints this help message and exit" echo "-p | --port ssh port, if different from the default one" echo " <projectid> indicates the project you wanto to log in." echo " <gatein> access point into the observatory lan. This information is provided by local staff." echo " Use 'local' if already inside the local area network." exit 1 } current_system="LINUX" ssh_port="22" project="" gatein="" local="FALSE" while [[ $# -gt 0 ]] do key="$1" case $key in -h|--help) print_help ;; -p|--port) ssh_port=$2 shift shift ;; *) if [[ $1 == *"@"* ]]; then while IFS='@' read -ra ARG; do if [[ "${#ARG[@]}" -ne 2 ]]; then echo "Please provide a correct <projectid>@<gatein> pair, retry!" print_help fi project=${ARG[0]} gatein=${ARG[1]} done <<< "$1" else echo "Unrecognized option: '$1'!" print_help fi shift ;; esac done if [[ "$gatein" == "local" ]]; then local="TRUE" fi if [[ "$OSTYPE" == *"linux-gnu"* ]] then echo -e "Linux OS is detected..." current_system="LINUX" elif [[ "$OSTYPE" == *"darwin"* ]] then echo -e "Mac OS is detected..." current_system="MACOS" else echo -e "Not supported OS, some unpredictable results may happen!" fi proxy="ProxyCommand=ssh -p ""$ssh_port"" -W %h:%p observer@""$gatein" #echo $proxy if [[ "$local" == "FALSE" ]]; then ssh -Y -p 9922 -o "$proxy" "$project"@192.167.189.98 else ssh -Y -p 9922 "$project"@192.167.189.98 fi