From: Ron F. <ro...@us...> - 2005-11-23 14:04:57
|
Update of /cvsroot/nscldaq/clients/Stager In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14373/Stager Modified Files: Tag: daqclients-8_0_maint Experiment.tcl Log Message: Fix defect in Experiment::CleanupOrphans. When an event file link existed in ~/experiment/current, it was not properly reconnected to the event file (if it existed) in ~/stagearea/complete...after moving it to a run dir. It had, instead, been left pointing at the ~stagearea/current location which was no longer valid. Index: Experiment.tcl =================================================================== RCS file: /cvsroot/nscldaq/clients/Stager/Experiment.tcl,v retrieving revision 4.1 retrieving revision 4.1.2.1 diff -C2 -d -r4.1 -r4.1.2.1 *** Experiment.tcl 8 Nov 2004 17:37:45 -0000 4.1 --- Experiment.tcl 23 Nov 2005 14:04:30 -0000 4.1.2.1 *************** *** 533,536 **** --- 533,537 ---- proc CleanOrphans {} { set Eventdir [ExpFileSystem::WhereisCurrentEventData] + set completeEventDir [ExpFileSystem::WhereareCompleteEventFiles] set orphanfiles [glob -nocomplain $Eventdir/run*.evt] set root [ExpFileSystem::GetRoot] *************** *** 584,588 **** set name [file tail $file] if {[scan $name "run%d-%d.evt" run size] == 2} { ! # puts "Decoded $name" # # Note, non event files are considered to belong --- 585,590 ---- set name [file tail $file] if {[scan $name "run%d-%d.evt" run size] == 2} { ! set destdir [ExpFileSystem::WhereisRun $run] ! # # Note, non event files are considered to belong *************** *** 591,615 **** # if {[file type $file] == "link"} { ! # ! # Event files must be links.. ! # ! if {[catch {set eventfile [file readlink $file]}] == 0} { ! # link is traversable.. attempt to relocate link. ! set destdir [ExpFileSystem::WhereisRun $run] ! if {![file exists $destdir/$name]} { ! # Destination doesn't exist yet. file mkdir $destdir ! catch { ! puts "trying mv $file $destdir/$name" ! exec mv -f $file $destdir/$name ! puts "Mv done ok" ! } ! } else { ! puts "Dest File exists..deleting $file" ! file delete $file } - } else { - # link is dead end... delete it.. - file delete $file } } --- 593,609 ---- # if {[file type $file] == "link"} { ! file delete $file; # Either way it's out of current. ! ! # Translate the link if it's not in the destdir yet. ! ! if {![file exists [file join $destdir $name]]} { ! set eventFile [file join $completeEventDir $name] ! if {[file exists $eventFile]} { ! # Make new link in run directory. ! set linkname [file join $destdir $name] file mkdir $destdir ! exec ln -s $eventFile $linkname ! puts "Created link: $linkname -> $eventFile" } } } |