Skip Headers

Oracle® Application Server Integration Adapter for VSAM Installation and User's Guide
10g (9.0.4)

Part Number B10457-01
Go To Documentation Library
Home
Go To Product List
Solution Area
Go To Table Of Contents
Contents
Go To Index
Index

Go to previous page Go to next page

6
Troubleshooting the Oracle Application Server Integration Adapter for VSAM

Troubleshooting Oracle Application Server Integration Adapter for VSAM can involve checking both Oracle Application Server ProcessConnect and Oracle Connect for VSAM.

This chapter contains the following sections:

Design-Time Troubleshooting

The most common cause of errors when defining the Oracle Application Server Integration Adapter for VSAM is incorrect definitions in the delivery channel. If you encounter problems during the modeling phase, check the delivery channel definitions.

See Also:

Task: Setting Up the Delivery Channel for details of setting up the delivery channel

The following errors occur during the modeling of interactions, when using a delivery channel that was defined incorrectly.

Specifying the Wrong Adapter Name

The following error occurs when the wrong adapter name is specified in the delivery channel:

Text description of err3.gif follows.

Text description of the illustration err3.gif

Check that the name specified for the adapter is the same as the name specified in the delivery channel.

Specifying the Wrong Workspace Name

The following error occurs when the wrong workspace name is specified in the delivery channel:

Text description of err3a.gif follows.

Text description of the illustration err3a.gif

Check that the name specified for the adapter is the same as the name specified in the delivery channel.

Specifying the Wrong Machine

The following error occurs when the remote machine is specified incorrectly:

Text description of err1.gif follows.

Text description of the illustration err1.gif

Check the definition of the remote machine in the delivery channel definition.

Specifying the Wrong Port Number

The following error occurs when the port number to connect to is specified incorrectly:

Text description of err2.gif follows.

Text description of the illustration err2.gif

Check the port number defined in the delivery channel. The default port number is 2552.

When the Connection with the OS/390 Machine Is Down

If the delivery channel definitions are correct, the problem is probably with the connection with the OS/390 machine itself. In this case, check that you have a connection to the OS/390 machine in Oracle Studio.

For example you receive a connection timeout error when the daemon is not running on the mainframe:

Text description of err4.gif follows.

Text description of the illustration err4.gif

Troubleshooting the Daemon

A daemon runs on the OS/390 machine. The daemon is responsible for allocating a server process for a client. The daemon resides in a single address space and is executed as a started task.

The daemon authenticates clients, authorizes requests for a server process within a certain server workspace and provides the clients with the required servers. When a client requests a connection, the daemon allocates a server process to handle this connection, and refers the client to the allocated process. This may be a new process (dedicated to this client) or an already-started process. Further communication between the client session and the server process is direct and does not involve the daemon. The daemon is notified when the connection ends and the process is either killed or remains for use by another client

The daemon supports multiple server configurations called workspaces. Each workspace defines accessible data sources, applications, environment settings, security requirements and server allocation rules. The allocation of servers by the daemon is based on the workspace that the client uses to access the data source. Thus, a client can access a data source using one workspace, where a server process is allocated from an existing pool of servers, or the client can access a data source using a different workspace, where a new server process is allocated for each client request.

The daemon loads configuration settings such as various operational parameters as well as the list of workspaces accessible through the daemon.

See Also:

Appendix D, "Daemon Configuration Settings" for details about the configuration settings

Troubleshooting the daemon and the communication between Oracle Application Server ProcessConnect and Oracle Connect for VSAM is performed using Oracle Studio to monitor the daemon and server activity and control what happens to the daemon and server processes.

This section contains the following sections:

Starting the Daemon

If for any reason you shut down the daemon, as described in "Shutting Down the Daemon", you can restart the daemon as described in the following task.


Note:

The daemon is started on the OS/390 machine only. It cannot be started remotely using Oracle Studio.


Task: Starting the Daemon

Activate INSTROOT.USERLIB(ATTDAEMN) as a started task to invoke the daemon. For example, in the SDSF screen enter the following:

'/s ATTDAEMN'

INSTROOT is the high-level qualifier where Oracle Connect for VSAM is installed.

See Also:

"Starting the Daemon" for details about the ATTDAEMN JCL

