FIX: Problems with Network Error During dbwritetext/dbmoretextID: Q186916
|
A failed network read during a dbwritetext or dbmoretext transfer of text
or image data may result in the server attempting to allocate more space
than is required to store the information.
Depending on the amount of space in the database, this may result in an
unexpected error 1105 and unexpected disk activity, as well as resulting in
the server using many more locks than would typically be expected for this
operation.
Even though the network read fails, there will not be any messages in the
SQL Server errorlog indicating this failure.
When transferring text or image data by means of dbwritetext or dbmoretext,
the client initially sends across a text pointer and time stamp for the row
that it will be modifying. After the server has validated the text pointer
and time stamp, it requests that the client send across the number of bytes
that it will be transferring in this operation. After the server reads this
value, it attempts to allocate the necessary space, and when this has been
done, it starts reading the text or image data that the client is sending.
A failure of the network read when attempting to obtain the number of bytes
to be transferred results in an uninitialized local variable, and no error
is generated on this failure. Due to the uninitialized variable, the server
may attempt to allocate an arbitrary amount of space, resulting in the
behavior described above.
Microsoft has confirmed this to be a problem in SQL Server
version 6.5. This problem has been corrected in U.S. Service Pack 5a
for Microsoft SQL Server version 6.5. For information about
downloading and installing the latest SQL Server Service Pack, see
http://support.microsoft.com/support/sql/.
For more information, contact your primary support provider.
When this problem occurs, you may also notice writelog timeouts and bufwait
timeouts, because the disk activity is typically extremely high while SQL Server attempts to allocate the requested space.
The timeout messages you may see will be similar to the following:
writelog: timeout, dbid 14, dbstat2 0x100002(0x100002), q1/q2 1/9,
owner=128, waittype=0
bufwait: timeout, BUF_IO, bp 0x1cb0420, pg 0x22c, stat 0x801004/0x6,
obj 0xffffcce0, bpss 0xe43490
Additional query words: sp sp5textpointer timestamp out outs
Keywords : kbbug6.50 kbfix6.50.SP5
Version : winnt:6.5
Platform : winnt
Issue type : kbbug
Last Reviewed: April 3, 1999