Sunday, 11 November 2018

How to increase Java heap size in Hyperion

Hi DBA-Mates, Good news that we got one more new error, hurrayyyy...
Recently, we got an error Exception in thread "main" java.lang.OutOfMemoryError: Java heap space … in Hyperion which we would like share with you all DBA’s…

Actually, one of our colleagues was thinking as increasing Java Heap Size is same in Hyperion and in Oracle EBS, but it completely different which we have shown below.
Login to correct Hyperion server where the Node manager, WebLogic and java are running as per our environment. But you can look accordingly as per your environment.

Here path may vary but the main file name is setHPenv.sh where we need to make changes for java heap size.
[oracle@host ~]$ hostname; id
ora-data.blogspot.com
uid=225(oracle) gid=2259(oinstall) groups=209(dba),2259(oinstall)

[oracle@host ~]$ cd /p02/apps/oracle/product/fin/ora-data/fmw/user_projects/orasystem1/planning/planning1
[oracle@host ~]$ pwd
/p02/apps/oracle/product/fin/ora-data/fmw/user_projects/orasystem1/planning/planning1
[oracle@host ~]$ ls -ltr setHPenv.sh*
-rwxr-x---+ 1 oracle oinstall 3776 Jun 23  2017 setHPenv.sh.512
-rwxr-x---+ 1 oracle oinstall 3777 Jun 23  2017 setHPenv.sh.10192015
-rwxr-x---+ 1 oracle oinstall 3983 Nov  8 02:45 setHPenv.sh.210818_bkp
-rwxr-x---+ 1 oracle oinstall 3984 Nov  8 02:59 setHPenv.sh
[oracle@host ~]$
As below we can see that Java heap size value is 512 MB in backup file and now we can increased to 1024 MB (1GB).

Note: Always take backup of file before editing or making any changes in file either on PROD or Test, otherwise you are good to know what can be happen hhhhhh...
Also, always check for "diff" value after made any changes in file and backup file as shown below

[oracle@esu2e005 planning1]$ diff setHPenv.sh.210818_bkp setHPenv.sh
< HP_JAVA_OPTIONS="${HP_JAVA_OPTIONS} -Xmx512M"
---
> HP_JAVA_OPTIONS="${HP_JAVA_OPTIONS} -Xmx1024M"
[oracle@esu2e005 planning1]$
Error Log details:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
                at java.lang.reflect.Array.newArray(Native Method)
                at java.lang.reflect.Array.newInstance(Array.java:52)
                at oracle.jdbc.driver.BufferCache.get(BufferCache.java:229)
                at oracle.jdbc.driver.PhysicalConnection.getByteBuffer(PhysicalConnection.java:12319)
                at oracle.jdbc.driver.OracleStatement.prepareAccessors(OracleStatement.java:1099)
                at oracle.jdbc.driver.OracleStatement.check_row_prefetch_changed(OracleStatement.java:3989)
                at oracle.jdbc.driver.OracleResultSetImpl.close_or_fetch_from_next(OracleResultSetImpl.java:599)
                at oracle.jdbc.driver.OracleResultSetImpl.next(OracleResultSetImpl.java:520)
                at com.hyperion.planning.sql.HspSQLImpl.executeQuery(HspSQLImpl.java:228)
                at com.hyperion.planning.sql.HspSQLImpl.executeQuery(HspSQLImpl.java:108)
                at com.hyperion.planning.sql.JDBCCacheLoader.loadObjects(JDBCCacheLoader.java:62)
                at com.hyperion.planning.sql.JDBCCacheLoader.loadObjects(JDBCCacheLoader.java:44)
                at com.hyperion.planning.sql.GenericCache.loadCache(GenericCache.java:383)
                at com.hyperion.planning.sql.GenericCache.getCache(GenericCache.java:150)
                at com.hyperion.planning.sql.GenericCache.getObject(GenericCache.java:294)
Some more useful link:
Regards,

Friday, 9 November 2018

How to start MRP process on Dataguard -- standby database

Hi DBA-Mates, Hope you all are doing Great!!!
Usually, we have faced this issue Archive logs not applied on physical standby and this is most important error/issue in our DBA task.

Also, 99% people ask this question in the interviews.
We would like to share our real time scenario here which may useful and helpful to everyone.
Whenever we faced this type of issue, we need to check some important below points:

1. We should check the status of database, which should be mounted status.
SQL> select name, open_mode from v$database;

It may also show in Open (Read-only) mode because it may open for any backup or reporting purpose.

2. Then we need to check the MRP process is running or not as shown below command:
1. Check the MRP process is running or not?
$ ps -ef|grep mrp
$
2. In our case MRP is down. If the MRP process is not running then we need to START the MRP to sync from below command.

As per DBA guidance, we should always cross verify the correct instance and database.

