on 10-14-2015 3:36 PM
Hi, I am trying to help troubleshoot an issue our developers are having with connection between Linux Redhat servers and IQ16 on Windows. They are running many jobs written in C and some of them are consistently failing with the connections terminating. They are receiving errors Operating-system error (29), DB-Library error(20004) and Net-Library operation terminated due to disconnect.
They say the error occurs when they execute dbcancel function in the C code.
Any thoughts?
Thank you,
Hi
Here are short description of this error from Manual.
When error is shown, any other messages in iqmsg or sqltrace file?
--------------------------------------------------------------------
Appendix B: DB-Library Error Messages
20004
Symbolic constant
- SYBEREAD
Message text
- Read from the server failed.
Possible cause
- Internal I/O error
Action/solution
- Contact Sybase Technical Support.
Additional information
Versions
- All
----------------------------------------------------------------------
If you want to get more detail information, you need to add the following switch for debugging purpose.
This switch "-z" displays diagnostic communication messages, and other messages, for troubleshooting purposes. Information is logged to standard output in the srvlog file.
Here are steps to test.
1. specify the following switch in cfg file (need to restart IQ)
-z //display debugging information
-zr ALL or SQL //Enables request-level logging of operations.
2. Run program again
3. TDS debugging information is shown in srvlog
[Caution]
- This should only be used when tracking problems.
- SUPPRESS_TDS_DEBUGGING restricts the debugging information about TDS that appears in the server window.
==
Gi-Sung Jang
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi, I enabled those switches and the client ran his job 7 times with 7 failures. At each failure time this was recorded in the log:
I. 10/22 09:45:28 0000000000 Cancellation request received: SA connHandle: 211 SA connID: 9 IQ connID: 0000001345 User: Library
I didn't see any errors or warnings, just these cancellation requests.
(p.s. I can't seem to copy and paste text in these editors, I am [stuck] using IE 11)
Are you using DB-LIB or CT-LIB? DB-LIB is deprecated and should not be used.
Try using CT-LIB and see how that goes. IQ may just not be happy with the way the DB-LIB is sending the cancel command.
Also, ensure that you are only sending 1 protocol down the connection. e.g. do not mix DB-LIB (CT-LIB) with the native IQ cmdseq protocol on the same connection.
If you use CT-LIB, you can also configure the ocs.cfg file used on the client side to avoid setting options like network timeouts - which could be the issue here.
Is anything running virtualized?
Chris
User | Count |
---|---|
87 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.