book
Article ID: KB0082512
calendar_today
Updated On:
Description
My client (JBBC or ODBC) on Windows has stopped connecting to my TDV server (on Linux)
Issue/Introduction
My client (JDBC or ODBC) on Windows has stopped connecting to my TDV server (on Linux)
Resolution
Below is a troubleshooting checklist. For purposes of illustration, let us assume that the TDV server is running at www.redwood.com:9400
(1) Are you able to connect to the TDV server using a browser?
Is your browser able to connect to http://www.redwood.com:9400?
If the answer is YES: then there may be a firewall or a network issue that is blocking traffic on ports 9401 and 9403.
Note: The server uses
Base port (i.e. 9400) for HTTP communication
Base Port + 1 (i.e. 9401) for JDBC and ODBC
Base Port + 3 (i.e. 9403) for secure (SSL) JDBC communication
If the answer is NO: go to step 2
(2) Is the TDV server listening at the port that your client is connecting to?
First, determine which port the client is connecting to (is it connecting to 9401, or to 9403)?
Next, run netstat on the Linux machine to check the status of the port. Does the netstat output show that that the port is listening for requests (see the example below)?
Example
netstat -an | grep 9401
TCP 0.0.0.0:9403 0.0.0.0:0 LISTENING
TCP [::]:9403 [::]:0 LISTENING
If the port is not listening, then the server may be busy. In that case, try connecting via Studio, and inspecting the running requests (under Studio >> Manager >> Requests) to see if you are running any requests that are placing a load on the server, slowing down its response time.
(3) If netstat shows that the server is listening, then try connecting using a client running on Linux
A Linux machine will typically have 2 utilities named wget and curl. Check whether you can connect to the port using one of these utilities. You are looking for any kind of acknowledgement from TDV (something other than a "cannot connect" message). Even a "Bad command" message is O.K. See the examples below.
Example: wget
wget http://www.redwood.com:9401
--2018-02-21 10:18:53-- http://www.redwood.com:9401
Resolving localhost... ::1, 127.0.0.1
Connecting to localhost|::1|:9511... connected.
HTTP request sent, awaiting response... 200 No headers, assuming HTTP/0.9
Example: curl
curl http://www.redwood.com:9401
error -1 -1 Bad command '"GET" from remote IP
(4) If the above does not help, get a Thread Dump and send it to Technical Support for analysis
To get a thread dump:
(i) ps -elf | grep ServerBoot
This will give you the PID of the CIS server.
Example
0 S support 17816 17773 0 80 0 - 1208423 futex_ 2017 ? 03:20:05 /opt/Cisco_Systems/CIS_704_Anil/jre/bin/java ...<snip>... com.compositesw.base.boot.ServerBoot run
==> The Server PID is : 17816
(ii) kill -3 <PID>
Example
kill -3 17816
(iii) Send us the cs_server.out* log.
This will contain a thread dump (you can find the dump by looking in the log for "Full thread dump")
cs_server.out:Full thread dump Java HotSpot(TM) 64-Bit Server VM (24.71-b01 mixed mode):