Page 1 of 1

dsjob error in UNIX

Posted: Wed Apr 20, 2005 5:46 am
by ashwin2912
I am getting this error for dsjob on UNIX. Is this right way to run this command. The following command runs properly on Windows (DOS prompt)

Code: Select all

$ dsjob -server <server_ip> -user <userid> -password <password> -run <project name> <jobname>
ld.so.1: dsjob: fatal: libvmdsapi.so: open failed: No such file or directory
Killed
Thanks,
Ashwin

Posted: Wed Apr 20, 2005 6:25 am
by chulett
Welcome. :wink:

Looks to me like you are not running this from the UNIX side as a user that is not 'DataStage aware' for lack of a better term. Typically, users that will doing things like this will be setup to do this automatically in their .profile - you need to 'source' the dsenv file first. Try this:

Code: Select all

cd `cat /.dshome`
. ./dsenv
And then try rerunning your command and let us know what happens.

Posted: Wed Apr 20, 2005 6:26 am
by ArndW
ashwin2912,

I think that you are missing your ENVironment settings for your job call. You should do a "cd `cat /.dshome`" followed by a ". ./dsenv" which should set your paths and variables up so that you can run dsjob.

Posted: Wed Apr 20, 2005 6:31 am
by sudharsanan
Hi Ashwin,

In order any Datastage job through Unix command line.. you have to give dsjob command from the Datastage bin directory..for example..


$BIN_DIR/dsjob \
-run \
-warn 1 \
-param <give any parameter here> \
-jobstatus \
$project \
$JOB

you have to pass the job name or sequence name along with the job parameters if any with the command.. then only the job will be started..

hope this information helps ...

Regards
Sudharsanan

Posted: Wed Apr 20, 2005 6:34 am
by chulett
sudharsanan wrote:In order any Datastage job through Unix command line.. you have to give dsjob command from the Datastage bin directory..
If you look at what was posted, you'll see that the OP did just that. It found the dsjob command, tried to execute it and promptly failed. I'm betting because of the issue that Arnd and I posted. :wink:

Posted: Wed Apr 20, 2005 3:24 pm
by ray.wurlod
If the $DSHOME/bin directory is in your PATH you can execute the dsjob command from anywhere. Or you can use the full pathname of dsjob, as illustrated below. But you do need the environment variables which are set in the dsenv script to have been set.

Code: Select all

. $DSHOME/dsenv
$DSHOME/bin/dsjob -run -jobstatus projectname jobname

Posted: Wed Apr 20, 2005 11:29 pm
by ashwin2912
Thanks everyone...
I did not know about dsenv as it was not required on Windows platform to run dsjob...

Regards,
Ashwin

ray.wurlod wrote:If the $DSHOME/bin directory is in your PATH you can execute the dsjob command from anywhere. Or you can use the full pathname of dsjob, as illustrated below. But you do need the environment variables which are set in the dsenv script to have been set.

Code: Select all

. $DSHOME/dsenv
$DSHOME/bin/dsjob -run -jobstatus projectname jobname

Posted: Mon Oct 03, 2005 7:15 pm
by cheerfu1
Hi,
such commands will not affect other settings? only will properly set the paths for dsjob to be run? :?
ArndW wrote:ashwin2912,

I think that you are missing your ENVironment settings for your job call. You should do a "cd `cat /.dshome`" followed by a ". ./dsenv" which should set your paths and variables up so that you can run dsjob.

Posted: Mon Oct 03, 2005 8:53 pm
by ray.wurlod
dsenv is a shell script. View it to understand what it does. In some cases you may need to edit it.