Microsoft KB Archive/246139

= FIX: BCP Into a TEXT Column May Cause SQL Server to Stop Executing =

Article ID: 246139

Article Last Modified on 3/14/2006

-

APPLIES TO


 * Microsoft SQL Server 7.0 Standard Edition

-



This article was previously published under Q246139



BUG #: 56536 (SQLBUG_70)



SYMPTOMS
If the database log file has a limiting size option, such as a defined MAXSIZE or set FILEGROWTH = 0, and logged extent allocations fill the log during a nonlogged "BCP in" into a table with a TEXT column, the SQL Server process stops executing. There is be a stack dump for each spid, including system spids, written to the errorlog. The errorlog reports a 9002 error and CTRL-C does not stop the BCP command.

Summary of Events  BCP a text file into a table with a table that has a TEXT column in a database where the log is not allowed to grow. The log fills and a 9002 error is written to the errorlog:

Error: 9002, Severity: 17, State: 2

The log file for database '%.*ls' is full. Back up the transaction log for the database to free up some log space.

 The BCP window may stop responding or return with the following and no rows are inserted into the destination table:

1000 rows sent to SQL Server. Total sent: 30000

SQLState = 37000, NativeError = 9002

Error = [Microsoft][ODBC SQL Server Driver][SQL Server]The log file for database '%.*ls' is full. Back up the transaction log for the database to free up some log space.

Error = [Microsoft][ODBC SQL Server Driver][SQL Server]SqlDumpExceptionHandler: Process 7 generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server is terminating this process.

 Stack dumps for every spid are printed to the errorlog. The SQL Server process may stop executing or remain in an unusable state.



WORKAROUND
You can use any one of the following to work around this problem:


 * Force the BCP operation to be logged by making sure that the SELECT INTO/BULK COPY option is turned off for the database.


 * Use the BULK INSERT statement.


 * Try the BCP command using the -b switch to limit the size of the batch.

<div class="status_section">

STATUS
Microsoft has confirmed this to be a problem in SQL Server 7.0. This problem has been corrected in U.S. Service Pack 2 for Microsoft SQL Server 7.0. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

254561 INF: How to Obtain Service Pack 2 for Microsoft SQL Server 7.0 and Microsoft Data Engine (MSDE) 1.0

For more information, contact your primary support provider.

<div class="moreinformation_section">

MORE INFORMATION
You may also encounter this bug if you use Data Transformation Services (DTS) to transfer objects if the specified conditions are met.

Additional query words: access violation AV

Keywords: kbbug kbfix KB246139

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.