Saturday, August 13, 2011

Workflow Mailer Failing to Send Notifications Emails for Some Employees


Workflow Mailer Failing to Send Notifications Emails for Some Employees :

Findings : WF_NOTIFICATIONS.status is "FAILED" for some notifications.
Cause    :

Since workflow was not able to parse the file names with special characters, the notifications with attachments were not emailed.
However, the same notification using file names without special characters works fine.

Sol :

Upgrade Application to recent levels

or

Workaround : don't use special characters in the file names

Refer :  [ID 1305894.1]


UR's Key Run ;-) 

Workflow Notifications not cmg - Troubleshooting flow

Troubleshooting WF Notification Email In/Outbound :

- 1st need to check is that notification itself is created / Not ?
- Check status & mail_status in wf_notifications for that particular recipient ( where recipient_role like '&user_name'; )
- Check for valid email addr of recipient in wf_roles

SELECT email_address,
nvl(WF_PREF.get_pref(name, 'MAILTYPE'), notification_preference)
FROM wf_roles
WHERE name = '&recipient_role';

Recipient can receive email notification only if
-- notification preference is not set 'QUERY' / 'DISABLED' / 'SUMMARY' / 'SUMHTML'      &
-- recipient has valid email address

- Check Workflow Service Components are up and running.

Workflow Deferred Agent Listener
Workflow Deferred Notification Agent Listener
Notification Mailer

Flow :

Send Event Raised -> Enqueued to WF_DEFERRED Queue --> Processed by Deferred Agent Listener -->
Enqueued to WF_NOTIFICATION_OUT Queue --> Processed by Notification Mailer and sent as e-mail

Any error occurs during dispatch of oracle.apps.wf.notification.send, the message is enqueued to WF_ERROR queue

-  @$FND_TOP/sql/wfmlrdbg.sql for notification id and check the status of the message in WF_DEFERRED and WF_NOTIFICATION_OUT queue.

PROCESSED in WF_DEFERRED - The message is enqueued to WF_NOTIFICATION_OUT
PROCESSED in WF_NOTIFICATION_OUT - The message is sent as e-mail
READY in WF_DEFERRED - Check if Deferred Agent Listener is running
READY in WF_NOTIFICATION_OUT - Check if Notification Mailer is running

Ref : 831982.1

UR's Key Run ;-) 

Thursday, August 11, 2011

Best Notes

File System :

Sharing The Application Tier File System in Oracle E-Business Suite Release 12 [ID 384248.1]

Load Balancing


Using Load-Balancers with Oracle E-Business Suite Release 12 [ID 380489.1]


DB Upgrade:

How to Download and Run Oracle's Database Pre-Upgrade Utility [ID 884522.1]

OC4J:

Starting up AS10g services in an EBusiness Suite Release 12 environment [ID 743518.1]
Unable to start OC4J services on E-Business Suite R12 [ID 813813.1]
Oafm,Forms and Oacore Not Starting Up After IP Adress Change [ID 412980.1]

Clone Issues Related :

How To Stop Old Outbound Workflow Notification Email Messages During Clone Activity [ID 828812.1]

WF :

Inbound Info & Troubleshooting :

Troubleshooting Inbound Email Notifications [ID 1184846.1]
Workflow Java Notification Mailer Technical Reference [ID 1191125.1]


Setting Up Notification Mailers
http://www.stanford.edu/dept/itss/docs/oracle/10g/workflow.101/b10283/instal24.htm

Outbound Notification Mailer Processing
http://www.stanford.edu/dept/itss/docs/oracle/10g/workflow.101/b10283/instal25.htm#mlroutbnd

Inbound Notification Mailer Processing
http://www.stanford.edu/dept/itss/docs/oracle/10g/workflow.101/b10283/instal26.htm#mlrinbnd


JDBC :


monitor_jdbc_conn.sql - Script to monitor JDBC connections in Apps eBusiness Suite [ID 557194.1]



UR's Key Run ;-) 

Wednesday, August 10, 2011

Privilleges


To check privileges users have on an object ( Table / Pkg / Procedure ) :-

select a.OBJECT_NAME,a.OBJECT_TYPE,
a.OWNER,b.GRANTEE,
b.GRANTOR,b.PRIVILEGE,
b.GRANTABLE from dba_objects a,dba_tab_privs b
where a.OWNER=b.OWNER
and a.OBJECT_NAME='&OBJ_NAME';

To check the privileges ( select /execute /debug /read etc ) a user had on an object ( Table / Package / Procedure ) :-

