How do I avoid contention on DB2 binds?

Document ID : KB000054496
Last Modified Date : 14/02/2018
Show Technical Document Details

Description:

When we have two or more alchemist started tasks processing migrations and when they are processing DB2 Binds, we occasionally get deadlocks on the DB2 Catalog SYSDBASE tablespace for the DB2 subsystem being updated. How can we cause the Binds to serialize across several Alchemist started tasks?

We are using three external PX engines and have multiple DB2 programs and get the following error: DSNT233I DB2P UNSUCCESSFUL BIND FOR ..:.
According to our DBAs, this error occurs when two different processes are trying to bind the same resource at the same time. It appears that two different PX engines are binding the same resource at the same time. Re-releasing the request fixes the error, sometimes multiple times, at least until the bind doesn't hit something else.

Solution:

  1. Ensure that you have fix SU02674 applied.
  2. Use IKJEFT1B. If your PCL is using IKJEFT01, you will need to change it to use IKJEFT1B.
SU02674 DF20564

If DB2 binds are executing simultaneously, the following message
could be issued:

DSNT501I DSNP DSNXA03 RESOURCE UNAVAILABLE

This PTF prevents simultaneous DB2 binds being done by Alchemist. However, it should be noted that this cannot prevent an external batch job from doing a bind at the same time as Alchemist.

(This fix is available on from Support Online on the CA Alchemist Product Page. Use the link for "CA Alchemist 5.3.1 Solutions & Patches" under Recommended Reading. This fix is not available from the Download Center.)