Shutting Down the Daemon

If you need to shut down the daemon for any reason (for example, you want to re-IPL the system), use Oracle Studio.

  1. On the machine where Oracle Studio is installed, from the Start menu, choose Start > Programs > Oracle > Studio > Studio.

  2. Right-click the machine defined in "Configuring Oracle Connect for VSAM" in the Configuration Explorer and choose Open Runtime Perspective from the popup menu.

  3. In the Runtime Explorer, right-click the machine and choose Shutdown Daemon from the popup menu.

Monitoring the Daemon During Runtime

Use Oracle Studio to monitor the daemon during runtime.

  1. On the machine where Oracle Studio is installed, from the Start menu, choose Start > Programs > Oracle > Studio > Studio.

  2. Right-click the machine defined in "Configuring Oracle Connect for VSAM" in the Configuration Explorer and choose Open Runtime Perspective from the popup menu.

You can manage the daemon by right-clicking the relevant node: daemon, workspace or server process.

Daemon (Machine) Options

Right-click the daemon to display the options available for it, including the ability to display the daemon log.

The following options are available at the machine level:

Workspace Options

Right-click a workspace to display the options available for the workspace, including the ability to display the workspace log.

The following options are available at the workspace level:

Server Options

Right-click a server to display the options available for the server, including the ability to display the server log.

The following options are available at the server level:

Daemon Logs

Oracle Connect for VSAM produces a number of logs that you can use to troubleshoot problems. The daemon manages the following logs:

The Runtime Manager perspective of Oracle Studio provides a monitor for these logs.

Display the required log by right-clicking the level you want (daemon, workspace or server) and choosing the View Log option.

The Daemon Log Monitor

The daemon log displays activity between clients and the daemon, including clients logging in and logging out from the daemon.

Text description of log_1.gif follows.

Text description of the illustration log_1.gif

You can change the level of logging by clicking the Update Monitor button on the toolbar. The following levels of logging are available:

none - The log displays who has logged in and out from the daemon.

error - The log displays who has logged in and out from the daemon and any errors that have been generated.

debug - The log displays who has logged in and out from the daemon, any errors that have been generated and any tracing that has been specified in the daemon configuration.

See Also:

"Daemon Logging"

Text description of log_3.gif follows.

Text description of the illustration log_3.gif

The Workspace Log Monitor

The workspace log displays information about the workspace being used by the client.

You can change the level of logging by clicking the Update Monitor button on the toolbar. The following levels of logging are available:

none - The log displays who has connected and disconnected from the server process.

error - The log displays who has connected and disconnected from the server process and any errors that have been generated.

debug - The log displays who has connected and disconnected from the server process, any errors that have been generated and any tracing that has been specified in the daemon configuration.

See Also:

"WS Logging" for details

The Server Log Monitor

The server log displays activity between clients and the server process used by that client to handle the client request.

Text description of log_2.gif follows.

Text description of the illustration log_2.gif

You can change the level of logging by clicking the Update Monitor button on the toolbar. The following levels of logging are available:

none - The log displays who has connected and disconnected from the server process.

error - The log displays who has connected and disconnected from the server process and any errors that have been generated.

debug - The log displays who has connected and disconnected from the server process, any errors that have been generated and any tracing that has been specified in the daemon configuration.

See Also:

"WS Logging" for details

The following table describes the log monitor toolbar buttons and their functionality.

Table 6-1  Log Monitor Toolbar Buttons
Button Name Function

Text description of resume.gif follows.

Text description of the illustration resume.gif

Resume

Resumes monitoring the machine after the monitor has been suspended.

This button toggles with the suspend button.

Text description of suspend.gif follows.

Text description of the illustration suspend.gif

Suspend

Suspends the monitor.

This button toggles with the resume button.

Text description of update.gif follows.

Text description of the illustration update.gif

Update Monitor

Updates the information being monitored.

Text description of saveas.gif follows.

Text description of the illustration saveas.gif

Save as

Enables specifying a name and location for saving the log.

Text description of clear.gif follows.

Text description of the illustration clear.gif

Clear view

Clears the monitor view.

Text description of menu.gif follows.

Text description of the illustration menu.gif

Menu

Displays a menu with the options available using the buttons.

Resolving Communication Errors