$hostname; id
$echo $ORACLE_SID
PRD02
$sqlplus '/as sysdba'
SQL> alter database recover managed standby database disconnect;
Database altered.
SQL>

Once you start the MRP then archive log will start to sync.
Alert log error details: Providing below alert details , so we can see how the above command is working...

$ cd /p01/app/oracle/diag/rdbms/ora-data/ORA-DATA/trace
$ view alert_ORA-DATA.log
Fri Nov 02 08:41:14 2018
Archived Log entry 1014432 added for thread 1 sequence 608497 rlc 810827692 ID 0x8c1e6f64 dest 2:
RFS[2]: No standby redo logfiles available for thread 1
RFS[2]: Opened log for thread 1 sequence 608499 dbid -1944187801 branch 810827692
Fri Nov 02 12:42:47 2018
alter database recover managed standby database disconnect
Attempt to start background Managed Standby Recovery process (ORA-DATA)
Fri Nov 02 08:42:47 2018
MRP0 started with pid=54, OS id=7948
MRP0: Background Managed Standby Recovery process started (ORA-DATA)
 started logmerger process
Fri Nov 02 08:42:53 2018
Managed Standby Recovery not using Real Time Apply
Fri Nov 02 08:42:53 2018
Reconfiguration started (old inc 4, new inc 6)
List of instances:
 1 2 (myinst: 1)
 Global Resource Directory frozen
 Communication channels reestablished
 Master broadcasted resource hash value bitmaps
 Non-local Process blocks cleaned out
Fri Nov 02 08:42:53 2018
 LMS 1: 0 GCS shadows cancelled, 0 closed, 0 Xw survived
Fri Nov 02 08:42:53 2018
 LMS 0: 0 GCS shadows cancelled, 0 closed, 0 Xw survived
Fri Nov 02 08:42:53 2018
 LMS 2: 0 GCS shadows cancelled, 0 closed, 0 Xw survived
 Set master node info
 Submitted all remote-enqueue requests
 Dwn-cvts replayed, VALBLKs dubious
 All grantable enqueues granted
 Submitted all GCS remote-cache requests
 Fix write in gcs resources
Reconfiguration complete
Parallel Media Recovery started with 32 slaves
Waiting for all non-current ORLs to be archived...
All non-current ORLs have been archived.
Completed: alter database recover managed standby database disconnect
Fri Nov 02 08:42:57 2018
Media Recovery Log +RECO_SCL1/ebsprd02/archivelog/2018_11_02/thread_1_seq_608453.131634.991106577
Media Recovery Log +RECO_SCL1/ebsprd02/archivelog/2018_11_02/thread_2_seq_423209.63201.991105597
Media Recovery Log +RECO_SCL1/ebsprd02/archivelog/2018_11_02/thread_2_seq_423210.119301.991106405
Media Recovery Log +RECO_SCL1/ebsprd02/archivelog/2018_11_02/thread_1_seq_608454.137049.991106667
Fri Nov 02 08:43:12 2018
Media Recovery Log +RECO_SCL1/ebsprd02/archivelog/2018_11_02/thread_1_seq_608455.141399.991107219
Media Recovery Log +RECO_SCL1/ebsprd02/archivelog/2018_11_02/thread_1_seq_608456.122183.991107343
Media Recovery Log +RECO_SCL1/ebsprd02/archivelog/2018_11_02/thread_2_seq_423211.111046.991107213
Fri Nov 02 08:43:24 2018

To Stop the MRP process:
$sqlplus '/as sysdba'
SQL> alter database recover managed standby database cancel;
Database altered.
SQL>

Next – How to check Archive Gap and details…(soon)
Some more useful links:
Regards,

Monday, 22 October 2018

Difference between fnd_conc_clone.setup_clean and cmclean

Hi DBA-Mates, Hope you all are doing great!!!
What is difference between fnd_conc_clone.setup_clean and cmclean.sql, I got same questions in email and comment box.

So, we decided to clear the points which may useful here. It may easy/simple but hope useful for those who have requested.

FND_CONC_CLONE.SETUP_CLEAN Details:
Here, fnd_conc_clone is package name and setup_clean it is procedure name.
When we run fnd_conc_clone.setup_clean it deletes the information from the below tables such as:
fnd_nodes table in the target to clear source node information as it is a part of cloning.
It deletes the information from fnd_concurrent_queue_size , fnd_concurrent_queues_tl and
It deletes the information from fnd_concurrent_queues,
Delete from fnd_nodes;

Please find the below Syntax:


$sqlplus apps/<apps_password>
SQL> exec fnd_conc_clone.setup_clean;
PL/SQL procedure successfully completed.
SQL> commit;
Commit complete.


Note: Post  run the Autoconfig on DB tier and middle tier this will register the nodes in fnd_nodes tables.

