Monday, December 29, 2008

Can you distinguish DBMS_STATS and FND_STATS ??

If some one ask you what is difference between dbms_stats and fnd_stats what you will say. If some one ask what is better to use when you are working with 11i. Don’t worry go through the following article and get it cleared.

Basically FND_STATS is specifically provided for 11i . As we will se DBMS_STATS is provided in database. Oracle recommends when you are working with 11i, you should use FND_STATS. As this is specially designed for 11i.

These are the main difference between these two:

1] FND_STATS is wrapper on the dbms_stats but if you are working with 11i it is better to use FND_STATS instead of DBMS_STATS.


2] FND_STATS can restart from the point where it stopped or failed. But in case of DBMS_STATS it is only provided on 10g.

3] FND_STATS is written for 11i application and it is not available outside. DBMS_STATS can be used in any application but it mostly used in RDBMS.

4] FND_STATS create histogram for application columns identified by Oracle. You can find information about these columns in FND_HISTTOGRAM_COLS table, but in case of dbms_stats you need to create it manually.

5] 115.10 further for FND_STATS, as it can gather stats for stale as well as empty stats. Also modification threshold can be changed from default 10% but in case of DBMS_STATS before 11g staleness threshold is fixed to 10%.

Stay tunned. I willbe comming some DMZ setups soon.

Sunday, December 28, 2008

What is OC4J in R12 ??

Hello Friends !
I thought to enter bit more in depth of R12 techstack. I was talking about 10.1.2 AS and 10.1.3 AS oracle homes earlier. I have discussed why there are two Mid-Tier oracle homes in my earlier post 10g AS in R12 ebiz.
In this post I will be covering OC4J. OC4J expands to Oracle Containers For Java. Originally based on the IronFlare Orion Application Server, has developed solely under Oracle's control since Oracle Corporation acquired the source.( this is the reason why you see config files are named as orion-web.xml, orion-application.xml etc.,)
In laymans terms OC4J can be described as "Oracle's Implementation of J2EE specification set".Sample specification set can be found here.For example you have finance application which got developed using JSP and servlet specifications. You can package them as war/ear files and deploy them in OC4J containers which will run the applications as per the clients' request from web browser. There are lot more done by OC4J but above one was a simple example. It will have xml based config files.(refer OC4J config files section in Unveiled Inst top post.)
In R12 we have 3 groups of OC4J's. OC4J replaces Jserv(Java servlet containers) which came with earlier 11i techstack.
oacore OC4J - Supports framework based applications
forms OC4J - Supports forms based applications
oafm OC4J - expands to Oracle Application Fusion Middleware - for mapviewer, webservices, ascontrol
Number of OC4J instances for each group will be determined by corresponding nprocs context variable ( s_oacore_nprocs, s_forms_nprocs/s_frmsrv_nprocs, s_oafm_nprocs).
-bash-2.05b$ ./adopmnctl.sh status
You are running adopmnctl.sh version 12.0.4
Checking status of OPMN managed processes...
Processes in Instance: r12test_ap6155rt.ap6155rt.us.oracle.com
-------------------+--------------------+---------+---------
ias-component process-type pid status
-------------------+--------------------+---------+---------
OC4J oafm 27133 Alive
OC4J oafm 27133 Alive
OC4J oacore 26775 Alive

HTTP_Server HTTP_Server 26718 Alive
ASG ASG N/A Down
adopmnctl.sh: exiting with status 0
adopmnctl.sh: check the logfile /slot01/appmgr/R12/inst/apps/r12test_ap6155rt/logs/appl/admin/log/adopmnctl.txt for more information ...
To be more precise, forms.ear application is deployed in forms OC4J to server forms based applications. ( $IAS_ORACLE-HOME/j2ee/forms/applications/forms.ear)
oafm.ear, mapviewer.ear, ascontrol.ear applications (can be found at $IAS_ORACLE-HOME/j2ee/oafm/applications/) are deployed under oafm OC4J container.

But remember, even if one file change in ear file, will leads to creation of new ear file and redeployment, which is time consuming. hence the dummy ear file is used and config files are tweaked to support adpatching in ebiz R12.
OC4J deployment will create specific directory structure and similar config files. I will cover them in detail in forthcoming posts.
Hope this article is useful to you !



R12 : Where you can find context file?



R12: Where you can find XML file ?

Hi Friends ,

This is post for which removes mess between context file in R12 and 11i. Generally any apps dba worked on 11i will go blindly to the directory to $APPL_TOP/admin to get xml or context file. Many times people working on R12 make big problem while working.

Experienced dba’s most of the time do the modification manually in context file. In case of 11i upgrade to R12 instances dba’s make mistake by considering the old context file instead of new. As in R12 context file lies at $INST_TOP/appl/admin directory. One of my colleague did same mistake as he made changes in the context file in $APPL_TOP/admin but actually it was present at $INST_TOP/appl/admin after R12 upgrade. So avoid such mistake, as recommended by Oracle always use OAM to do the modifications in the Context file.

11i appa dba’s who are working on R12 always remember the location of context file. So to avoid the confusions always use “vi $CONTEXT_FILE” and modifications after “cp $CONTEXT_FILE $CONTEXT_FILE_BKP_DATE “.

You can find all information’s about context files in the 11i in this table “FND_OAM_CONTEXT_FILES “.

Please see the view of this table.

Wait for my next article on R12.