Ad control


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Ad control

  1. 1. AD ControlManages parallel workers in AD Administration and AutoPatch.The administrative tool used to manage patch workers is ADControl, or adctrl. Frequently workers will fail or hang, whichwill require the Oracle Applications DBA to interface withadctrl.AD Control menu options will vary depending upon the ADpatch version applied to the instance. When logged in as theapplication owner on the Admin Node, execute adctrl todisplay the menu options shown inAD Controller MenuTo execute an adctrl menu option, simply type the menuoption and press Enter. If options 2–6 are chosen, eitherspecify the number of the worker that requires action, orpress Enter for the action to be executed forall workers.The “Skip Worker” menu option is a hidden adctrl menuoption. If a worker needs to be skipped, start adctrl, enter 8,and then enter the worker number. Only use this option ifadvised by Oracle Support.■Oracle Aplication DBA Portal Tip:With AD.I, adctrl may beused in noninteractive mode. Using adctrl noninteractivelycan expedite patch problem resolution.Resolving AD Patch Worker FailureIf a worker has failed, the adpatch session will normallydisplay a failedworker
  2. 2. message. The status of the worker may also be determinedusing adctrl. If a worker has failed, the worker error can beobtained by viewing the worker log file. Once the workerissue has been resolved, use adctrl torestart the worker.If a worker has failed, and it is determined that the step theworker wastrying to execute may be skipped, the hidden option 8 of theadctrl menu, “Skip Worker,” may be used to skip theworker. It is only advisable to do thisif the step is not critical to the environment being patched.■Oracle Aplication DBA Portal Tip:It may be necessary toresearch MetaLink or open an SR to resolve issues withfailed workers. For additional information on MetaLink andthe SR process, seeThe following are common worker failures that will be seenby the Applications DBA during patching. The errormessages will be displayed by the adpatch session or in theworker log file:Error message: ORA-01013: user requested cancel ofcurrent operation Resolution to error: If this error occurs,simply use adctrl to restart the worker on the currentmachine.Error message: Patch not applied successfully, adpatch didnot cleanup its restart files (*rf9).Resolution to error: If this error occurs, execute thefollowing as theinstance owner:$cd $APPL_TOP/admin/$CONTEXT_NAME$mv restart restart_old$mkdir restartAfter cleaning up the restart files, you may then restart the
  3. 3. adpatch session using adpatch.Then, use adctrl to restart the failed worker.Error message: No error message is displayed; rather theworker log file states that the worker is complete, yet adctrlindicates that the worker is still running.Resolution to error: This patching problem occurs when theworker is complete, but did not update patching tablescorrectly to notify the adpatch session that it has finished. Inthis scenario, the adpatch session is still waiting for thefinish return code from the worker. When this occurs, useadctrl to fail the worker, then restart the worker.■Oracle Aplication DBA Portal Tip:Any form, library, or reportthat fails to generate during the patch process can beregenerated manually after all patching and post-patchingsteps have completed. If the object still fails to compile,open an SR.
  4. 4. SOLUTION 1 : ADCTRL workers remain assignedThe error meant some AD patch was applied wrongly. The adpatchcode is not compatible with the adworker code. Hence the restart filediscrepancy in the worker log files. The solution as it worked outthrough SR was:1. Stop the adpatch session through ADCTRL and take copies of thecurrent versions of adpatch and adworker executables.2. Relink AD executables:A. Run %APPL_TOP%relinkenv.cmdB. In the command window that results, change directory to %APPL_TOP% to set up all required environment variables.. ./apps.shC. Run commandsh force=y "ad all"3. Recreate grants$ cd $ORACLE_HOMEappsutilsql$ sqlplus /nologSQL> connect / as sysdbaSQL> @adgrants_nt.sql APPLSYS4. Run adpatch and resume the previous session.SOLUTION 2 : ADCTRL workers remain assignedYou can also try to edit"d:oracle<SID>appladmin<SID>restartadpinit.rf9" and replcePromptfor mailto with Apply mode Setting in line 4. Try applying the patchwith restart=yes. if it still fails comment out line 4.Note, Oracle Support does not support editing restart files.
  5. 5. Error: The FND_INSTALL_PROCESSES table does not exist.I run adctrl to show the worker status I get the below error;Is that a problem?How can solve this?What does that mean?Enter your choice [1] : 1Error: The FND_INSTALL_PROCESSES table does not exist.This table is used for communication with theworker processes, and if it does not exist, itmeans that the workers are not running,becausethe ad utility has not started them yet.The FND_INSTALL_PROCESSES table is created at the beginning of anadpatch run and dropped after the patch completes successfully. adctrl is a utilitythat monitors and fixes patch issues. If no patch is currently running, then this isa normal error that adctrl will return.If the patch was applied successfully on the TEST instance (checkthe patch log file and query AD_BUGS table to verify), then you canproceed and apply it on your PROD instance. Again, if you still wantto monitor the workers status please do so while the patch is running.
  6. 6. Regarding ICXDLTMP.sql, this program is used to clean outICX tables, and it should be regularly run to avoid hugetables. If this program is run on a regular basis this jobshould not run more than a few minutes.Undocumented Option 8:This will allow you to continue processing a job and kill the adworker that failed.Back at the main adctrl menu choose option 8:Enter your choice [1] : 8Enter the worker number(s)/range(s) or all for all workers,or press [Return] to go back to the menu :To select the "Skip worker" option, type the number 8 andpress Return.This can be useful in testing a patch and you need to let the patch or job run tocompletion.ADWORKER LOGFILES for R12 EBS
  7. 7. How to find the log files for these workers? It is confusing to the $APPL_TOP/admin/{ORACLE_SID}adctrl interactive=n defaultsfile=$TOP/admin/prod/ctrldefs.txtmenu_option=SHOW_STATUS$ adctrl interactive=n defaults_file=$APPL_TOP/admin/prod/ctrldefs.txt logfile=adctr.log menu_option=SHOW_STATUSACKNOWLEDGE_QUIT Tell manager that a worker acknowledges quitINFORM_FAILURE Tell manager that a worker failed its jobRESTART_JOB Tell worker to restart a failed jobSHOW_STATUS Show worker statusSHUTDOWN_WORKER Tell worker to quitSTART_WORKER Restart a worker on the current machine