-818   THE PRECOMPILER-GENERATED TIMESTAMP x IN THE LOAD MODULE IS DIFFERENT FROM THE BIND TIMESTAMP y BUILT FROM THE DBRM z

Explanation

The timestamp that is stored in the application load module does not match the timestamp that is stored in the plan or package. If the timestamps do not match, the application is not allowed to process the SQL statement.

x
The timestamp that was generated by the precompiler. This timestamp is a DB2® internal timestamp. It does not have an external interpretation.
y
The bind timestamp. This timestamp is a DB2 internal timestamp. It does not have an external interpretation.
z
The name of the database request module (DBRM).

The SQL precompiler places timestamp y in the DBRM and timestamp x in the parameter list in the application program for each SQL statement. At bind time, DB2 stores the DBRM timestamp for run time use. At run time, timestamp x for the SQL statement being processed is compared with timestamp y derived from the DBRM z at bind time. If the two timestamps do not match, the DBRM and the application program were not the result of the same precompile operation.

This problem can occur in the following cases:

  • The application was precompiled, compiled, and linked, but was not bound.
  • The application was precompiled and bound, but was not compiled and linked for the application program.
  • The application was bound using a DBRM that resulted from a different precompile of the application program than that which produced the object module that is linked into the application module.

System action

The statement cannot be processed.

Programmer response

Bind the application again, using the DBRM for the application program that matches the load module.

SQLSTATE

51003