Sunday, July 17, 2011

How to restart DataStage ?

The order in which to stop all services is:

   1. Stop DataStage Engine
   2. Stop the ASB Agent
   3. Stop the WebSphere Application Server (WAS)


Here are the step-by-step instructions for each of the above.

   1. Stop DataStage Engine
          * Log into your UNIX machine as root
          * Make sure that no one is using DataStage.
          * Check if there are any processes left
            ps -ef | grep -i phantom
            ps -ef | grep dsapi
            ps -ef | grep dscs

            These commands should not return any results. If they return results, it means that there are still some processes running. You can wait for the users to stop their processes or kill the processes (using kill -9 PID).
          * Check if dsrpc is running

            netstat -a | grep dsrpc

            If dsrpc is running, then you should get a line with the status LISTEN. If you get more lines it means that there are still some connections and you need to wait. If you see that dsrpc or other connections are in status WAIT then you also need to wait until this it disappears (you can also reboot the machine).
          * Stop DataStage Services using (you have to run this from $DSHOME)

            . ./dsenv
            bin/uv -admin -stop
          * Then see if there is any memory segment left:

            ipcs -mop | grep ade

            For 64-bit Linux, use: ipcs -qms -a

            If you get a result, take note of the PID and remove it (you will need root access)

            ipcrm -m PID
          * Then, check the port again using

            netstat -a | grep dsrpc

            You should not get any result. If you get any results and the dsrpc is in WAIT state, then you need to wait until it disappears (you can also reboot the machine).

   2. Stop the ASB Agent (you need to be root user)
          * Go to <path to>/IBM/InformationServer/ASBNode/bin
          * Run ./NodeAgents.sh stop

            Type 'yes' if you receive the following message:
            rm: remove write-protected regular file `Agent.pid'?
          * Check the agent has stopped:

            ps -ef | grep -i agent
          * On Solaris it may be necessary to run this command if errors similar to this are returned when trying to start the agent.
            "com.ascential.acs.logging.agent.LoggingAgentSocketImpl.main(LoggingAgentSocketImpl.java:115) Caused by: java.net.BindException: Address already in use"

            /usr/ucb/ps -auxww | grep java

3. Stop the WebSphere Application Server (you need to be root user)

          o Go to <path to>/IBM/InformationServer/ASBServer/bin
          o Run ./MetadataServer.sh stop
          o Be sure the java processes go away
          o Now check there are no java processes left behind:

            > ps -ef | grep java

            remove them if any exists with: > kill PID (NO -9)

The order in which to start all services is:

   1. Start WebSphere Application Server
   2. Start ASB Agent
   3. Start DataStage Engine

4 comments:

  1. This post is probably where I got the most useful information for my research. Thanks for posting, maybe we can see more on this.
    Are you aware of any other websites on this
    datastage


    ReplyDelete
  2. Is it necessary to maintain the sequence of stopping these services? what happens if the sequence is not maintained?

    ReplyDelete
  3. it's a nice article, very helpful for us and thank's for sharing. we are providing DataStage online training

    ReplyDelete
  4. what if the order in which services are brought up are swapped? which means try to start DS Engine first and lastly the metadata server .

    ReplyDelete