• No replies
7 Posts

Pinned topic Issue with the IBM CM API (CMB and DK API) classes

‏2011-12-20T11:26:05Z |
We have incorporated the IBM CM API in our application. There seems to be two issues with the IBM CM APIs work.
We are using token based connection API to connect to IBM CM using trusted logon feature of IBM CM. We are using IBM CM v8.4.2 FP3 on RHEL 5.5 with Oracle 11g in the backend.

1. As per the dklogs of IBM CM, it is evident that the connection creation takes around 1 sec, which is too high for any web application. Is there a better way to create connections if we have to use the trusted logon token based connections.
The log entries are as follows:

The dklogs show the following:

Start time for transaction: 12/08/2011 12:29:25.082 GMT
End time for transaction: 12/08/2011 12:29:33.430 GMT

6 seconds to just fetch 35 records!

Time required for Connection:
Start time: 12/08/2011 12:29:25.119 GMT fec107 T: ?--?-DKDatastoreICM::connect() -> datastore_name = ICMNLSDB, user_name = ICMADMIN
End time: 12/08/2011 12:29:26.548 GMT fec107 T: ?--?-DKDatastoreICM::callSP ICMLOGON, cardinality = n/a, elapsed time = 98 msecs.
Total time: 1.429 seconds!

Where as the ICMSERVER1.log file shows that it takes 25ms for ICMLOGON

ICMPLSLG ICMLOGON 02240 12/08 12:28:43.714 GMT ;08122843694282 ? ICMADMIN 25 msec

Why is there so much delay in getting a single connection?

2. The second issue came up when the profiler screenshots were looked into. The JProfiler screenshots show that for any single invocation, CMBItem.getAttrValue method takes around 33% of the total time required for execution. However, on further analysis, it seems that for the first invocation of CMBItem.getAttrValue takes major amount of time.

Why does it take almost 33% of the total time to execute CMBItem.getAttrValue method?