Wednesday, February 17, 2010

Interview questions and answers

1:What is the diff between apps,applsys,applsyspub?

Apps is a schema which does not contain any tables of itself. it contains all the synonyms of all the table in Oracle apps. But it also contains packages, functions, and procedures.

Applsys schema contains all the tables required for administrative purpose. The default password is apps.

Applsyspub schema is responsible for password checking. Its password is pub.

2) What is difference between Socket & Servlet Mode in Apps Forms?

When forms run SOCKET Mode these are dedicated connection between Client Machine & Form Server (Started by adfrmctl.sh). When Forms run in servlet mode the forms requests are fulfilled by Jserv in Apache . There will be additional JVM for Forms Request in that case and you won't start form via adfrmctl.sh.

3) What is LDT and LCT files?

The patch metadata LDT files (also called data files) are FNDLOAD data files included in the top-level directory of all recent patches. The LDT files contain prerequisite patch information and a manifest of all files in the patch with their version numbers. The Patch Information Bundle metadata also include information about the relationships between patches, such as which minipacks are contained in the recommended.

LCT files (also called configfiles) are the configuration files which are used to download/upload data. Without configfiles, data files are useless.

4) What is batch size in in while applying Patch?

It is contained the how many table to entered at a time.we give size 5000 it will entered 5000 tables.

5) How to scheduled one CP requested mon-friday?

6) what is statspackreport and awk report?

7) How to schedule one CP mon to friday daily 8 AM-8Pm?

It is possible, we can go for scheduler and there define select available options. Select On specific days...

You need to run daily several times use select increment date parameters each run

8)What are the options available in scheduler?

As soon as possible, Once, Periodically, Advanced, On Specific days

9) What is the importance of APPSLISTNER?

APPS Listner is different from Database listener. It is basically RPC listner and is used for various purpose checking log and out file for Concurrent request is one of them.

Check the 8.0.6_HOME/network/admin//listner.ora and you will be able to see entries related to FNDFS and FNDSM

Also check the file adalnctl.txt located at $COMMON_TOP/admin/log and you will see the log file of APPS listner.

10) Why we are using Cache size and sleep seconds in Concurrent program?

Cache size – defines a number of requests concurrent manager remembers (fetches) from fnd_concurrent_requests table, so that it would not have to re-query the table after each execution of a concurrent request;

Sleep Seconds – number of seconds your manager waits between checking the list of pending concurrent requests.

11) How to tune the Concurrent manager?

Tuning the Internal Concurrent Manager, Purging Concurrent Requests

Troubleshooting Oracle Apps performance problems, Adjusting the Concurrent Manager Cache Size, Analyzing the Oracle Apps Dictionary Tables Monitoring Pending Requests in the Concurrent Manager, Changing the dispatching priority within the Concurrent Manage

Tuning the Internal Concurrent Manager (ICM)

The ICM performance is affected by the three important Oracle parameters PMON cycle, queue size, and sleep time.

  • PMON cycle — This is the number of sleep cycles that the ICM waits between the time it checks for concurrent managers failures, which defaults to 20. You should change the PMON cycle to a number lower than 20 if your concurrent managers are having problems with abnormal terminations.
  • Queue Size — The queue size is the number of PMON cycles that the ICM waits between checking for disabled or new concurrent managers. The default for queue size of 1 PMON cycle should be used.
  • Sleep Time — The sleep time parameter indicates the seconds that the ICM should wait between checking for requests that are waiting to run. The default sleep time is 60, but you can lower this number if you see you have a lot of request waiting (Pending/Normal). However, reducing this number to a very low value many cause excessive cpu utilization.

All of the concurrent managers, with the exception of the ICM and CRM, can be configured to run as many processes as needed, as well as the time and days a manager can process requests. However, the number of processes needed is dependent on each organization's environment. An Applications DBA must monitor the concurrent processing in order to decide how to configure each manager. For a fresh install of the applications, initially configure the standard manager to run with five processes, and all the other managers with two processes. After the applications have been in operation for a while, the concurrent managers should be monitored to determine is more operating system process should be allocated.

Purging Concurrent Requests


One important area of Concurrent Manager tuning is monitoring the space usage for the subsets within each concurrent manager. When the space in FND_CONCURRENT_PROCESSES and FND_CONCURRENT_REQUESTS exceed 50K, you can start to experience serious performance problems within your Oracle Applications. When you experience these space problems, a specific request called "Purge Concurrent Requests And/Or Manager Data" should be scheduled to run on a regular basis. This request can be configured to purge the request data from the FND tables as well as the log files and output files on accumulate on disk.

