[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [HTCondor-users] Conditional output file transfer



On Fri, May 10, 2013 at 09:43:51AM -0500, R. Kent Wenger wrote:
> >Anyway, since the jobs I'm running are wrapped in python I've just bundled
> >the functionality at the point where the job starts. A failure causes an
> >exception and the cleanup code is not run.
> 
> That should handle it, too...

I think I was a bit premature with my results.

It appears that if the submit file contains

    error = myjobname.err

then a zero-byte "myjobname.err" is created on the submit host automatically
(either at the time the job is submitted or when it starts executing, I'm
not sure which)

Code executes in a temporary directory like
/usr/local/var/condor/execute/dir_XXXXX

There is no "myjobname.err" in this environment, but rather _condor_stdout
and _condor_stderr. Deleting _condor_stderr doesn't prevent creation of
myjobname.err on the submit host, although it prevents it being transferred
back.

The reason I got confused: I had been testing on a 'personal condor' running
on my OSX laptop.  It turns out that the jobs submitted like this which run
on the same machine don't transfer any files; they run directly in the same
directory as the job was submitted (/Users/brian), I guess because it's the
same filesystem domain.  If the script deletes myjobname.err therefore, it
succeeds.

However, if I force transfer of files with "should_transfer_files = yes"
then the code executes within a temporary directory as described above.

Regards,

Brian.