Search This Blog

Saturday, 15 November 2025

Why is ADOP Status Still Showing "ACTIVE" if the Patch Application in "adop phase=apply hotpatch=yes" Completed Successfully?

 

Ref: Oracle support - (Doc ID 1928798.1)

When the patch is applied with adop hotpatch=yes mode, there are no Online Patching cycle started yet -- all is on the RUN filesystem --
adop commands status indicates what potential next adop command could be run:
NOT STARTED: both adop finalize and cleanup can be run after a apply in hotpatch mode
NOT APPLICABLE: since there were no online patching cycle prepare was skipped over hence there is no point in referring to the prepare status; and cutover is not possible after hotpatch on run fs

Hence prepare and cutover status are not applicable in regards to the last adop hotpatch active status, while finalize and cleanup could be called. 
Note that prepare can also be called to start a new patching lifecycle;
Prepare is in NOT APPLICABLE status in relation to the last hotpatch apply that is still ACTIVE until a new adop online patching cycle is started where prepare will become ACTIVE and apply will turn to NOT STARTED at that time

Example:
When one applies in hotpatch mode the APPLY phase will remain active until such time as run a PREPARE during the next patching cycle.
The APPLY phase is active because you can potentially run another hotpatch.
Once one apples a hotpatch, there are no further actions required.

When needing to apply a new patch -- this time in Online Patching mode -- run the adop phase=prepare command.
At that time, adop config change detector will find that the RUN filesystem has had patches applied in hotpatch mode and will sync the PATCH filesystem as part of the prepare phase.

Tuesday, 11 November 2025

remove spaces from SQL script in notepad++

 

  1. Go to Search -> Replace
  2. Select "Regular expression" under Search mode.
  3. Use ^\s* for "Find what" and leave "Replace with" blank.
  4. Click Replace all

Oracle APPS DBA - SQL query to get the print jobs from users

 Use the following query


select distinct fcr.printer, fu.user_name, 

fu.description, count(*) jobs

from apps.fnd_concurrent_requests fcr, apps.fnd_user fu

where fcr.requested_by = fu.user_id

and (fcr.printer is not null and fcr.printer not in  ('noprint','LOCAL_PRINT','LOCAL','LOCAL_PRINTTO', 'LOCAL_PREVIEW'))

group by fcr.printer, fu.user_name, fu.description;



Monday, 10 November 2025

Oracle ERP R12.2 cloned environment by EBS cloud manager - users facing "an invalid redirect has been blocked" while opening forms

 Run the following query and check if the source values are still there, if source values are there, then update with the cloned environment values or unset ICX forms launcher profile on site level.



SELECT
    p.profile_option_name        short_name,
    n.user_profile_option_name   name,
    decode(v.level_id, 10001, 'Site',
                       10002, 'Application',
                       10003, 'Responsibility',
                       10004, 'User',
                       10005, 'Server', v.level_id) level_set,
    decode(to_char(v.level_id), '10001', '',
                                '10002', app.application_short_name,
                                '10003', rsp.responsibility_key,
                                '10005', svr.node_name,
                                '10006', org.name,
                                '10004', usr.user_name, 'UnDef') "CONTEXT",
    v.profile_option_value       value
FROM
    fnd_profile_options         p,
    fnd_profile_option_values   v,
    fnd_profile_options_tl      n,
    fnd_user                    usr,
    fnd_application             app,
    fnd_responsibility          rsp,
    fnd_nodes                   svr,
    hr_operating_units          org
WHERE
    p.profile_option_id = v.profile_option_id (+)
    AND p.profile_option_name = n.profile_option_name
    AND n.language = 'US'
    AND upper(p.profile_option_name) = ('ICX_FORMS_LAUNCHER')
    AND usr.user_id (+) = v.level_value
    AND rsp.application_id (+) = v.level_value_application_id
    AND rsp.responsibility_id (+) = v.level_value
    AND app.application_id (+) = v.level_value
    AND svr.node_id (+) = v.level_value
    AND org.organization_id (+) = v.level_value
ORDER BY
    user_profile_option_name,
    level_set;

can not drop database link after changing the global_name parameter

 try the following step

1- take complete database backup

2- take the backup of table sys.link$

3- delete the row where name = db link

4- check the db link



extract DDL for database links with passwords -

 follow the link


https://forums.oracle.com/ords/apexds/post/how-to-extract-ddl-for-all-database-links-7664


set lines 200
set pages 0
set feed off
set heading off
spool get_ddl/get_dblink_ddl.run.sql

SELECT 'CREATE OR REPLACE PROCEDURE '||DECODE(U.NAME,'PUBLIC','SYSTEM',U.NAME)||'.dba$sp_create_dblink_tmp AS '||CHR(10)||'BEGIN'||CHR(10)||
'EXECUTE IMMEDIATE '||''''||
'create '||DECODE(U.NAME,'PUBLIC','public ',' ')||'database link '||L.name
||' connect to ' || L.USERID || ' identified by values '
||''''||''''||L.PASSWORDX||''''||''''||' using '||''''||''''|| L.host ||''''||''''||''''||';'|| CHR(10)||'END dba$sp_create_dblink_tmp; '
||CHR(10)||'/'||CHR(10)||
'EXECUTE '||DECODE(U.NAME,'PUBLIC','SYSTEM',U.NAME)||'.dba$sp_create_dblink_tmp;'||CHR(10)||
'DROP PROCEDURE '||DECODE(U.NAME,'PUBLIC','SYSTEM',U.NAME)||'.dba$sp_create_dblink_tmp;'||CHR(10)
||CHR(10)
TEXT
FROM sys.link$ L, sys.user$ U
WHERE L.OWNER# = U.USER#
;

spool off

Thursday, 6 November 2025

command to kill all the processes running by a specific user

 

following command can be used to kill all the processes running by oracle user, replace oracle by any user of interest.


pkill -9 -u `id -u oracle`



Why is ADOP Status Still Showing "ACTIVE" if the Patch Application in "adop phase=apply hotpatch=yes" Completed Successfully?

  Ref: Oracle support -  (Doc ID 1928798.1) When the patch is applied with adop hotpatch=yes mode, there are no Online Patching cycle star...