Adjusting the Concurrent Manager Cache Size

Concurrent manager performance can also be enhanced by increasing the manager cache size to be at lease twice the number of target processes. The cache size specifies the number of requests that will be cached each time the concurrent manager reads from the FND_CONCURRENT_REQUESTS table. Increasing the cache size will boost the throughput of the managers by attempting to avoid sleep time.

Analyzing Oracle Apps Dictionary Tables for High Performance

It is also very important to run the request Gather Table Statistics on these tables:

  • FND_CONCURRENT_PROCESSES
  • FND_CONCURRENT_PROGRAMS
  • FND_CONCURRENT_REQUESTS
  • FND_CONCURRENT_QUEUES.

Run the request "Analyze All Index Column Statistics" on the indexes of these tables. Since the APPLSYS user is the owner of these tables, so you can also just run the request Analyze Schema Statistics for APPLSYS.

To troubleshoot performance, a DBA can use three types of trace. A module trace, such as PO or AR, can be set by enabling the module's profile option Debug Trace from within the applications. Second, most concurrent requests can be set to generate a trace file by changing the request parameters. To enable trace for a specific request, log in as a user with the System Administrator responsibility. Navigate to Concurrent -> Program -> Define. Query for the request that you want to enable trace. At the bottom right of the screen you can check the box Enable Trace. (Figure 1)

Figure 1: Troubleshooting Concurrent Manager Performance.

Another popular way to troubleshoot the Concurrent Managers is to generate a trace file. This is done by setting the OS environment variable FNDSQLCHK to FULL, and running the request from the command line.

Monitoring Pending Requests in the Concurrent Managers

Occasionally, you may find that requests are stacking up in the concurrent managers with a status of "pending". This can be caused by any of these conditions:

1. The concurrent managers were brought down will a request was running.

2. The database was shutdown before shutting down the concurrent managers.

3. There is a shortage of RAM memory or CPU resources.

When you get a backlog of pending requests, you can first allocate more processes to the manager that is having the problem in order to allow most of the requests to process, and then make a list of the requests that will not complete so they can be resubmitted, and cancel them.

To allocate more processes to a manager, log in as a user with the System Administrator responsibility. Navigate to Concurrent -> Manager -> Define. Increase the number in the Processes column. Also, you may not need all the concurrent managers that Oracle supplies with an Oracle Applications install, so you can save resources by identifying the unneeded managers and disabling them.

Figure 2: Allocating more processes to the Concurrent Manager.

However, you can still have problems. If the request remains in a phase of RUNNING and a status of TERMINATING after allocating more processes to the manager, then shutdown the concurrent managers, kill any processes from the operating system that won't terminate, and execute the following sqlplus statement as the APPLSYS user to reset the managers in the FND_CONCURRENT_REQUESTS table:

update fnd_concurrent_requests
set status_code='X', phase_code='C'
where status_code='T';

Changing Dispatching Priority within the Concurrent Manager

If there are requests that have a higher priority to run over other requests, you can navigate to Concurrent --> Program --> Define to change the priority of a request. If a priority is not set for a request, it will have the same priority as all other requests, or it will be set to the value specified in the user's profile option Concurrent:Priority.

Also, you can specify that a request run using an SQL optimizer mode of FIRST_ROWS, ALL_ROWS, RULE, or CHOOSE, and this can radically effect the performance of the SQL inside the Concurrent request. If several long running requests are submitted together, they can cause fast running requests to have to wait unnecessarily. If this is occurring, try to schedule as many long running requests to run after peak business hours. Additionally, a concurrent manager can be created to run only fast running requests.

Using data Dictionary Scripts with the Concurrent Manager

Few Oracle Applications DBAs understand that sophisticated data dictionary queries can be run to reveal details about the workings within each Concurrent Manager. Oracle provides several internal tables that can be queried from SQL*Plus to see the status of the concurrent requests, and the most important are FND_CONCURRENT_PROGRAMS and FND_CONCURRENT_REQUESTS.

Oracle supplies several useful scripts, (located in $FND_TOP/sql directory), for monitoring the concurrent managers:

afcmstat.sql

Displays all the defined managers, their maximum capacity, pids, and their status.

afimchk.sql

Displays the status of ICM and PMON method in effect, the ICM's log file, and determines if the concurrent manger monitor is running.