When Oracle Studio disconnects from the OS/390 machine, the machine is displayed in Oracle Studio with an X in a red circle. If this situation occurs, try to access the machine later.

The following table describes the various scenarios that may exist when Oracle Application Server ProcessConnect disconnects from the OS/390 machine.

Table 6-2  Scenarios When a Client Is Disconnected
Scenario Idle (Not Processing a Client Request) Processing a Client Request

Explicit Disconnect

(client explicitly closes connection or client program terminates)

The server is immediately notified of the disconnect and either becomes available for use by another client or terminates (if it is not reusable).

The server does not know that the client has disconnected and continues processing. When processing completes, the server tries to reply to the client and immediately gets an error that the connection was lost. The server either becomes available for use by another client or terminates (if it is not reusable).

Abrupt Disconnect

(client closed without proper shutdown or client system hanged and communication disconnected)

The server does not know that the client has disconnected and remains in the idle state.

After timing out based on whichever comes first of the value for the client idle timeout daemon workspace parameter or the TCP/IP KEEPALIVE parameter, the server is notified of the disconnect and either becomes available for use by another client or terminates (if it is not reusable).

The server does not know that the client has disconnected and continues processing. When processing completes, the server tries to reply to the client. After an interval (typically several minutes, depending on the TCP/IP configuration), during which the TCP/IP subsystem retries sending the message to the client, the server assumes that the client is dead and notifies the server that the connection has been closed. The server either becomes available for use by another client or terminates (if it is not reusable).

To troubleshoot client/server communication problems, you need to be familiar with the following:

Resolving Specific Errors

The following error messages relate to errors received from Oracle Connect.

C007: Server initialization failed.

Cause: The daemon failed to start its network service.

Action: Check the processes being run on the system to see whether another daemon or program is using the port specified in the delivery channel for the adapter.

Action: Check the TCP/IP subsystem on the current machine by trying to ping it or run ftp or telnet to or from it.

Action: Check whether the daemon has privileges to use the TCP/IP services on the current machine with the port specified in the delivery channel for the adapter.

C008: Setting server event handler failed.

Cause: Internal error.

Action: Contact Oracle Support Services.

C009: IRPCD process has been terminated by user request.

Cause: This message is informational only. The daemon successfully shut down.

Action: No action required.

C00A: Application %s not found.

Cause: The requested workspace does not exist.

Action: Check that the workspace defined in the delivery channel is also defined in the daemon configuration on the OS/390 machine. Use the Status option in the Runtime Manager perspective.

C00B: Invalid IRPCD client context.

Cause: A non-Oracle Connect legacy adapter program is trying to connect to the daemon.

Action: Check the processes and kill the relevant process with a system command.

C00C: Daemon request requires a server login.

Cause: A non-Oracle Connect legacy adapter server or program was trying to use a daemon service reserved for Oracle Connect for VSAM servers.

Action: Check the processes and kill the relevant process with a system command.

C00D: Daemon request requires a client login.

Cause: The requested daemon requires a valid client login, which was not supplied.

Action: Reissue the command and specify a username/password.

Action: Edit the user profile in Oracle Studio to specify a valid username and password for the OS/390 machine.

See Also:

"Setting Up Runtime User Access to the IBM OS/390 Machine" for details

C00E: Daemon request requires an administrator login.

Cause: The requested daemon service requires an administrative login.

Action: Edit the daemon security in Oracle Studio to specify a valid administrator username and password.

See Also:

"Daemon Security" for details

C00F: Anonymous client logins are not allowed.

Cause: The daemon is configured to require a valid username and password, which were not supplied.

Action: Enable anonymous client access in daemon security in Oracle Studio.

See Also:

"Daemon Security" for details

Action: Edit the user profile in Oracle Studio to specify a valid username and password for the OS/390 machine.

See Also:

"Setting Up Runtime User Access to the IBM OS/390 Machine" for details

C010: Anonymous server logins are not allowed.

Cause: Internal error.

Action: Contact Oracle Support Services.

C011: Client has already timed out.

Cause: A server process was started on behalf of a client and the client has timed out before the server completed its startup.

Action: Increase the Connect timeout value for the server workspace in the WS Info. section of the daemon configuration.

See Also:

"WS Info." for details

