Syed Saad Ali

Oracle ACE Pro

Oracle Solution Architect

Oracle E-Business Suite

Oracle Cloud Infrastructure

Oracle Fusion Middleware

Oracle Database Administration

Oracle Weblogic Administration

Syed Saad Ali

Oracle ACE Pro

Oracle Solution Architect

Oracle E-Business Suite

Oracle Cloud Infrastructure

Oracle Fusion Middleware

Oracle Database Administration

Oracle Weblogic Administration

Home

About Me

Technically-sophisticated professional with extensive experience in updating server security, executing routine back-ups, and designing and implementing tests of the system to address issues with accessing data

  • Adept at leading the planning, designing, developing, testing, and deploying efficient solutions within Oracle EBS system, in order to satisfy strategic, financial, and operations needs of the organization.
  • Skilled in planning and managing successful projects, mitigating risks, controlling costs, and directing project teams. Instrumental in monitoring routine maintenance of system, implementing the ERP systems, and approving budget.
  • Proven success in analyzing business processes/process re-engineering and recommending solutions. Deft at establishing IT service continuity management strategies, disaster recovery plans and associated test procedures of each critical functional area of the organization.
  • Age: 37
  • Residence: Pakistan
  • Freelance: Available
  • Address: Karachi, PAKISTAN
My Services
Oracle E-Business Suite Upgrade
Oracle E-Business Suite Migration
Oracle Database Upgrade or Migrate
Oracle Maximum Availability Architecture
Performance Evaluation
Pricing
Hire Me On Upwork
$ 35 Hour
  • Database Administration
  • Oracle E-Business Suite Administration
  • Configuration, Administration, Cloning, Patching, Migrating, Support, Maintenance, Monitoring, tuning and capacity planning, User Management, Backup/Recovery Management
Hire Me on Fiverr
$ 35 Hour
  • Database Administration
  • Oracle E-Business Suite Administration
  • Configuration, Administration, Cloning, Patching, Migrating, Support, Maintenance, Monitoring, tuning and capacity planning, User Management, Backup/Recovery Management
Hire Team
$ 40 Hour
  • Database Administration
  • Oracle E-Business Suite Administration
  • Configuration, Administration, Cloning, Patching, Migrating, Support, Maintenance, Monitoring, tuning and capacity planning, User Management, Backup/Recovery Management

Resume

Experience
2024-
Senior Apps DBA
Private Contractor
My role includes infrastructure support, capacity planning, installation, configuration, database design, and migration, up gradation, performance monitoring, security,  database backups, data recovery plan, and procedures including application server administration
Senior Apps DBA
2022- 2024
Senior Apps DBA
Computer & Systems Engineering Company
My role includes infrastructure support, capacity planning, installation, configuration, database design, and migration, up gradation, performance monitoring, security,  database backups, data recovery plan, and procedures including application server administration
Lead Infrastructure Consultant
2020-2021
Lead Infrastructure Consultant
ITANZ Group
Managed Oracle cloud infrastructure, compute, storage, networking, connectivity, and edge service, database management, analytics, integration, and Oracle weblogic clustering environment over Oracle Cloud IAAS.  Collaborated with the Oracle corporation staff for offering technical support to diagnose and troubleshoot common problems.
Professional Freelancer
2020 - 2022
Professional Freelancer
Upwork Inc.
Collaborated with Clients for the Task Related to Oracle Database, Oracle E-Business Suite, Oracle Cloud Infrastructure, Oracle Weblogic
Assistant Director (Databases)
2015-2020
Assistant Director (Databases)
Pakistan Civil Aviation Authority
Managed ERP for implementing the structures effectively, while limiting the resources consumed in the planning process. Improved IT/business processes and investigations to resolve the user’s issues as well as offered user’s training to help the user in operating the system in efficient way.
Education
Newports Institute Of Communication & Economics
2008 - 2011
Newports Institute Of Communication & Economics
Pakistan

Newports Institute Of Communication & Economics offers a B.S. in Computer Science.

Certificate
Oracle University
2013
Oracle University
USA

Oracle E-Business Suite R12 Financials Certified Expert  Consultant, PAYABLES 

Certificate
Oracle University
2013
Oracle University
USA

