Monday, February 7, 2011

Invalid Temporary Destination Error!!

When loads get high, sometimes, there are errors such as Invalid Temporary destination encountered
The tibjms.jar file is located in SWDIR/jmslib/ems. The checksum for the old version of tibjms.jar is as follows:

$ cksum SWDIR/jmslib/ems/tibjms.jar
1042607223 279905 SWDIR/jmslib/ems/tibjms.jar

If the checksum of the output is as above, you need to update it to the version used in BW services. The steps are as follows:

 Stop iProcess
 Backup the original file in SWDIR/jmslib/ems/tibjms.jar by renaming it to tibjms.jar.OriginalTechPlugin
 Overwrite the current file with the relevant tibjms.jar
 Start iProcess

Please review the tibjms.jar version by running the checksum and proceed accordingly.

SAL Session Timeout Value

Incase users are getting error after certain time accessing the system, sometime, there is an error stating that maximum user encountered.

In $SWDIR/seo/data/swentobjsv.cfg, there is a parameter called “SALSessionTimeout”. By default, this is set as 0, which disable the session timeout for inactive SAL sessions.

Initially we can recommend using atleast 900 (15 MINUTES for SALSessionTimeout). This value may vary based on the workload.

Segmentation Fault!!

In IPE version 10.6.x (Linux) , I have faced the segmentation fault error for so many times. Which happens when nscd thread is hung.

When attempting to startup iProcess Engine, either through swstart or failover script, it failed with “Segmentation fault” error. IProcess rely on the underlying mechanism for authentication. It is a known issue that sometimes, the nscd process hung and prevented iProcess Engine from starting up.

To resolve this, get the OS Admin to restart the nscd process and try again. We strongly recommend restarting the “nscd” daemon on periodically.

Index Rebuild Script for IPE database!!

For iProcess engine DB maintenance , you can schedule the Index rebuiding script on periodic basis.

Check the Index space before rebuilding
select sum(bytes)/1024/1024,segment_name from dba_segments
where tablespace_name='Data_Tablespace_Name'
and segment_type='INDEX' group by segment_name;

Rebuild the IndexDECLARE
cursor c_index IS
SELECT index_name
FROM all_indexes"
WHERE index_name not like '%AQ%'"
and tablespace_name = 'Data_Tablespace_Name';

BEGIN
FOR idx_Rec in c_index LOOP
EXECUTE IMMEDIATE 'alter index '||idx_rec.index_name||' rebuild online';
END LOOP;
END;
/

Check the status of Index Rebuild
select object_name,last_ddl_time from user_objects where OBJECT_TYPE='INDEX' order by last_ddl_time;

Check the Index space after rebuilding
select sum(bytes)/1024/1024,segment_name from dba_segments
where tablespace_name='Data_Tablespace_Name'
and segment_type='INDEX' group by segment_name;

Note : Ensure that index rebuild is not happening on AQ tables and AQ indexes.

Followers