C012: Invalid username/password.

Cause: Invalid username/password supplied when logging on to the daemon.

Action: See the daemon log file for the reason that the username/password were not accepted.

Action: Edit the user profile in Oracle Studio to specify a valid username and password for the OS/390 machine.

See Also:

"Setting Up Runtime User Access to the IBM OS/390 Machine" for details

Action: Make sure the daemon is started from an APF-authorized account that is allowed to check for system usernames and passwords.

C014: Client connection limit reached - try later.

Cause: The maximum number of server processes for the workspace has been reached, and none of the active servers could accept the client connection.

Action: Increase the number of sub-tasks per address space in the WS Server section of the daemon configuration.

See Also:

"WS Server" for details

Action: Try running the command later.

C015: Failed to start server process.

Cause: The Oracle Connect for VSAM daemon failed to start a server process or the started server failed upon starting up.

Action: See the daemon and server log files for the reason the server did not start. For example, you might receive an message with a reason specified in the log file similar to the following: [C015] Failed to start NAVIGATOR server process: No server account name defined for anonymous client; code: -1601: SQL code: 0

Action: If you use impersonation, check the user profile on the client. Also see C069.


To set impersonation:

APF authorize all the steplibs in the server script on OS/390 machine. For example:

setprog... ada622-volume adavol
       CICS.CICS.SDFHEXCI - p390dx
       INSTROOT.load - 111111
       INSTROOT.loadaut - 111111

INSTROOT is the high level qualifier where Oracle Connect for VSAM is installed.

In the WS Security tab of the Navigator workspace under the daemon node in the Configuration perspective, check Use specific workspace account the and clear the Workspace account field of all values.


C016: Unexpected server state.

Cause: Internal error.

Action: Contact Oracle Support Services.

C017: Active daemon clients exist. Shutdown canceled.

Cause: One or more clients are still connected to the daemon.

Action: Wait until all the clients log off the daemon and then retry the shutdown operation.

C019: Request is not granted because someone else is locking it.

Cause: A request to lock a resource managed by the daemon was denied because another user has locked the resource.

Action: Wait for the other user to release the resource.

C01A: Lock %s not found.

Cause: A request to free a resource was denied because the caller did not lock that resource (for example, another user shut down the daemon you are working with).

Action: Contact Oracle Support Services.

C01B: Unexpected error in %s.

Cause: Internal error.

Action: Contact Oracle Support Services.

C01C: Cannot update configuration without _APPLICATIONS lock.

Action: Contact Oracle Support Services.

C01D: Need to lock the application first.

Cause: Internal error.

Action: Contact Oracle Support Services.

C01F: Cannot set configuration of a deleted application.

Cause: Internal error.

Action: Contact Oracle Support Services.

C020: Failed in looking up host name (gethostname())

Cause: Cannot connect to the remote machine.

Action: Check that the name specified for the machine in the delivery channel is correct.

Action: Check that a domain name server (DNS) is available to look up the host name.

Action: Check the TCP/IP subsystem on the machine by trying to ping it or run ftp or telnet to or from it.

C021: Required variable %s not found

Cause: An environment variable required by the Oracle Connect for VSAM server was not defined when the server started up.

Action: Check whether the startup script makes any changes to the environment variables used by Oracle Connect for VSAM.

Action: Check whether the system-defined environment size is sufficiently large for Oracle Connect for VSAM.

C022: Server failed to connect and register with the daemon.

Cause: An Oracle Connect for VSAM server started by the daemon was not able to connect or register back with the daemon.

Action: Try to connect again.

Action: Increase the Connect timeout value for the server workspace in the WS Info. section of the daemon configuration.

See Also:

"WS Info." for details

Action: Check that the startup script for the workspace launches the correct version of Oracle Connect for VSAM.

Action: Increase the number of sub-tasks per address space in the WS Server section of the daemon configuration.

See Also:

"WS Server" for details

C023: Call made to unregistered module %d.

Cause: Internal error.

Action: Contact Oracle Support Services.

C024: Failed to create a socket.

Cause: An error occurred within the TCP/IP subsystem.

Action: Check whether you have sufficient system privileges.

Action: Check the TCP/IP subsystem on the machine by trying to ping it or run ftp or telnet to or from it.

