10/18
7 Troubleshooting OracleAS Adapter for VSAM
Troubleshooting Oracle AS Adapter for VSAM involves checking various definitions and properties in Oracle Connect, including daemon status, workspace options, server parameters, and various system logs.
This chapter contains the following topics:
Troubleshooting the Daemon
Troubleshooting the daemon and the communication between Oracle Application Server and OracleAS Adapter for VSAM is performed using Oracle Studio. It is used to monitor the daemon and server activity and control what happens to the daemon and server processes.
This section contains the following topics:
Starting the Daemon
The daemon is started when OracleAS Adapter for VSAM is installed. In case you have 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 IBM z/OS platform. 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 command:
'/s ATTDAEMN'
Where INSTROOT
is the high-level qualifier where Oracle Connect is installed.
Shutting Down the Daemon
To shut down the daemon use Oracle Studio, as follows:
-
From the Start menu, select Start, Programs, Oracle, and then select Studio.
-
Select the computer defined in Setting Up the IBM z/OS Platform in Oracle Studio.
-
Right-click the computer and select Open Runtime Perspective.
-
In the Runtime Explorer, right-click the computer and select Shutdown Daemon.
Monitoring the Daemon During Run Time
Use the Runtime Manager perspective of Oracle Studio to monitor the daemon during run time.
Perform the following steps:
-
From the Start menu, select Start, Programs, Oracle, and then select Studio.
-
Right-click the computer defined in Setting Up the IBM z/OS Platform in Oracle Studio, and select Open Runtime Perspective.
You can manage the daemon by expanding the relevant node, daemon, workspace or server process, as described in the following sections.
Daemon (Computer) Options
Right-click the daemon to display the options available for it, including the ability to display the daemon log.
The following table lists the available daemon options:
Workspace Options
Right-click a workspace to display the options available for the workspace, including the ability to display the workspace log.
The following table lists the available options:
Server Options
Right-click a server to display the options available for the server, including the ability to display the server log.
The options available at the server level are listed in the following table:
Daemon Logs
Oracle Connect produces several logs that you can use to troubleshoot problems. The daemon manages the following logs:
-
Daemon
-
Workspace
-
Server process
The Runtime Manager perspective of Oracle Studio provides a monitor for these logs as shown in the following figure:
Description of the illustration daemon_log.gif
Display the required log by right-clicking the level you want (daemon, workspace or server) and selecting View Log. Each log is displayed in a different tab. You can flick between logs by clicking the required tab.
The Daemon Log Monitor
The daemon log displays activity between clients and the daemon, including clients logging in and logging out from the daemon.
You can change the level of logging by clicking Properties. 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.
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 Properties. 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.
The Server Log Monitor
The server log displays activity between clients and the server process used by that client to handle the client request.
You can change the level of logging by clicking Properties. 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.
Resolving Communication Errors
When Oracle Studio disconnects from the IBM z/OS computer, the computer is displayed in Oracle Studio with an X in a red circle. If this situation occurs, try to access the computer later.
The following table describes the various scenarios that may exist when Oracle Application Server disconnects from the IBM z/OS computer.
To troubleshoot client/server communication problems, you must be familiar with the following:
-
Daemon configuration settings
-
Oracle Connect security
-
TCP/IP subsystem. Oracle Application Server Adapter for VSAM uses TPC/IP for internal intercomputer communications.
-
System details, such as the account name and password of the administrator account, the IP address of the computers involved and whether a portmapper is being used.
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 oc4j-ra-xml file for the adapter.
-
Action: Check the TCP/IP subsystem on the current computer 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 computer with the port specified in the oc4j-ra-xml file 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 oc4j-ra-xml file is also defined in the daemon configuration on the IBM z/OS platform. Use the Status option in the Runtime Manager perspective.
- C00B: Invalid IRPCD client context.
-
Cause: A non-Oracle Connect program is trying to connect to the daemon.
-
Action: Check the processes and stop the relevant process with a system command.
- C00C: Daemon request requires a server login.
-
Cause: A non-Oracle Connect server or program was trying to use a daemon service reserved for Oracle Connect servers.
-
Action: Check the processes and stop 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 user name and password.
-
Action: Edit the user profile in Oracle Studio to specify a valid user name and password for the IBM z/OS platform.
- 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 user name and password.
- C00F: Anonymous client logins are not allowed.
-
Cause: The daemon is configured to require a valid user name and password, which were not supplied.
-
Action: Enable anonymous client access in daemon security in Oracle Studio.
-
Action: Edit the user profile in Oracle Studio to specify a valid user name and password for the IBM z/OS platform.
- 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. tab of the daemon configuration.
- C012: Invalid username/password.
-
Cause: Invalid user name/password supplied when logging on to the daemon.
-
Action: See the daemon log file because the user name/password were not accepted.
-
Action: Edit the user profile in Oracle Studio to specify a valid user name and password for the IBM z/OS platform.
-
Action: Ensure that the daemon is started from an APF-authorized account that is allowed to check for system user names 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 value of the
Number of sub-tasks
in the WS Server section of the daemon configuration.
-
Action: Try running the command later.
- C015: Failed to start server process.
-
Cause: The Oracle Connect daemon failed to start a server process or the started server failed upon starting up.
-
Action: See the daemon and server logs 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 a z/OS computer. 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 is installed.
In the Security tab of the Navigator workspace, under the daemon node in the Configuration Explorer, select Use specific workspace account 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.
-
Cause: Internal error.
-
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 computer.
-
Action: Check that the name specified for the computer in the oc4j-ra-xml file 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 computer 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 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.
-
Action: Check whether the system-defined environment size is sufficiently large for Oracle Connect.
- C022: Server failed to connect and register with the daemon.
-
Cause: An Oracle Connect 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.
-
Action: Check that the startup script for the workspace launches the correct version of Oracle Connect.
-
Action: Increase the value of the
Set maximum number of servers
and
Maximum
parameter for the Clients per server limit in the WS Server section of the daemon configuration.
- 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 computer 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 computer 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 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 the oc4j-ra-xml file 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 computer 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 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 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.
- 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 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 reregister 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.
- C043: Failed to connect to host %s;%s
-
Cause: The remote host is not correctly defined to Oracle Connect or is not working.
-
Action: Check the remote computer definition in the oc4j-ra-xml file for the adapter.
-
Action: Check that the daemon is up on the z/OS platform. Use the Status option in the Runtime Manager perspective.
-
Action: Check the network connection by trying to ping the host computer 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
field value in the WS Info. section of the daemon configuration.
- C047: %s out of memory
-
Cause: Not enough memory was available to Oracle Connect to complete a requested operation.
-
Action: Terminate 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 daemon or server failed, or an established session with a server has failed.
-
Action: Check the remote computer definition in the weblogic-ra-xml file.
-
Action: Check that the daemon is up on the IBM z/OS platform. 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 computer 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 computer.
-
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 reinstall Oracle Connect on the server.
- C069: Fail to get server
-
Cause: The Oracle Connect daemon on the server computer 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 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 user name.
-
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.
- 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 because the server was not available to accept its assigned client.
- C06B: Disconnecting from server
-
Cause: A network failure, or a server computer failure or a server program failure caused the connection to end. The currently active transaction is also stopped.
-
Action: Oracle Connect automatically tries to reestablish a connection with a server upon the next SQL command issued against the server. Once the network or computer failure is corrected, the connection to the daemon is reestablished 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 computer failure or a server program failure caused the connection to end. The currently active transaction is also stopped.
-
Action: Normally, Oracle Connect automatically tries to create a 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 or server computer should be fixed before connection can be resumed.
-
Action: In case of a server failure not related to callable user code, contact Oracle Support Services.
- 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 using the Administrator parameter of the Daemon Security or WS Security sections in the daemon configuration.
- 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.
- J0006: Operation on already closed connection was requested
-
Cause: A request using a connection that was closed was attempted.
-
Action: Reopen the connection and try again.
- J0028: Internal Error: Unknown XML tag %s
-
Cause: Internal error.
-
Action: Contact Oracle Support Services.
- J0030: Internal Error: Method %s needs to be overwritten
-
Cause: Internal error.
-
Action: Contact Oracle Support Services.
- J0031: Internal Error: Required attribute %s not found in %s verb
-
Cause: Internal error.
-
Action: Contact Oracle Support Services.
- J0032: Internal Error: %s ACP object was returned instead of %s as expected
-
Cause: Internal error.
-
Action: Contact Oracle Support Services.
- J0033: Internal Error: Attempt to work with closed socket
-
Cause: Internal error.
-
Action: Contact Oracle Support Services.
- J0034: Internal Error: corrupted message; %s bytes read instead of %s as expected
-
Cause: XML sent from the client to the server has become corrupted.
-
Action: Check compression settings for XML transferred from the client to the server. If the setting are OK, retry sending the request from the client to the server.
- J0035: Internal Error: Invalid redirection address %s returned by daemon
-
Cause: Internal error.
-
Action: Contact Oracle Support Services.
- J0036: %s: %s
-
Cause: One of the following errors was received from the server: 0 - server.internalError, 1 - client.xmlError, 2 - client.requestError, 3 - client.noActiveConnection, 4 - server.resourceLimit, 5 - server.redirect, 6 - client.noSuchResource, 7 - client.authenticationError, 8 - client.noSuchInteraction, 9 - client.noSuchConnection, 10 - server.notImplemented, 11 - server.xaProtocolError, 12 - server.xaUnknownXID, 13 - server.xaDuplicateXID, 14 - server.xaInvalidArgument, 15 - client.autogenRejected, 16 - server.xaTransactionTooFresh, 17 - server.resourceNotAvailable, 18 - client.authorizationError, 19 - server.configurationError
-
Action: Review the server log file to determine the problem.
- J0037: Internal Error: No ACP response when %s was expected
-
Cause: Internal error.
-
Action: Contact Oracle Support Services.
- J0039: Internal Error: ACP root is not found in the XML
-
Cause: Internal error.
-
Action: Contact Oracle Support Services.
- J0040: Internal Error: Input record is required for interaction %s execution
-
Cause: Internal error.
-
Action: Contact Oracle Support Services.
- J0048: Invalid metadata type %s is passed to %s function
-
Cause: A request for metadata was not fulfilled.
-
Action: Check the validity of the request.
- J0050: Key of the put method must be of type string
-
Cause: In either a GET or PUT operation, the key must be a string.
-
Action: Change the key used in the operation to a valid key.
- J0059: Value %s is invalid for attribute %s
-
Cause: A request for metadata was not fulfilled.
-
Action: Check the validity of the request.
- J0068: Value must be of type string
-
Cause: In a PUT operation, the value must be a string.
-
Action: Change the value used in the operation to a valid value.
- J0069: Value must be of type MappedRecord
-
Cause: In a PUT operation, the value must be a mapped record.
-
Action: Change the value used in the operation to a valid value.
- J0070: Value must be of type MappedRecord[]
-
Cause: In a PUT operation, the value must be mapped record array.
-
Action: Change the value used in the operation to a valid value.
- J0071: Bad key for mapped record, #element or #element[] is required
-
Cause: In a PUT operation, the value must be mapped record array.
-
Action: Change the key used in the record to a valid key.
- J0072: Value must be of type Object[]
-
Cause: In a PUT operation, the value must be mapped record array.
-
Action: Change the value used in the operation to a valid value.
- J0078: In nonpersistent connection and the nonkeep alive encryption is not supported - ignored
-
Cause: Encryption is not supported for nonpersistent connections.
-
Action: There is no action to take. This warning can be ignored.
- J0079: Invalid argument passed to %s - Argument: %s, Value: %s
-
Cause: The value pass.
-
Action: Change the argument used to a number.