Thursday, November 17, 2022

How to increase java heap size in EBS R12.2

Why we need to increase the Java heap size: Mainly we need to increase the EBS Performance. Default oacore JVM heap size is 512 MB it's supports 50 to 100 users When our R12.2 instance reach more than 200 users we need to be increase the oacore size for better performance. Oracle recommended to configure 2 GB JVM Heap Space for oacore. This can roughly support 150 to 200 users depending on usage. For higher user load additional oacore managed servers need to be created. Oracle recommend to have 1 managed server per 2 CPU. Following steps how increase the oacore size. Step1: Login weblogic console Step 2: Click à lock and edit Step3: Choice the Domain tab and click à serves menu Step4: Click àoacore_server1 Step 5: Click à server start Step 6: Go to Argument tab Then change the xms and xmx values default value is 512m Default values -XX:PermSize=128m -XX:MaxPermSize=384m -Xms512m -Xmx512m - I changed the values in -XX:PermSize=128m -XX:MaxPermSize=384m -Xms1024m -Xmx2048m – What is mean by XX,Xms and Xmx? XX is MaxPermSize Xms is the minimum heap size Xmx is the maximum heap size Step 7: Click save and release the configuration tab.

What does f+++++++++ mean in rsync logs?

230

Let's take a look at how rsync works and better understand the cryptic result lines:

1 - A huge advantage of rsync is that after an interruption the next time it continues smoothly.

The next rsync invocation will not transfer the files again, that it had already transferred, if they were not changed in the meantime. But it will start checking all the files again from the beginning to find out, as it is not aware that it had been interrupted.

2 - Each character is a code that can be translated if you read the section for -i, --itemize-changes in man rsync

Decoding your example log file from the question:

>f.st......

> - the item is received
f - it is a regular file
s - the file size is different
t - the time stamp is different

.d..t......

. - the item is not being updated (though it might have attributes 
    that are being modified)
d - it is a directory
t - the time stamp is different

>f+++++++++

> - the item is received
f - a regular file
+++++++++ - this is a newly created item

The relevant part of the rsync man page:

-i, --itemize-changes

Requests a simple itemized list of the changes that are being made to each file, including attribute changes. This is exactly the same as specifying --out-format='%i %n%L'. If you repeat the option, unchanged files will also be output, but only if the receiving rsync is at least version 2.6.7 (you can use -vv with older versions of rsync, but that also turns on the output of other verbose messages).

The "%i" escape has a cryptic output that is 11 letters long. The general format is like the string YXcstpoguax, where Y is replaced by the type of update being done, X is replaced by the file-type, and the other letters represent attributes that may be output if they are being modified.

The update types that replace the Y are as follows:

  • < means that a file is being transferred to the remote host (sent).
  • > means that a file is being transferred to the local host (received).
  • c means that a local change/creation is occurring for the item (such as the creation of a directory or the changing of a symlink, etc.).
  • h means that the item is a hard link to another item (requires --hard-links).
  • . means that the item is not being updated (though it might have attributes that are being modified).
  • * means that the rest of the itemized-output area contains a message (e.g. "deleting").

The file-types that replace the X are: f for a file, a d for a directory, an L for a symlink, a D for a device, and a S for a special file (e.g. named sockets and fifos).

The other letters in the string above are the actual letters that will be output if the associated attribute for the item is being updated or a "." for no change. Three exceptions to this are: (1) a newly created item replaces each letter with a "+", (2) an identical item replaces the dots with spaces, and (3) an unknown attribute replaces each letter with a "?" (this can happen when talking to an older rsync).