C025: Failed to set socket option %s

Cause: An error occurred within the TCP/IP subsystem.

Action: Check whether you have sufficient system privileges.

Action: Check the TCP/IP subsystem on the machine by trying to ping it or run ftp or telnet to or from it.

C026: Failed to bind server to port %s

Cause: An Oracle Connect for VSAM server or daemon was not able to bind to the specified port.

Action: Check whether another program is holding the port that was specified in port specified in the delivery channel for the adapter.

Action: Check whether you have sufficient system privileges.

C027: Cannot create TCP service for %s

Cause: An error occurred within the TCP/IP subsystem

Action: Check the TCP/IP subsystem on the machine by trying to ping it or run ftp or telnet to or from it.

C028: Unable to register (%s, %d, tcp)

Cause: This error may happen when a portmapper is used (host:a) but the portmapper is not available.

Action: Enable the portmapper.

Action: Avoid using the portmapper (by not using ":a" when starting the daemon).

C029: Failed to create a server thread

Cause: Internal error.

Action: Contact Oracle Support Services.

C02A: Server thread failed to start

Cause: Internal error.

Action: Contact Oracle Support Services.

C02B: Stopping the %s server - no client

Cause: A server that was started by the Oracle Connect for VSAM daemon to service a client did not get a client connection request within one minute. The server terminates.

Action: In most cases, the client was terminated by a user request, so no specific action is required.

Action: If no client can connect to the server, it may be that the server has multiple network cards and the Oracle Connect for VSAM daemon is not aware of this. In this case, start the daemon with an IP address.

C02C: Unexpected event - a termination signal intercepted

Cause: Internal error.

Action: Contact Oracle Support Services.

C02D: Modified transport, context unknown/lost

Cause: Internal error.

Action: Contact Oracle Support Services.

C02E: Call made to non-existing procedure %d

Cause: This error typically is caused by a client of a newer version calling an old server.

Action: Verify that the client and server are using the same version of Oracle Connect for VSAM.

C02F: Corrupted arguments passed to procedure

Cause: Internal error.

Action: Contact Oracle Support Services.

C030: Unable to free arguments for %s() of %s

Cause: Internal error.

Action: Contact Oracle Support Services.

C031: Cannot register a non-module RPC %s

Cause: Internal error.

Action: Contact Oracle Support Services.

C032: An IRPCD program is required

Cause: Internal error.

Action: Contact Oracle Support Services.

C033: An IRPCD super-server is required for module events

Cause: Internal error.

Action: Contact Oracle Support Services.

C034: An invalid super-server module ID was specified, %d

Cause: Internal error.

Action: Contact Oracle Support Services.

C035: Out of memory

Cause: Not enough memory to service a client request.

Action: Increase process memory quota and/or add memory to the system.

C036: Failed to register RPC procedure module %s

Cause: Internal error.

Action: Contact Oracle Support Services.

C037: Failed to register an invalid RPC procedure number %x

Cause: Internal error.

Action: Contact Oracle Support Services.

C038: Cannot re-register RPC procedure number %x

Cause: Internal error.

Action: Contact Oracle Support Services.

C042: Remote call to %s failed; %s

Cause: Remote call to API failed.

Action: Check the daemon log file.

Action: If necessary, change the level of detail written to the log file to help resolve the problem.

See Also:

"Daemon Logging" for details

C043: Failed to connect to host %s;%s

Cause: The remote host is not correctly defined to Oracle Connect for VSAM or is not working.

Action: Check the remote machine definition in the delivery channel for the adapter.

Action: Check the daemon is up on the OS/390 machine. Use the Status option in the Runtime Manager perspective.

Action: Check the network connection by trying to ping the host machine or run ftp or telnet to or from it.

C045: Failed to create a service thread

Cause: The server failed to create a thread to service a client request.

Action: A system or process quota limit has been exceeded. Either increase the quota or lower the Clients per server limit in the WS Info. section of the daemon configuration.

See Also:

"WS Info." for details

C047: %s out of memory

Cause: Not enough memory was available to Oracle Connect for VSAM to complete a requested operation.

Action: Kill unnecessary processes running on the server.

Action: Add more memory to the system.

Action: Allow the process to use more memory.

