Mailing List Archives
Authenticated access
|
|
|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Condor-users] Condor job not executing
- Date: Thu, 16 Feb 2006 08:49:38 +0000
- From: Matt Hope <matthew.hope@xxxxxxxxx>
- Subject: Re: [Condor-users] Condor job not executing
On 2/16/06, Sameer Bahl <sameer.bahl@xxxxxxxxx> wrote:
> Hi,
>
> I have a windows executable which requires the pathname of the database
> directory as an argument to run and produces a text file as the output.
>
> For eg the command required to run it on windows is as follows:
>
> Y:\Simtest>SIAEC-Model-V50.exe y:\Simtest
>
> The directory Simtest contains all the input files required for the
> executable.
>
> I am trying to run this on a condor pool with the following submit file;
I'm afraid you have some errors/misunderstandings about how the submit
file arguments are set and how condor works on windows...
> environment = path=y:\Simtest
y:\ will almost certainly not exist to the low permissions user condor
uses on the executing machines. If you need network usage from the
execution client you have to open things up yourself (with explicit
users names and passwords for example)
> transfer_input_files = y:\Simtest\ProModel Airport Information.xls,
> y:\Simtest\ProModel Airport Location GMT.xls, y:\Simtest\ProModel Component
> Optimal Balance.xls ,y:\Simtest\ProModel Flights.xls, y:\Simtest\ProModel
> Input Parameters Ground Movements.xls, y:\Simtest\ProModel Input
> Parameters.xls, y:\Simtest\ProModel Model Configurations.xls,
> y:\Simtest\ProModel Scenarios.xls ,y:\Simtest\ProModel Service Schedule.xls
This should work just fine in terms of transferring the files since
the submission process is running as you from your submitting machine
hence it has access to your y: share.
> executable = y:\Simtest\SIAEC-Model-V50.exe
Again this is fine (though to be honest you don't need to bother
copying them to y: if they already exist on your local machine.
> error = y:\Simtest\test.err
this is wrong - you should simply state the *name* of the file to
write the err/out to and condor will deal with copying it back to your
submission machine. you really should be specifying the output file
too
e.g.
error = test.err
output = test.out
> log = y:\Simtest\test.log
Technically this should be ok but again I would say that, on windows
you should always try to write this log to a disk local to the submit
machine in case of a network glitch.
> Arguments = y:\Simtest
again y:\ will probably not exist and there is no reason to do this
since the data will have been transferred to the execute machine.
I would suggest that if your executable is insufficiently intelligent
to use . as an argument (there should be no need to wrap it in ""
quotes by the way) indicating the local directory then you will need
to wrap your job in in a bat script which simply works out the full
path for . by something like 'cd' on its own.
> Since the executable requires more than one input file I am specifying them
> with the transfer_input_files attribute. I do not know if this is the
> correct way to do it.
yes it is.
> all the machines in the condor pool have access to the
> y:\ which contains these input files.
the *machines* might. I seriously doubt that the executing users do...
> The executable does not produce any output and stops after running for a
> little while.
you haven't told condor to capture the output - I suggest you do...
> the log file gives me the following error.
> 001 (080.000.000) 02/16 15:19:55 Job executing on host: <
> 155.69.148.41:3222>
> ...
> 005 (080.000.000) 02/16 15:20:01 Job terminated.
> (0) Abnormal termination (signal -1073741819)
> (0) No core file
your executable exited with exit code -1073741819. condor is simply
telling you that.
> I am concerned about the followinf things:
>
> 1. how to specify more than one input file in the submit file.
should be fine
> 2. how to specify the pathname of the directory which contains the input
> files as an argument
1st try not using "." and just use . instead.
If that doesn't work use a batch file wrapper.
But before all that add
output = test.out
and see what is getting put in there
Matt