Thursday, August 8, 2019

TIMEOUT_BASED_COMMIT_POINT

In Detail:

TIMEOUT_BASED_COMMIT_POINT -->


This message indicates that the Writer has issued an implicit commit to that target.
The Writer issues the timeout based commit because it did not receive any data from the transformations for 60 seconds and thus it commits the records it has.

Can we control the Timeout Period for the Writer?


Yes. The default timeout for the writer is 60 seconds and this can be controlled using the custom property WriterWaitTimeOut. This can be set at the Integration Service Level or at a Session Level.

Also we can try by increasing the valus for these two fields.

Maximum Memory Allowed For Auto Memory Attributes
Maximum Percentage of Total Memory Allowed For Auto Memory Attributes

This will increase the total memory allocated to that session.

Why is the timeout reached?


The Timeout would be reached as there could be a blocking transformation or a slow performing transformation which is not pushing the data to the Target within the Timeout Period.

How to proceed further when we see a Timeout Based Commit?


By this time we know what, why, and when a timeout based commit it reported. Now to find the root cause of who is causing this delay here are some pointers:
  1. Enable CollectPerformanceData option at the session level. This would help us to trace the flow of data in the mapping and find where the data is stuck.
  2. Collect Stack Trace on the pmdtm process so that Informatica Support can check where the process is stuck.
  3. If there are any Cached transformations in the mapping, we might need to look at the I/O. A slow I/O can cause delay in these transformation and result in the Timeout.