Oracle E-Business Suite R12 Financials Certified Expert  Consultant, PAYABLES 

Certificate
Oracle University
2014
Oracle University
USA

Oracle E-Business Suite R12 Applications Database Administrator Certified Professional 

Certificate
Skills
Oracle Expertise
  • Oracle Databases
  • Oracle E-Business Suite
  • Oracle Weblogic
  • Oracle Cloud Infrastructure
  • Oracle Database Appliances
Languages
  • English
System
  • Linux
    90%
  • Microsoft
    75%
  • SOLARIS
    65%
  • AIX
    60%
Knowledge
  • Installation/Configuration
  • Capacity Planning
  • Data Recovery Plan
  • Oracle Database Migration and Upgrade
  • Oracle ERP Migration and Upgrade
  • Linux and Windows management
  • Performance Evaluation

Blog

September 1, 2017 Oracle RAC Daemons and Processes
Installation/Configurations10gInstallation/Configurations11gInstallation/Configurations12cOracle Database Material

Oracle RAC Daemons and Processes

 

OPROCd

Process Monitor provides basic cluster integrity services

EVMd

Event Management spawns a child process event logger and generates callouts

OCSSd

Cluster Synchronization Services basic node membership, group services, basic locking

CRSd

Cluster Ready Services resource monitoring, failover and node recovery

LMSn

Lock Manager Server process – GCS this is the cache fusion part, it handles the consistent copies of blocks that are tranferred between instances. It receives requests from LMD to perform lock requests. I rools back any uncommitted transactions. There can be upto ten LMS processes running and can be started dynamically if demand requires it.
they manage lock manager service requests for GCS resources and send them to a service queue to be handled by the LMSn process. It also handles global deadlock detection and monitors for lock conversion timeouts.

LMON

Lock Monitor Process – GES this process manages the GES, it maintains consistency of GCS memory in case of process death. It is also responsible for cluster reconfiguration and locks reconfiguration (node joining or leaving), it checks for instance deaths and listens for local messaging.
A detailed log file is created that tracks any reconfigurations that have happened.

LMD

Lock Manager Daemon – GES this manages the enqueue manager service requests for the GCS. It also handles deadlock detention and remote resource requests from other instances.

LCK0

Lock Process – GES manages instance resource requests and cross-instance call operations for shared resources. It builds a list of invalid lock elements and validates lock elements during recovery.

DIAG

Diagnostic Daemon This is a lightweight process, it uses the DIAG framework to monitor the healt of the cluster. It captures information for later diagnosis in the event of failures. It will perform any neccessary recovery if an operational hang is detected.

 

 

 

September 1, 2017 SQL Queries to Check ACTIVE / INACTIVE Sessions
AppsDBA ScriptsDatabase ScriptsScripts

SQL Queries to Check ACTIVE / INACTIVE Sessions

(more…)

September 1, 2017 AutoConfig Failing With NegativeArraySizeException After Upgrading To 11gR2 Database
APPS DBAErrors/Workarounds-ApplicationsOracle APPS DBA

ERROR

Error stack while running autoconfig:

Updating Context file…COMPLETED
(more…)

September 1, 2017 RAC Useful Parameters
Installation/Configurations10gInstallation/Configurations11gInstallation/Configurations12cOracle Database Material

RAC Useful Parameters

cluster_interconnects specify a specific IP address to use for the inetrconnect
_gcs_fast_config enables fast reconfiguration for gcs locks (true|false)
_lm_master_weight controls which instance will hold or (re)master more resources than others
_gcs_resources controls the number of resources an instance will master at a time
_lm_tickets controls the number of message tickets
_lm_ticket_active_sendback controls the number of message tickets (aggressive messaging)
_db_block_max_cr_dba limits the number of CR copies per DBA on the buffer cache (see grd)
_fairness_threshold used when too many CR requested arrive for a particular buffer and the block becomes disowned (see grd)
_gc_affinity_time specifies interval minutes for reamstering
_gc_affinity_limit defines the number of times a instance access the resource before remastering
_gc_affinity_minimum defines the minimum number of times a instance access the resource before remastering
_lm_file_affinity disables dynamic remastering for the objects belonging to those files
_lm_dynamic_remastering enable or disable remastering
_gc_defer_time define the time by which an instance deferred downgrading a lock (see Cache Fusion)
_lgwr_async_broadcast change the SCN boardcast method (see troubleshooting)

 

 