select distinct a.OBJECT_NAME,a.OBJECT_TYPE,
a.OWNER,b.GRANTEE,b.GRANTOR,b.PRIVILEGE,
b.GRANTABLE from dba_objects a,dba_tab_privs b
where a.OWNER=b.OWNER
and a.OBJECT_NAME='&OBJ_NAME'
and b.GRANTEE='&USER';


UR's Key Run ;-) 

Pt's that can add Good Weightage ( >10 Kg ) to Ur Resume


Pt's that can add Good Weightage ( >10 Kg  ) to Ur Resume:

- Custom Top Creation
- PCP  setup
- SSO , OID
- Configuring Printers
- DMZ configuration
- Applied ATG & CPU Patches

UR's Key Run ;-) 

Tuesday, August 9, 2011

Zombie process Vs Orphan process


Zombie process Vs Orphan process

Zombie Process - Is something already dead. It won't take any resource from your system but have an entry in the process table.
                 So its not harm to have Zombie proc as it consume no CPU. But its suggested to clear them as sometimes it may create an issue.

Cause : Mostly due to bad coding

Orphan Process - Orphan process is a process, whose parents are dead ( either terminated, killed or exited ) but the child process is still alive.
                 Unlike Zobie Process, Orphans do consume CPU and too many orphans means system is heavily loaded and lot of CPU getting wasted.

How to identify :

Orphan Process - use ptree
Zombie              - use top ( check for processes with STAT as z )


UR's Key Run ;-) 

ptree

ptree command to identify the process hierarchy of the application

ptree <pid>

Eg :

[oraplayers21:ORA_PLAYERS:applmgr]$ ptree 8140
8140  /apps/applmgr/iAS/Apache/Apache/bin/httpd -d /apps/applmgr
  8152  /apps/applmgr/iAS/Apache/Apache/bin/httpd -d /apps/applmgr
  8153  /apps/applmgr/iAS/Apache/Apache/bin/httpd -d /apps/applmgr
    8155  <defunct>
    8158  <defunct>
    8154  <defunct>
    8157  <defunct>
    8156  <defunct>
    8159  /apps/applcomn/util/java/1.5/jdk1.5.0_15/jre/bin/java -DCLIENT_PROCE
    8160  /apps/applcomn/util/java/1.5/jdk1.5.0_15/jre/bin/java -DCLIENT_PROCE
    8161  /apps/applcomn/util/java/1.5/jdk1.5.0_15/jre/bin/java -DCLIENT_PROCE
  8191  /apps/applmgr/iAS/Apache/Apache/bin/httpd -d /apps/applmgr
  8192  /apps/applmgr/iAS/Apache/Apache/b
  
- Helps identifying orphan processes

- Equivalent of ptree is pstree in Linux



UR's Key Run ;-) 

Saturday, August 6, 2011

What's My Database Size ????????

Wht's my DB Size ????

- Considering only datafiles count as DB size


select sum(bytes)/1024/1024/1024 "GIGA" from dba_data_files;

select sum(bytes)/1024/1024/1024/1024 "TERA" from dba_data_files;


UR's Key Run ;-) 

Total Concurrent Requests ran yesterday


Total Concurrent Requests ran yesterday :

SELECT sysdate -1, COUNT(*)
FROM apps.fnd_concurrent_requests
WHERE to_char(actual_completion_date,'YYYYMMDD') =
(SELECT to_char(sysdate -1,'YYYYMMDD') FROM dual);

SYSDATE-1                 COUNT(*)            
------------------------- ----------------------
04-AUG-11                 50305                

1 rows selected

UR's Key Run ;-) 

Solaris Cmnds


Solaris Cmds :

#Version              -          uname -a

if
SUN OS Version then Solaris Version
SunOS 5.4                  Solaris 2.4
SunOS 5.5                  Solaris 2.5
SunOS 5.5.1               Solaris 2.5.1
SunOS 5.6                  Solaris 2.6
SunOS 5.7                  Solaris 7
SunOS 5.8                  Solaris 8
SunOS 5.9                  Solaris 9
SunOS 5.10                Solaris 10

SunOS is Solaris core component of Solaris

# 32 or 64 bit                    -                   isalist
# Arch Info                        -                   isainfo
# Top consuming procs      -                   prstat
# Processor Info                   -                   psrinfo -v
# System Configuration      -                   sysdef   or  prtconf
# Compare Directories ( lists only files that are not common )  -  dircmp -s <dir1> <dir2>
# List top space consuming files in current directory -     ls -l | grep ^- | sort -nr -k 5 | more

#RAM :              
prtconf | grep -i mem
or
prtdiag | grep -i mem

Note : prtdiag will give System Configuration

#Installed Packages :
pkginfo
or
pkginfo –l file_name    - Gives the pkg version

#Users :

Who all logged in  - logins -x

UR's Key Run ;-)