CMCLEAN.sql Details:
Actually, we run it to cleanup the running and pending requests, because if we stop concurrent managers forcefully or by abort then concurrent requests/process may be in running state.
But when we start concurrent manager the processes may or may not start properly, sometimes due to old running process CM will not come Up. And also we should not kill the process in PROD.

Better to wait for some time or kill the process if there is no other option. There is also a way to kill process , we need to check and verify what process is doing and as it is child or parent process etc...

As per our real time experiences we/anyone should recommend as always bring down the CM /Apps then only run cmclean otherwise it may cause issue such as holding lock on tables.
It may not able to delete the rows from the concurrent manager process and request tables which are in use.

CMCLEAN will update below tables:
1) FND_CONCURRENT_QUEUES
2) FND_CONCURRENT_PROCESSES
3) FND_CONCURRENT_REQUESTS
4) FND_CONFLICTS_DOMAIN
5) FND_CONCURRENT_CONFLICT_SETS

Some more useful links:

Regards,

Sunday, 14 October 2018

RMAN Issues and Solutions - (ORA-00020) and (ORA-00245)

Hi DBA-Mates, Nice to see you all here again!!!
Many of us search for issue and solution while we are going for interviews hehehhhh. RMAN errors (ORA-00020), (ORA-00245) and solutions.
So, we thought let us share some of them which we have faced. Hope these may useful for all of us here...

Error-1:
RMAN failed to connect target database with ORA-00020: maximum number of processes (150) exceeded

Solution:
Here, we can see in error as maximum number of processes has exceeded.
So, we need to Increase the number of processes from sys user with sysdba privilege which may help here as shown below:
SQL> show parameter processes;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
....
processes                            integer     150

SQL> alter system set processes=300 scope=spfile;
System altered.
SQL>

Bounce the database so changes will be reflected in database instance and then you can initiate RMAN backup.

Error-2:
$ pwd
/rmanbkp/ORA-DATA/backup
$ cat rman_ORA-DATA_full-02Aug2017.log

Starting backup at 02-AUG-17
channel c1: starting full datafile backup set
channel c1: specifying datafile(s) in backup set
released channel: c1
released channel: c2
released channel: c3
released channel: c4
released channel: c5
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on c1 channel at 08/02/2017 21:22:25
ORA-00245: control file backup failed; target is likely on a local file system
Recovery Manager complete.

Solution:
As we can see that control file backup is failed. So we checked for RMAN configuration as shown below:

Before:

RMAN> show all;
using target database control file instead of recovery catalog
RMAN configuration parameters for database with db_unique_name ORA-DATA are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '$ORACLE_HOME/dbs/snapcf_ORA-DATA.f'; # default
RMAN>

In above configuration, we can see that CONTROLFILE autobackup is OFF.

So, we enabled it as shown below command.
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;

After:
RMAN> show all;
using target database control file instead of recovery catalog
RMAN configuration parameters for database with db_unique_name ORA-DATA are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/rmanbkp/ORA-DATA/backup/csfiles/%F';
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+DATA /ORA-DATA/CONTROLFILE/snapcf_ORA-DATA.f';
RMAN>

Now, RMAN backup completed successfully.
We will keep update this as if we will get any new issues.
Note: Almost time errors found in RMAN are very clear in log, by reading that we can understand and correct that. If you guys have any issue/solution, please share with us.

Some more useful links:
Regards,

How to deploy RPD in OBIEE 11g

Hi DBA-Mates, Hope you are all doing well and also market is going well now a day…
We would like to share this very simple and easy step from OBIEE i.e. How to deploy RPD in OBIEE:

This is very common in OBIEE which may useful here for all of us. We tried to make understand by image. Hope easy to understand.

1. Download the provided attached RPD either from email or Ticket.

2. Login to EM url as per provided analytics url (Not to login Analytics URL) with biadmin user.
Ex: https://hostname:port/em
Here, users may give you Analytics url such as https://hostname:port/analytics but we always use “em” url as mentioned above.

3. In left Hand-side, follow below navigations:
1. Bussiness Intelegence -->  2. Coreapplication -->

Right Hand-side
3. Deployement --> Repository  -->  4. Lock n Edit (above) -->

5. Browse -->  Choose file --> 6. Password --> 7. Confirm Password  -->8.  Apply -->

9. Activate Changes (At top where we select “Lock and Edit” option, now there will be “Activate Changes”) -->

10. Availability (At top) -->Then you see below as “Stop all”, “Start all” or “Restart” --> 11. Stop All --> 12. Start All.

Sometimes, you may get issue or ora-alert which may be almost time like “out of time” which may ignorable. But just cross check all the services should be UP and Running.

Sometimes, If Start all and Stop all not working then you can try either start/stop the services one by one or you can use “Restart” option.

Some more useful links:
Thanks...