User guide
7.1.2.4 Determining Server Type
During the startup of the server associated with the Oracle SQL/Services JDBC dispatcher,
the type of the server to startup also needs to be determined.
The server type will be used by the dispatcher to determine the appropriate JDBC JAR file to
use when invoking the server. The server type will also used to determine other server
attributes that have to be set for a successful instantiation of a server process.
The dispatcher will use the PORT_ID to try to identify the appropriate JDBC server type to
start.
There are three types of Oracle JDBC for Rdb servers recognized by Oracle SQL/Services:
• POOL - a pool server i.e. type="RdbThinSrvPool"
• MP - a multi-process server i.e. type="RdbThinSrvMP"
• STD - a standard thin server i.e. type="RdbThinSrv"
When the dispatcher determines the server type, the following steps are used :
1. If the logical name RDB$JDBC_SQSTYPE_<port> exists, it is translated to provide
the server type. The translated logical name must be one of the valid server types as
shown above.
2. If the logical name does not exist the server type will be POOL
Note:
As the dispatcher cannot currently use the server name to determine the server type, it is
important that this logical name be correctly setup if the type of the server to start is not a
POOL server i.e. type="RdbThinSrvPool:. If this is not correctly set the wrong JDBC JAR
file may be used and the server may fail to start correctly. The log files associated with the
server, usually written to the directory RDB$JDBC_LOGS will show the start-up failure and
the reason for the failure.
Example
1
Logical name not defined:
$ show log RDB$JDBC_SQSTYPE_1888
%SHOW-S-NOTRAN, no translation for logical name RDB$JDBC_SQSTYPE_1888
$ MCR SQLSRV_MANAGE71
SQLSRV> CONNECT SERVER;
SQLSRV> CREATE DISPATCHER JDBC_DISP NETWORK_PORT TCPIP
PORT_ID 1888 PROTOCOL JDBC;
This will create a server with type
RdbThinSrvPool.
Example
2
Logical name defined:
101