Action: Limit the number of processes the daemon may start. If the demand for servers exceeds the number of available servers, clients get a message telling them the maximum number of servers has been reached and asking them to try again later.

C066: Communication error with the server%s

Cause: Connection to the Oracle Connect for VSAM daemon or server failed, or an established session with a server has failed.

Action: Check the remote machine definition in the delivery channel.

Action: Check the daemon is up on the OS/390 machine. Use the Status option in the Runtime Manager perspective.

Action: In case of a network problem, check the network connection by trying to ping the host machine or run ftp or telnet to or from it.

C067: Unexpected error occurred in server function %s

Cause: One of the server functions has exited with an exception (such as an abend, or an Invalid Instruction).

Action: Contact Oracle Support Services.

C068: Fail to login daemon

Cause: The daemon is not running on the server machine.

Action: Use the Status in Oracle Studio Runtime Manager perspective to check whether a daemon is running on the server

Action: Have the system administrator re-install Oracle Connect for VSAM on the server.

C069: Fail to get server

Cause: The Oracle Connect for VSAM daemon on the server machine could not start a server process to serve the client. A separate message provides more detail on why the server process could not start.

Action: There are many possible causes of this error. If the cause is not clear from the related message, see the Oracle Connect for VSAM daemon log file on the server

Action: The resolution to this error is highly dependent on the particular cause. The following are some typical causes and resolutions.

Action: Some process creation quota was exceeded. Either try again later or increase the quota or the other relevant system resources.

Action: The server startup script failed.

Action: The username given is not allowed to use the requested server. Use an authorized username.

Action: A limit on concurrent clients for a server has been reached. Try again later.

Action: If you use impersonation, check the user profile on the client. Also see C015, above.

C06A: Failed to connect to server

Cause: The server assigned to the client did not accept the client connection. A separate message provides more detail about why the server process did not accept the connection.

Action: See the daemon and server log files for the reason that the server was not available to accept its assigned client.

Action: If a multi-threaded server is used and many clients are trying to connect to it at the same time, some may get a Connection Refused error if the TCP/IP request queue fills up.

C06B: Disconnecting from server

Cause: A network failure, or a server machine failure or a server program failure caused the connection to abort. The currently active transaction is aborted as well.

Action: Oracle Connect for VSAM automatically tries to re-establish a connection with a server upon the next SQL command issued against the server. Once the network or machine failure is corrected, the connection to the daemon is re-established automatically.

C070: Server failed to send reply to the client

Cause: Server terminated unexpectedly.

Action: Unless the client was intentionally stopped (for example, using Control-C), contact Oracle Support Services.

C071: Connection to server %s was disconnected. Cursors state was lost.

Cause: Either a network failure, a server machine failure or a server program failure caused the connection to abort. The currently active transaction is aborted as well.

Action: Normally, Oracle Connect for VSAM automatically tries to create a new session with the server upon the next attempt to access the server. If the network and server are accessible, the next operation should succeed. Otherwise, the network and/or server machine should be fixed before connection can be resumed.

Action: In case of a server crash not related to callable user code, contact Oracle support.

C072: Reconnect to server %s

Cause: This is an informational message only. The client has reestablished its connection with the server.

Action: No action is required.

C073: The parameters passed to the admin server are invalid: %s

Cause: Internal error.

Action: Contact Oracle Support Services.

C074: No authorization to perform the requested operation (%s)

Cause: User/account has insufficient privileges.

Action: Grant administrative privileges to the user/account via the Administrator parameter of the Daemon Security or WS Security sections in the daemon configuration.

See Also:

"Daemon Security" or "WS Security" for details

C075: Failed to register daemon in the TCP/IP service table

Cause: Registration of the daemon in the TCP/IP services file has failed.

Action: Check that the account running the daemon has the permissions to update the TCP/IP services file.

E001: Failed in lock/release operation

Cause: A lock or release operation of a global resource has failed. A separate message provides more details. The separate message specifies the cause of this error.

Action: There are various causes for this error, including lack of sufficient privileges or a system resource shortage.


Go to previous page Go to next page
Oracle
Copyright © 2003 Oracle Corporation.

All Rights Reserved.
Go To Documentation Library
Home
Go To Product List
Solution Area
Go To Table Of Contents
Contents
Go To Index
Index