September 1, 2017 Concurrent Request Queries
AppsDBA ScriptsDatabase ScriptsScripts

Concurrent Request Queries

 

HISTORY OF CONCURRENT REQUEST  (PROGRAM WISE)

 

SELECT DISTINCT t.user_concurrent_program_name,
r.request_id,
To_char(r.actual_start_date, ‘dd-mm-yy hh24:mi:ss’)
“Started at”,
To_char(r.actual_completion_date, ‘dd-mm-yy hh24:mi:ss’)
“Completed at”,
Decode(r.phase_code, ‘C’, ‘Completed’,
‘I’, ‘Inactive’,
‘P ‘, ‘Pending’,
‘R’, ‘Running’,
‘NA’)
phasecode,
Decode(r.status_code, ‘A’, ‘Waiting’,
‘B’, ‘Resuming’,
‘C’, ‘Normal’,
‘D’, ‘Cancelled’,
‘E’, ‘Error’,
‘F’, ‘Scheduled’,
‘G’, ‘Warning’,
‘H’, ‘On Hold’,
‘I’, ‘Normal’,
‘M’, ‘No Manager’,
‘Q’, ‘Standby’,
‘R’, ‘Normal’,
‘S’, ‘Suspended’,
‘T’, ‘Terminating’,
‘U’, ‘Disabled’,
‘W’, ‘Paused’,
‘X’, ‘Terminated’,
‘Z’, ‘Waiting’)
“Status”,
r.argument_text
“Parameters”,
Substr(u.description, 1, 25)
“Who submitted”,
Round(( ( Nvl(v.actual_completion_date, SYSDATE)  v.actual_start_date ) * 24 * 60 )) Etime
FROM   apps.fnd_concurrent_requests r,
apps.fnd_concurrent_programs p,
apps.fnd_concurrent_programs_tl t,
apps.fnd_user u,
apps.fnd_conc_req_summary_v v
WHERE  r.concurrent_program_id = p.concurrent_program_id
AND r.actual_start_date >= ( SYSDATE  30 )
–AND r.requested_by=32126
AND r.program_application_id = p.application_id
AND t.concurrent_program_id = r.concurrent_program_id
AND r.requested_by = u.user_id
AND v.request_id = r.request_id
–AND r.request_id =’8840058′ in (‘35645887′,’45824565’)
AND t.user_concurrent_program_name LIKE ‘%%’
ORDER  BY To_char(r.actual_completion_date, ‘dd-mm-yy hh24:mi:ss’);

 

Requests Completion With Date Details

SELECT request_id,
To_char(request_date, ‘DD-MON-YYYY HH24:MI:SS’)           request_date,
To_char(requested_start_date, ‘DD-MON-YYYY HH24:MI:SS’)
requested_start_date,
To_char(actual_start_date, ‘DD-MON-YYYY HH24:MI:SS’)
actual_start_date,
To_char(actual_completion_date, ‘DD-MON-YYYY HH24:MI:SS’)
actual_completion_date,
To_char(SYSDATE, ‘DD-MON-YYYY HH24:MI:SS’)                current_date,
Round(( Nvl(actual_completion_date, SYSDATE)  actual_start_date ) * 24,
2)
duration
FROM   fnd_concurrent_requests
WHERE  request_id = To_number(‘&p_request_id’);

 

Fetch Request id from SID

SELECT a.request_id,
a.phase_code,
a.status_code,
d.sid  AS Oracle_SID,
d.serial#,
d.osuser,
d.process,
c.spid AS OS_Process_ID
FROM   apps.fnd_concurrent_requests a,
apps.fnd_concurrent_processes b,
gv$process c,
gv$session d
WHERE  a.controlling_manager = b.concurrent_process_id
AND c.pid = b.oracle_process_id
AND b.session_id = d.audsid
AND a.phase_code = ‘R’
AND a.status_code = ‘R’
AND d.sid = &sid;

 

