XYPRO Technology Corporation
21
Proprietary and Confidential
Chapter 5. Resolving Issues that can
Occur when Installing the
XDP Library
The client interface to XDP is implemented as a run time library that can be attached to
an application’s programs or can be bound directly into an application’s programs by a
supplied macro. The XDP library code is then able to “intercept” calls to selected
Guardian I/O procedures such as WRITEX. This means that the XDP library will have
procedures in it with the same names as the Guardian procedures it intercepts, and
the application’s calls to those Guardian procedures will actually call the XDP
procedures instead.
It is also possible to combine the XDP library with other run time libraries.
There are certain error conditions that can occur, and the library attaching macro is
unable to proceed. One of the more common error conditions is when procedure
names in the existing application code or run time libraries conflict with XDP procedure
names. A good example of this is intercept libraries from other vendors that most likely
intercept the same procedures that XDP needs to intercept.
The macro that is supplied with XDP to attach the XDP library code to application
programs is able to combine the XDP run time library with certain other well-known
intercept libraries such as the Oracle GoldenGate replication library. This creates a
new run time library that can then be attached to the application program.
The macro cannot resolve the situation where there are procedure name conflicts
between the XDP library and the application code or run time library the XDP library is
being combined with. In this case you must carefully examine why there is a procedure
name conflict and resolve the problem manually. The steps you will have to take to
resolve the issue depend on the type of installation you are attempting (attaching or
binding XDP into a program, or attempting to combine multiple run time libraries and
then attaching the resulting run time library to a program), and whether your
application runs as a classic object code 100 application or as a native object code
800 application. The macro emits an error message when it encounters a situation that
it cannot handle that corresponds to a list of error message in
page 27.