The attribute that is associated with each letter is as follows:

  • c means either that a regular file has a different checksum (requires --checksum) or that a symlink, device, or special file has a changed value. Note that if you are sending files to an rsync prior to 3.0.1, this change flag will be present only for checksum-differing regular files.
  • s means the size of a regular file is different and will be updated by the file transfer.
  • t means the modification time is different and is being updated to the sender’s value (requires --times). An alternate value of T means that the modification time will be set to the transfer time, which happens when a file/symlink/device is updated without --times and when a symlink is changed and the receiver can’t set its time. (Note: when using an rsync 3.0.0 client, you might see the s flag combined with t instead of the proper T flag for this time-setting failure.)
  • p means the permissions are different and are being updated to the sender’s value (requires --perms).
  • An o means the owner is different and is being updated to the sender’s value (requires --owner and super-user privileges).
  • g means the group is different and is being updated to the sender’s value (requires --group and the authority to set the group).
  • The u slot is reserved for future use.
  • The a means that the ACL information changed.
  • The x means that the extended attribute information changed.

One other output is possible: when deleting files, the "%i" will output the string "*deleting" for each item that is being removed (assuming that you are talking to a recent enough rsync that it logs deletions instead of outputting them as a verbose message).



https://stackoverflow.com/questions/4493525/what-does-f-mean-in-rsync-logs 

Thursday, October 27, 2022

Oracle E-Business Suite with Oracle Autonomous Database on Dedicated Exadata Infrastructure

Oracle E-Business Suite with Oracle Autonomous Database on Dedicated Exadata Infrastructure Oracle Autonomous Database on Dedicated Exadata Infrastructure is certified for use with Oracle E-Business Suite (EBS) Release 12.2. Customers who use Oracle Autonomous Database can expect to benefit from increased system availability as well as automation of tasks such as provisioning, patching, and tuning. This initial limited availability certification includes procedures for several key tasks, starting with migration of an existing EBS environment to Oracle Cloud Infrastructure (OCI) and Oracle Autonomous Database. Further procedures are provided for subsequent backup and restore, cloning, and patching of the migrated EBS environment. If you would like to learn more about the limited availability program for Oracle E-Business Suite with Oracle Autonomous Database, contact the EBS on Autonomous Database Program Office at ebs-adb-info_ww@oracle.com.

Monday, October 17, 2022

How to Change Profile Option Value Without Forms? (Doc ID 943710.1)

 

APPLIES TO:

Oracle Application Object Library - Version 11.5.10.0 to 12.2.10 [Release 11.5 to 12.2]
Information in this document applies to any platform.

GOAL

How to update a Profile Option using SQL (if Forms login is not possible)?

SOLUTION

Please use the API:  FND_PROFILE
The package FND_PROFILE  can be found in file AFPFPROS.pls

 

Note: FND_PROFILE is not public interface.  Use of this API is considered a customization and should be tested in a test environment.

FND_PROFILE.SAVE - sets the value of a profile option permanently to the database,
at any level. This routine can be used at runtime or during patching.
This routine will not actually commit the changes; the caller must commit.
The levels are: 'SITE', 'APPL', 'RESP', or 'USER'.

Examples of use:

FND_PROFILE.SAVE('P_NAME', 'P_VAL', 'SITE');
FND_PROFILE.SAVE('P_NAME', 'P_VAL', 'APPL', 321532);
FND_PROFILE.SAVE('P_NAME', 'P_VAL', 'RESP', 321532, 345234);
FND_PROFILE.SAVE('P_NAME', 'P_VAL', 'USER', 123321);


returns: TRUE if successful, FALSE if failure.


To update a Profile Option value at Site level, you need to run the SQL Script below:

Declare
value Boolean;
Begin
value := fnd_profile.save('APPS_DATABASE_ID','<new_value>','SITE');
End;



Example:

===========
Sample Code
===========
DECLARE
stat boolean;
BEGIN
dbms_output.disable;
dbms_output.enable(100000);
stat := FND_PROFILE.SAVE('GUEST_USER_PWD', 'GUEST/ORACLE', 'SITE');
IF stat THEN
    dbms_output.put_line( 'Stat = TRUE - profile updated' );
ELSE
    dbms_output.put_line( 'Stat = FALSE - profile NOT updated' );
END IF;
commit;
END;
===============
End of Sample Code
===============



Description of the FND_PROFILE.SAVE function parameters:

Function SAVE(
X_NAME in varchar2,             /* Profile name you are setting */
X_VALUE in varchar2,            /* Profile value you are setting */
X_LEVEL_NAME in varchar2,       /* Level that you're setting at:
                                   'SITE','APPL','RESP','USER', etc. */
X_LEVEL_VALUE in varchar2 default NULL,
                                /* Level value that you are setting at,
                                   e.g. user id for 'USER' level.
                                   X_LEVEL_VALUE is not used at site level. */
X_LEVEL_VALUE_APP_ID in varchar2 default NULL,
                                /* Used for 'RESP' and 'SERVRESP' level;
                                   Resp Application_Id. */
X_LEVEL_VALUE2 in varchar2 default NULL
                                /* 2nd Level value that you are setting at.
                                   This is for the 'SERVRESP' hierarchy. */
) return boolean;

 

 

Reference: https://docs.oracle.com/cd/E26401_01/doc.122/e20927.pdf

Thursday, October 13, 2022

FND_CONCURRENT_QUEUE Control Code Meaning

 In the FND_CONCURRENT_QUEUE table we have a column named control_code.


To get the details of the code present in the column we can use below script.

SQL> select lookup_code,meaning from apps.fnd_lookups where lookup_type = 'CP_CONTROL_CODE' order by lookup_code;

LOOKUP_CODE    MEANING
----------                    ------------------------------
A                               Activating
B                               Activated
D                               Deactivating
E                               Deactivated
H                               System Hold, Fix Manager before resetting counters
N                               Target node/queue unavailable
O                               Suspending concurrent manager
P                                Suspended
Q                               Resuming concurrent manager
R                               Restarting
T                               Terminating
U                               Updating environment information
V                               Verifying
X                               Terminated


Saturday, October 8, 2022

adop fs_clone failure

adop fs_clone failure

Validating credentials.


Initializing.

    Run Edition context  : /ascprd/app/applmgr/IRASCPRD_R122/fs1/inst/apps/IRASCPRD_Admin_host/appl/admin/IRASCPRD_Admin_host.xml

    Patch edition context: /ascprd/app/applmgr/IRASCPRD_R122/fs2/inst/apps/IRASCPRD_Admin_host/appl/admin/IRASCPRD_Admin_host.xml

    Patch file system free space: 696.66 GB


Validating system setup.

    [UNEXPECTED]Invalid worker Count: 0

    [UNEXPECTED]Error validating worker count



[STATEMENT] Please run adopscanlog utility, using the command


"adopscanlog -latest=yes"


to get the list of the log files along with snippet of the error message corresponding to each log file.



adop exiting with status = 2 (Fail)



Fix : Run with one worker

$ adop phase=fs_clone worker=1




Solution worked for others


Solution:
The default worker count information(recomm & max)  is stored in a file adpawc.xml that can be found under $APPL_TOP/admin/$TWO_TASK/log

Somehow this file has been modified with recommended value as 0 and max value as 1 during node addition.

FileContent:
<?xml version="1.0"?>
<WORKER_COUNT>
        <RECOMMENDED>0</RECOMMENDED>
        <MAX>1</MAX>
</WORKER_COUNT>

Update recommended &  max value based on cpu count.

Here I updated recommended value as 8 and max value as 64 and saved the file.

Once the changes are made, fs_clone went smoothly.

How to choose the number of workers for adop or adpatch

 How to choose the number of workers:


For less than 32 cores set:

• parallel_max_servers = 2 x number of CPU cores
• AD Parallel workers – start with 1.5 x number of CPU cores. Possibly increase to 2 x number of CPU cores
• job_queue_processes = 2 x number of CPU cores

For 32 cores and above, start with:

• parallel_max_servers = 1.5 x number of CPU cores
• AD Parallel workers = between 1.0 and and 1.5 x number of CPU cores
• job_queue_processes = 1.5 x number of CPU cores


EBS 12.2.9 RUP Patch 28840850 Hung with Error "aiosp2() Error: failure in usdspn() Contents of error buffer are: usdsop cannot create a new process" (Doc ID 2878394.1)

Oracle E-Business Suite Release 12.2 System Schema Migration

In This Document Section 1: Overview of the EBS System Schema Section 2: Requirements for Using the EBS System Schema Section 3: Migrating t...