[quoted text, click to view] "Kevin McDonnell [MSFT]" <kevmc@online.microsoft.com> wrote in message
news:Aa$h$mgkEHA.3852@cpmsftngxa10.phx.gbl...
> You can enable ODBC tracing, but it is very verbose. Also, it's not
> timestamped so, it will be hard to match it up with a network trace.
> I'm checking on some additional tracing tools for you.
That will be great.
[quoted text, click to view] > You may want to implement some application level tracing as well.
I've asked the application company if there any hooks for enabling application
level tracing, but there seem to be none :(
In any case, I managed to get the ODBC traces and yes it is very very verbose
(produced 650 MB of data). I will post a portion of the trace where the
error occurs after I respond to your questions.
[quoted text, click to view] > ODBC will initiate a session close or Fin with a Connection Close call.
> There's nothing specific in the ODBC API that would result in a tcp reset
> though.
I figured. I couldn't find anything in there to suggest that either.
[quoted text, click to view] > Is there any hardware between the client machine and the server?
The network config is as follows:
client - <switch> - <router> - frame relay cloud - <router> - <switch> - SQL
server
All LAN connections are 100 Mbps, FR cloud is 384 Kbps. I've monitored all
traffic on the FR link, and there are periodic retransmissions, but otherwise
the link utilization is pretty low.
[quoted text, click to view] > Can you reproduce the same problem in a lab environment?
No - this problem happens only with the remote sites, interestingly. There
are a couple of users for whom this happens on a daily basis (a couple of
times at least) and I have been monitoring them with whatever tools I have.
[quoted text, click to view] > Do you see the tcp reset on the client or on the server?
I see the reset being sent by the client to the server by putting a sniffer
on the wire at the server end. My next step is to put a sniffer on the wire
at the client end as well and see what I can glean.
Now, here is a ODBC trace of the problem occurring. It looks like there is
some disconnect activity, then an SQLExecDirect which fails and then a diag
code indicating the CLF. Any clues from this? There are a couple more
instances where this same error shows up, but nothing to suggest what is
initiating the error. Is it a server disconnect, local TCP/IP problem, or
....?
pfwin 55c-558 EXIT SQLFetch with return code 0 (SQL_SUCCESS)
HSTMT 066FA478
pfwin 55c-558 ENTER SQLFetch
HSTMT 066FA478
pfwin 55c-558 EXIT SQLFetch with return code 0 (SQL_SUCCESS)
HSTMT 066FA478
pfwin 55c-558 ENTER SQLFetch
HSTMT 066FA478
pfwin 55c-558 EXIT SQLFetch with return code 0 (SQL_SUCCESS)
HSTMT 066FA478
pfwin 55c-558 ENTER SQLFetch
HSTMT 066FA478
pfwin 55c-558 EXIT SQLFetch with return code 0 (SQL_SUCCESS)
HSTMT 066FA478
pfwin 55c-558 ENTER SQLFetch
HSTMT 066FA478
pfwin 55c-558 EXIT SQLFetch with return code 0 (SQL_SUCCESS)
HSTMT 066FA478
pfwin 55c-558 ENTER SQLFetch
HSTMT 066FA478
pfwin 55c-558 EXIT SQLFetch with return code 0 (SQL_SUCCESS)
HSTMT 066FA478
pfwin 55c-558 ENTER SQLFetch
HSTMT 066FA478
pfwin 55c-558 EXIT SQLFetch with return code 100
(SQL_NO_DATA_FOUND)
HSTMT 066FA478
pfwin 55c-558 ENTER SQLFreeHandle
SQLSMALLINT 3 <SQL_HANDLE_STMT>
SQLHANDLE 066FA478
pfwin 55c-558 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS)
SQLSMALLINT 3 <SQL_HANDLE_STMT>
SQLHANDLE 066FA478
pfwin 55c-558 ENTER SQLDisconnect
HDBC 066F3BD0
pfwin 55c-558 EXIT SQLDisconnect with return code 0 (SQL_SUCCESS)
HDBC 066F3BD0
pfwin 55c-558 ENTER SQLFreeHandle
SQLSMALLINT 2 <SQL_HANDLE_DBC>
SQLHANDLE 066F3BD0
pfwin 55c-558 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS)
SQLSMALLINT 1 <SQL_HANDLE_ENV>
SQLHANDLE 066F84F8
pfwin 55c-558 ENTER SQLAllocStmt
HDBC 066F1F88
HSTMT * 0012A938
pfwin 55c-558 EXIT SQLAllocStmt with return code 0 (SQL_SUCCESS)
HDBC 066F1F88
HSTMT * 0x0012A938 ( 0x066fa478)
pfwin 55c-558 ENTER SQLSetStmtOption
HSTMT 066FA478
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x00000000
pfwin 55c-558 EXIT SQLSetStmtOption with return code 0
(SQL_SUCCESS)
HSTMT 066FA478
UWORD 0 <SQL_QUERY_TIMEOUT>
SQLPOINTER 0x00000000
pfwin 55c-558 ENTER SQLExecDirect
HSTMT 066FA478
UCHAR * 0x0DADA5F8 [ -3] "DELETE FROM
PTWinTran
s WHERE ((fileid = '06006537ECC') AND ((rectype = 2) OR (rectype = 3)))\ 0"
SDWORD -3
pfwin 55c-558 EXIT SQLExecDirect with return code -1 (SQL_ERROR)
HSTMT 066FA478
UCHAR * 0x0DADA5F8 [ -3] "DELETE FROM
PTWinTran
s WHERE ((fileid = '06006537ECC') AND ((rectype = 2) OR (rectype = 3)))\ 0"
SDWORD -3
DIAG [01000] [Microsoft][ODBC SQL Server Driver][TCP/IP
Sockets]
ConnectionWrite (send()). (10054)
DIAG [08S01] [Microsoft][ODBC SQL Server Driver][TCP/IP
Sockets]
General network error. Check your network documentation. (11)
pfwin 55c-558 ENTER SQLErrorW
HENV 066F1540
HDBC 066F1F88
HSTMT 066FA478
WCHAR * 0x0012A638 (NYI)
SDWORD * 0x0012A8C8
WCHAR * 0x0012A238
SWORD 511
SWORD * 0x0012A8D2
pfwin 55c-558 EXIT SQLErrorW with return code 0 (SQL_SUCCESS)
HENV 066F1540
HDBC 066F1F88
HSTMT 066FA478