afcmcreq.sql

Displays the concurrent manager and the name of its log file that processed a request.

afrqwait.sql

Displays the requests that are pending, held, and scheduled.

afrqstat.sql

Displays of summary of concurrent request execution time and status since a particular date.

afqpmrid.sql

Displays the operating system process id of the FNDLIBR process based on a concurrent request id. The process id can then be used with the ORADEBUG utility.

afimlock.sql

Displays the process id, terminal, and process id that may be causing locks that the ICM and CRM are waiting to get. You should run this script if there are long delays when submitting jobs, or if you suspect the ICM is in a gridlock with another oracle process.

12)How to change the CP logfile naming convention?

Go to FND_TOP/bin find startmgr.sh this file have naming convention we can change from here.

13)How to change the APPLCSF?APPLLOG location/

Change in XMl file ..run autoconfig.

14)What is the difference between multi-user installation and single user installation?

If it is Multi user installtion we have to install by ROOT user.

Single user we can use oracle user it self.

15) How to increase No. Of JVM's

Since you know place where number of JVM's are stored in Apps 11i in Context File , so you can change them as per your requirement. There are basically following Groups with their own JVM's.

· OACoreGroup, where most of Java request goes

· DiscoGroup, which serve your Discoverer related requests

· FormsGroup, for Forms (If they are running in Servlet Mode, confirm it again)

· XmlSvcsGroup, for XML Services
In Context File

disco_nprocs oa_var="s_disco_nprocs" osd="Solaris" 1 /disco_nprocs Sets 1 JVM Process for Discoverer.

oacore_nprocs oa_var="s_oacore_nprocs" 1 /oacore_nprocs Sets 1 JVM for for OACoreGroup

Similarly , s_forms_servlet_nprocs & s_xmlsvcs_nprocs for Forms & XML Services resp.

These Groups are defined in configuration file for Jserv i.e. jserv.conf under $IAS_ORA/Apache/Jserv/conf ; like
ApJServGroup OACoreGroup
ApJServGroup DiscoGroup
ApJServGroup FormsGroup
ApJServGroup XmlSvcsGrp

Q: Where to find Apps 11i JVM logs ?

JVM log location is defined in java.sh ( found in $IAS_ORACLE_HOME/Apache/Apache/bin) Oracle Apps 11i JVM log file directory is defined by parameter JVMLOGDIR ( $IAS_ORACLE_HOME/Apache/Jserv/logs/jvm ) and log file are defined by STDOUTLOG & STDERRLOG. Example of JVM log files are
OACoreGroup.0.stderr ,OACoreGroup.0.stdout, DiscoGroup.0.stdout, DiscoGroup.0.stderr, XmlSvcsGrp.0.stderr, XmlSvcsGrp.0.stdout
where 0 denotes first JVM & 1 denotes second JVM. stderr records error encountered in JVM & stdout records other information like GC ..

16) How to define CP and CM?

17) What is instance?

SGA+Backgroundprocess is called instance.

18) What is the major background process in oracle?

PMON, SMON, CKPT, LGWR, DBWRT

19) What is major background process in RAC?

20) How to clone RAC to RAC? (Please provide me the steps)

21) Importance of httpd.conf?

22) We have2application servers, One is applied RUP6 and another is RUP7?how we can find which one is RUP7?

23) crsctl importance/

24)how to take the backup of voting disks?

25)ASM is storage device, how to transfer the data files from ASM to Normal instance?

26)What is VIP and importance of that?

27) What is difference between COMPILE_ALL=SPECIAL and COMPILE=ALL while compiling Forms ?

Both the options will compile all the PL/SQL in the resultant .FMX, .PLX, or .MMX file but COMPILE_ALL=YES also changes the cached version in the source .FMB, .PLL, or .MMB file. This confuses version control and build tools (CVS, Subversion, make, scons); they believe you've made significant changes to the source. COMPILE_ALL=SPECIAL does not do this

28) . What are .odf file in apps patch ?

odf stands for Object Description Files used to create tables & other database objects.

29) Q. If by mistake you/someone deleted FNDLIBR can this executable be restored if Yes, How & if no, what will you do ?

Yes, you can restore FNDLIBR executables
run adadmin on concurrent manager node
select option 2. Maintain Applications Files menu
then select 1. Relink Applications programs
when prompts for
Enter list of products to link ('all' for all products) [all]
select FND
when prompt for
Generate specific executables for each selected product [No] ? YES
select YES
& from list of executables select FNDLIBR
This will create new FNDLIBR executables.

