19f16e7908a8bca3aedae90340d499bce4ae8535 hiram Thu May 21 11:48:50 2026 -0700 reentrant save log files for the doTrackDb steps refs #31811 diff --git src/hg/utils/otto/userRequests/ottoRequestWatch.sh src/hg/utils/otto/userRequests/ottoRequestWatch.sh index 37015b2e6eb..78868ee3593 100755 --- src/hg/utils/otto/userRequests/ottoRequestWatch.sh +++ src/hg/utils/otto/userRequests/ottoRequestWatch.sh @@ -372,66 +372,70 @@ # target direction: targetDb is target, queryDb is query, work in buildDir. # GenArk targets use doTrackDb.bash sitting next to the trackData dir; # UCSC native targets use chainNetTrackDb.pl which probes axtChain/*.bb # in the build dir and writes a stanza into the otto kent clone. rm -f "${trackData}/lastz.${queryDb}" ln -s "${workDir}" "${trackData}/lastz.${queryDb}" case "${targetDb}" in GC[AF]_*) doTdb="$(dirname "${trackData}")/doTrackDb.bash" if [ ! -x "${doTdb}" ]; then printf "ERROR: can not find %s\n" "${doTdb}" 1>&2 setErrorStatus "${reqId}" continue fi - if ! "${doTdb}" >> /cluster/home/hiram/kent/src/hg/utils/otto/userRequests/doTdb.log 2>&1; then + if ! "${doTdb}" >> /dev/shm/doTdb.$$.log 2>&1; then printf "ERROR: %s failed\n" "${doTdb}" 1>&2 - cat /cluster/home/hiram/kent/src/hg/utils/otto/userRequests/doTdb.log 1>&2 + cat /dev/shm/doTdb.$$.log 1>&2 + rm -f /dev/shm/doTdb.$$.log setErrorStatus "${reqId}" continue fi + rm -f /dev/shm/doTdb.$$.log ;; *) if ! ( cd "${buildDir}" \ && "${scriptDir}/chainNetTrackDb.pl" \ "${targetDb}" "${queryDb}" ); then printf "ERROR: chainNetTrackDb.pl failed for %s/%s\n" \ "${targetDb}" "${queryDb}" 1>&2 setErrorStatus "${reqId}" continue fi ;; esac # swap direction: queryDb is target, targetDb is query, work in swapDir rm -f "${swapData}/lastz.${targetDb}" ln -s "${swapWork}" "${swapData}/lastz.${targetDb}" case "${queryDb}" in GC[AF]_*) swapTdb="$(dirname "${swapData}")/doTrackDb.bash" if [ ! -x "${swapTdb}" ]; then printf "ERROR: can not find %s\n" "${swapTdb}" 1>&2 setErrorStatus "${reqId}" continue fi - if ! "${swapTdb}" >> /cluster/home/hiram/kent/src/hg/utils/otto/userRequests/swapTdb.log 2>&1; then + if ! "${swapTdb}" >> /dev/shm/swapTdb.$$.log 2>&1; then printf "ERROR: %s failed\n" "${swapTdb}" 1>&2 - cat /cluster/home/hiram/kent/src/hg/utils/otto/userRequests/swapTdb.log 1>&2 + cat /dev/shm/swapTdb.$$.log 1>&2 + rm -f /dev/shm/swapTdb.$$.log setErrorStatus "${reqId}" continue fi + rm -f /dev/shm/swapTdb.$$.log ;; *) if ! ( cd "${swapDir}" \ && "${scriptDir}/chainNetTrackDb.pl" \ "${queryDb}" "${targetDb}" ); then printf "ERROR: chainNetTrackDb.pl failed for %s/%s\n" \ "${queryDb}" "${targetDb}" 1>&2 setErrorStatus "${reqId}" continue fi ;; esac # install liftOver and quickLift symlinks + register in hgcentraltest, # for both directions