Determine Which Manager Ran a Specific Concurrent Request

SELECT b.user_concurrent_queue_name
FROM   fnd_concurrent_processes a,
fnd_concurrent_queues_vl b,
fnd_concurrent_requests c
WHERE  a.concurrent_queue_id = b.concurrent_queue_id
AND a.concurrent_process_id = c.controlling_manager
AND c.request_id = ‘&Request_id’;

 

Concurrent request status for a given sid?

SELECT s.inst_id,
s.sid,
s.serial#,
p.spid os_pid,
s.status,
s.osuser,
s.username,
s.machine,
s.MODULE,
s.schemaname,
s.action
FROM   gv$session s,
gv$process p
WHERE  s.paddr = p.addr
AND s.sid = ‘&oracle_sid’;

 

Find out request id from Oracle_Process Id

SELECT request_id,
oracle_process_id,
os_process_id
FROM   apps.fnd_concurrent_requests
WHERE  oracle_process_id = ‘&Process_ID’;

 

Find Concurrent Program name,phase code,status code for a given Request ID

SELECT request_id,
user_concurrent_program_name,
Decode(phase_code, ‘C’, ‘Completed’,
phase_code)                     phase_code,
Decode(status_code, ‘D’, ‘Cancelled’,
‘E’, ‘Error’,
‘G’, ‘Warning’,
‘H’, ‘On Hold’,
‘T’, ‘Terminating’,
‘M’, ‘No Manager’,
‘X’, ‘Terminated’,
‘C’, ‘Normal’,
status_code)                   status_code,
To_char(actual_start_date, ‘dd-mon-yy:hh24:mi:ss’) Start_Date,
To_char(actual_completion_date, ‘dd-mon-yy:hh24:mi:ss’),
completion_text
FROM   apps.fnd_conc_req_summary_v
WHERE  request_id = ‘&Request_ID’
ORDER  BY 6 DESC;

 

Find the SQL Query for a given Concurrent Request through SID

 

SELECT sid,
sql_text
FROM   gv$session ses,
gv$sqlarea SQL
WHERE  ses.sql_hash_value = SQL.hash_value(+)
AND ses.sql_address = SQL.address(+)
AND ses.sid = ‘&oracle_SID’ ;

 

Find Child Requests for Parent Request ID

SELECT SUM.request_id,
req.parent_request_id,
SUM.user_concurrent_program_name,
Decode(SUM.phase_code, ‘C’, ‘Completed’,
SUM.phase_code)   phase_code,
Decode(SUM.status_code, ‘D’, ‘Cancelled’,
‘E’, ‘Error’,
‘G’, ‘Warning’,
‘H’, ‘On Hold’,
‘T’, ‘Terminating’,
‘M’, ‘No Manager’,
‘X’, ‘Terminated’,
‘C’, ‘Normal’,
SUM.status_code) status_code,
SUM.actual_start_date,
SUM.actual_completion_date,
SUM.completion_text
FROM   apps.fnd_conc_req_summary_v SUM,
apps.fnd_concurrent_requests req
WHERE  req.request_id = SUM.request_id
AND req.parent_request_id = ‘&Parent_Request_ID’;

 

SELECT has_sub_request,
is_sub_request,
parent_request_id,
oracle_process_id,
oracle_session_id,
os_process_id
FROM   fnd_concurrent_requests
WHERE  request_id = ‘&Req_ID’; –Enter ID from Above Query Result

 

Cancelling Concurrent request From Backend

–By request id 

 UPDATE fnd_concurrent_requests
SET    status_code = ‘D’,
phase_code = ‘C’
WHERE  request_id = &req_id;

–By program_id 

UPDATE fnd_concurrent_requests
SET    status_code = ‘D’,
phase_code = ‘C’
WHERE  concurrent_program_id = &prg_id;

 

Terminate the all concurrent requests  Module wise

SELECT ‘ALTER SYSTEM KILL SESSION ”’
||sid
||‘,’
||serial#
||”’ immediate;’
FROM   gv$session
WHERE  MODULE LIKE ‘GLPREV’;

–This will create an script for terminating all the concurrent request.

 

History of concurrent requests which are error out

