Skip to main content


Showing posts from September, 2009

JVM Performance tuning with 11i

Following are the questions answered to one of the mailing lists. Here it is shared.....

Usually Performance issues with JVM's are related either to,

1. JDK Bugs
2. JVM thread deadlocks and memory leaks 3. Application request taking too long to process ex. long running query, poor sql, db issues or java coding 4. Poor performing Garbage collection
5. Incorrect JVM startup settings

The amount of memory that should be allocated to each JVM depends on the number of JVM's, the number of users on the system, the amount of physical memory on the middle tiers, the habits of the users and the version of the JDK used by the system. THe version of JDK being used makes a large difference to how the memory and the number of JVM's should be sized. JDK 1.3 performs better with more JVM's and less heap while JDK 1.4/1.5 performs better when there are less JVM's and more heap. Thumb rule is to have 1JVM per 2 cpu's with increased heap parameter for better performance. As a minimum …

Forms Socket/Servlet

Following are the queries answered by me in one of the forums.

1. Will it be possible that the forms tier load also will be balanced by Hardware load balancer ? Before we know the answer for this question, i guess its better to know the forms architecture. Forms in Oracle Applications can be configured in 2 modes.

a. Socket Mode and
b. Servlet Mode.

a. Socket Mode: By default forms 6i comes with Socket Mode install. If customer hasn't done any changes then he would still be using Socket Mode. In socket mode then forms cannot be loadbalanced using hardware load balancer. In this case you need to use Forms Metric Server Load Balancing.

For configuration details refer to document: 217368.1 Section 2.4. Forms Server / Metrics Layer Load Balancing.
Forms socket mode connections are always faster compared to servlet mode(if hardware resources are infinite then this should be of little concern). This is the only reason why customers use forms socket mode else Servlet mode is…

Concurrent user logins in 11i

Following query will give you number of concurrent users logged into the system.

select count(distinct d.user_name) from apps.fnd_logins a,
v$session b, v$process c, apps.fnd_user d
where b.paddr = c.addr
and a.spid = b.process
and d.user_id = a.user_id
and (d.user_name = 'USER_NAME' OR 1=1)

Run the following queries:-
This will give the number of users on the system in the past 1 hour.

select count(distinct user_id) "users" from icx_sessions where last_connect > sysdate - 1/24 and user_id != '-1';

This will give the number of users on the system in the past 1 day.

select count(distinct user_id) "users" from icx_sessions where last_connect > sysdate - 1 and user_id != '-1';

This will show the activity in the last 15 minutes.

select limit_time, limit_connects, to_char(last_connect, 'DD-MON-RR HH:MI:SS') "Last Connection time",
user_id, disabled_flag from icx_sessions where last_connect > sysdate - 1/96;

Check the No…


Recently i posted my views for the questions on a forum, having it here for discussion.....

Following are my understanding and only my personal view.

1. Can anyone please clarify what's the diff in SAP and EBS.

SAP and EBS are ERP solutions as you know, business wise its just a comfort factor which makes customer to choose either SAP or Oracle. To be straight SAP doesnt allow you to do customizations as it can be done in Oracle, this is what makes SAP tightly integrated less error prone. Both use their own way of programming which is the answer for your second question below. SAP has its own standards and Oracle too has its legacy. For techincal details you can refer to the following link,

2. In SAP ABAP is used for programming purposes. what is equivalent in EBS to that.?

ABAP is a programing language created by SAP and it is similar to any other programming language. Its quite similar to COBOL. This was first used as a reportin…