30) Q. What is importance of IMAP Server in Java Notification Mailer ?

IMAP stands for Internet Message Access Protocol and Java Notification mailer require IMAP server for Inbound Processing of Notification Mails.

31) Q. If your system has more than one Jinitiator, how will the system know, which one to pick. ?

When client makes a forms connection in Oracle Applications, forms client session uses configuration file defined by environment variable FORMS60_WEB_CONFIG_FILE also called as appsweb config file. These days this file is of format appsweb_$CONTEXT.cfg The initiator version number defined by parameter jinit_ver_name in this file will be used .

32)what is the difference between sqlloader and import?

Flat files using sqlloader,through import cant.

33) Q. Where GWYUID defined & what is its used in Oracle Applications ?

GWYUID is defined in dbc i.e. Database Connect Descriptor file . It is used to connect to database by think clients.


34)
Q. What is difference between GUEST_USER_PWD (GUEST/ORACLE) & GWYUID ?

GUEST_USER_PWD(Guest/Oracle) is used by JDBC Thin Client where as GWYUID is used by Thick Clients like via Forms Connections

35)

Q. Whats main concurrent Manager types.

· ICM - Internal Concurrent Manager which manages concurrent Managers

· Standard Managers - Which Manage processesing of requests.

· CRM - Conflict Resolution Managers , resolve conflicts in case of incompatibility.

36) Q. Where is Concurrent Manager log file location.

By default standard location is $APPLCSF/$APPLLOG , in some cases it can go to $FND_TOP/log as well.

37)Q. Where would i find .rf9 file, and what execatly it dose ?

These files are used during restart of patch in case of patch failure because of some reason.

38) Q. Does rapid clone takes care of Updating Global oraInventory or you have to register manually in Global OraInventory after clone ?

Rapid Clone will automatically Update Global oraInventory during configuration phase. You don't have to do any thing manually for Global oraInventory.

39) Q. What are main configuration files in Web Server (Apache) ?

Main configuration files in Oracle Apps Web Server are

· httpd.conf, apps.conf, oracle_apache.conf, httpd_pls.conf

· jserv.conf, ssp_init.txt, jserv.properties, zone.properties

· plsql.conf, wdbsvr.app, plsql.conf

40) Q. What is RRA/FNDFS ?

Report Review Agent(RRA) also referred by executable FNDFS is default text viewer in Oracle Applications 11i for viewing output files & log files. As most of apps dba's are not clear about Report Server & RRA, I'll discuss one on my blog and update link here .

41)Q. What is PCP is Oracle Applications 11i ?

PCP is acronym for Parallel Concurrurent processing. Usually you have one Concurrent Manager executing your requests but if you can configure Concurrent Manager running on two machines (Yes you need to do some additional steps in order to configure Parallel Concurrent Processing) . So for some of your requests primary CM Node is on machine1 and secondary CM node on machine2 and for some requests primary CM is on machine2 & secondary CM on machine1.

42) Q. How to compile JSP in Oracle Apps ?

You can use ojspCompile.pl perl script shipped with Oracle apps to compile JSP files. This script is under $JTF_TOP/admin/scripts. Sample compilation method is
perl ojspCompile.pl --compile --quiet

43) Q. How to retrieve SYSADMIN password ?


If forgot password link is enabled and sysadmin account is configured with mail id user forget password link else you can reset sysadmin password via FNDCPASS.

44) Q. Whats is TWO_TASK in Oracle Database ?


TWO_TASK mocks your tns alias which you are going to use to connect to database. Lets assume you have database client with tns alias defined as PROD to connect to Database PROD on machine teachmeoracle.com listening on port 1521. Then usual way to connect is sqlplus username/passwd@PROD ; now if you don't want to use @PROD then you set TWO_TASK=PROD and then can simply use sqlplus username/passwd then sql will check that it has to connect to tnsalias define by value PROD i.e. TWO_TASK

45)What is the difference between soft link and hard links?

soft or symbolic is more of a short cut to the original file....if you delete the original the shortcut fails and if you only delete the short cut nothing happens to the original.

hard link is more of a mirror copy....do something to file1 and it appears in file 2
deleting one still keeps the other ok

46)if init.ora file is deleted?how to recover it?

Using alertlog,if alertlog is not there through spfile.

47)workflow mailer logs location/

APPLCSF?APPLLOG/FND*.txt