SELECT a.request_id                        “Req Id”,
a.phase_code,
a.status_code,
actual_start_date,
actual_completion_date,
c.concurrent_program_name
|| ‘: ‘
|| ctl.user_concurrent_program_name “program”
FROM   applsys.fnd_concurrent_requests a,
applsys.fnd_concurrent_processes b,
applsys.fnd_concurrent_queues q,
applsys.fnd_concurrent_programs c,
applsys.fnd_concurrent_programs_tl ctl
WHERE  a.controlling_manager = b.concurrent_process_id
AND a.concurrent_program_id = c.concurrent_program_id
AND a.program_application_id = c.application_id
AND a.status_code = ‘E’
AND a.phase_code = ‘C’
AND actual_start_date > SYSDATE  2
AND b.queue_application_id = q.application_id
AND b.concurrent_queue_id = q.concurrent_queue_id
AND ctl.concurrent_program_id = c.concurrent_program_id
AND ctl.LANGUAGE = ‘US’
ORDER  BY 5 DESC;

 

Find out Concurrent Program which enable with trace

SELECT A.concurrent_program_name                     “Program_Name”,
Substr(A.user_concurrent_program_name, 1, 40) “User_Program_Name”,
Substr(B.user_name, 1, 15)                    “Last_Updated_By”,
Substr(B.description, 1, 25)                  DESCRIPTION
FROM   apps.fnd_concurrent_programs_vl A,
applsys.fnd_user B
WHERE  A.enable_trace = ‘Y’
AND A.last_updated_by = B.user_id;

 

Concurrent Program count under QUEUE

SELECT user_concurrent_program_name        “PROGRAM NAME”,
concurrent_queue_name               “QUEUE NAME”,
priority,
Decode(phase_code, ‘P’, ‘Pending’)  “PHASE”,
Decode(status_code, ‘A’, ‘Waiting’,
‘B’, ‘Resuming’,
‘C’, ‘Normal’,
‘D’, ‘Cancelled’,
‘E’, ‘Error’,
‘F’, ‘Scheduled’,
‘G’, ‘Warning’,
‘H’, ‘On Hold’,
‘I’, ‘Normal’,
‘M’, ‘No Manager’,
‘Q’, ‘Standby’,
‘R’, ‘Normal’,
‘S’, ‘Suspended’,
‘T’, ‘Terminating’,
‘U’, ‘Disabled’,
‘W’, ‘Paused’,
‘X’, ‘Terminated’,
‘Z’, ‘Waiting’) ”  NAME”,
status_code,
Count(*)
FROM   fnd_concurrent_worker_requests
WHERE  phase_code = ‘P’
AND hold_flag != ‘Y’
AND requested_start_date <= SYSDATE
AND concurrent_queue_name <> ‘FNDCRM’
AND concurrent_queue_name <> ‘GEMSPS’
GROUP  BY user_concurrent_program_name,
concurrent_queue_name,
priority,
phase_code,
status_code
ORDER  BY Count(*) DESC

 

Lists the Concurrent Manager Names with the No. of Requests in Pending/Running

SELECT a.user_concurrent_queue_name,
a.max_processes,
SUM(Decode(b.phase_code, ‘P’, Decode(b.status_code, ‘Q’, 1,
0),
0)) Pending_Standby,
SUM(Decode(b.phase_code, ‘P’, Decode(b.status_code, ‘I’, 1,
0),
0)) Pending_Normal,
SUM(Decode(b.phase_code, ‘R’, Decode(b.status_code, ‘R’, 1,
0),
0)) Running_Normal
FROM   fnd_concurrent_queues_vl a,
fnd_concurrent_worker_requests b
WHERE  a.concurrent_queue_id = b.concurrent_queue_id
AND b.requested_start_date <= SYSDATE
GROUP  BY a.user_concurrent_queue_name,
a.max_processes;

 

 

 

 

 

 

September 1, 2017 Oracle Forms Session Queries
AppsDBA ScriptsDatabase ScriptsScripts

Oracle Forms Session Queries

(more…)

Contact

Get in Touch
  • Address: Karachi, PAKISTAN
  • Email: askme@SyedSaadAli.com
  • Phone: +92-300-026-5668
  • Freelance: Available
Contact Form