FIX: Error message when you synchronize a database or manually run sp_replcmds after you perform partial updates on a varbinary(max) column in SQL Server 2008: "The rowset does not contain any column with offset -1."

Article translations Article translations
Article ID: 971136 - View products that this article applies to.
Microsoft distributes Microsoft SQL Server 2008 fixes as one downloadable file. Because the fixes are cumulative, each new release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 fix release.
Expand all | Collapse all

On This Page

SYMPTOMS

Consider the following scenario:
  • You have a computer that is running Microsoft SQL Server 2008.
  • You have a table that contains a varbinary(max) column.
  • You set up a replication on the table.
  • You perform partial updates on the column.
In this scenario, when you synchronize the database or manually run the sp_replcmds stored procedure, you may receive the following error message:
Msg 18821, Level 16, State 4, Procedure sp_replcmds, Line 1
The rowset does not contain any column with offset -1. Back up the publication database and contact Customer Support Services.
Msg 18805, Level 16, State 1, Procedure sp_replcmds, Line 1
The Log-Scan Process failed to construct a replicated command from log sequence number (LSN) {000002a9:0000118a:003b}. Back up the publication database and contact Customer Support Services.

If you run the following query, you may find that the LOP_DELETE_ROWS and the LOP_INSERT_ROWS operations on the base row from the partial update are missing:
select * from fn_dblog(null, null) where Description='replicate'

CAUSE

When partial updates are performed on a varbinary(max) column, SQL Server does not force an update on the base row. However, for replication, the expected behavior is that the server forces an update on the base row.

RESOLUTION

Cumulative update information

SQL Server 2008

The fix for this issue was first released in Cumulative Update 6. For more information about how to obtain this cumulative update package for SQL Server 2008, click the following article number to view the article in the Microsoft Knowledge Base:
971490 Cumulative update package 6 for SQL Server 2008
Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
956909 The SQL Server 2008 builds that were released after SQL Server 2008 was released

SQL Server 2008 Service Pack 1

The fix for this issue was first released in Cumulative Update 3 for SQL Server 2008 Service Pack 1. For more information about this cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:
971491 Cumulative update package 3 for SQL Server 2008 Service Pack 1
Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 fix release. Microsoft recommends that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
970365 The SQL Server 2008 builds that were released after SQL Server 2008 Service Pack 1 was released
Microsoft SQL Server 2008 hotfixes are created for specific SQL Server service packs. You must apply a SQL Server 2008 Service Pack 1 hotfix to an installation of SQL Server 2008 Service Pack 1. By default, any hotfix that is provided in a SQL Server service pack is included in the next SQL Server service pack.

Hotfix information

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.

If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
http://support.microsoft.com/contactus/?ws=support
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

You must have SQL Server 2008 Service Pack 1 installed before you apply this hotfix.

Restart information

You do not have to restart the computer after you apply this hotfix.

Registry information

You do not have to change the registry.

Hotfix file information

This hotfix contains only those files that are required to correct the issues that this article lists. This hotfix may not contain all the files that you must have to fully update a product to the latest build.

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

32-bit version

SQL Server 2008 Database Services Core Shared
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Distrib.exe2007.100.2721.075,11223-Jun-200912:01x86
Iftsph.dll2007.100.2721.038,24823-Jun-200912:34x86
Logread.exe2007.100.2721.0423,27223-Jun-200913:15x86
Microsoft.sqlserver.sqlenum.dll10.0.2721.01,083,22423-Jun-200913:24x86
Rdistcom.dll2007.100.2721.0651,11223-Jun-200913:51x86
Repldp.dll2007.100.2721.0191,33623-Jun-200913:51x86
Replmerg.exe2007.100.2721.0341,35223-Jun-200913:51x86
Snapshot.exe10.0.2721.013,14423-Jun-200914:58x86
Sql_engine_core_shared_keyfile.dll2007.100.2721.013,67223-Jun-200913:01x86
Sqllogship.exe10.0.2721.096,08823-Jun-200914:59x86
Sqlmergx.dll2007.100.2721.0192,85623-Jun-200914:59x86
SQL Server 2008 Database Services Core Instance
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Databasemailengine.dll10.0.2721.075,60823-Jun-200911:46x86
Databasemailprotocols.dll10.0.2721.042,85623-Jun-200911:46x86
Sql_engine_core_inst_keyfile.dll2007.100.2721.013,67223-Jun-200913:01x86
Sqlaccess.dll2007.100.2721.0405,33623-Jun-200914:58x86
Sqlscriptdowngrade.dll2007.100.2721.014,68023-Jun-200915:00x86
Sqlscriptupgrade.dll2007.100.2721.03,374,44023-Jun-200915:00x86
Sqlservr.exe2007.100.2721.042,728,79223-Jun-200915:00x86
SQL Server 2008 Database Services Common Core
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Microsoft.sqlserver.sqlenum.dll10.0.2721.01,083,22423-Jun-200913:24x86
Msgprox.dll2007.100.2721.0202,08823-Jun-200913:26x86
Replprov.dll2007.100.2721.0575,32023-Jun-200913:51x86
Replrec.dll2007.100.2721.0789,84823-Jun-200913:51x86
Replsub.dll2007.100.2721.0410,96823-Jun-200913:51x86
Sql_common_core_keyfile.dll2007.100.2721.013,67223-Jun-200913:01x86
Xmlsub.dll2007.100.2721.0192,34423-Jun-200915:06x86

x64-based version

SQL Server 2008 Database Services Core Shared
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Distrib.exe2007.100.2721.086,88823-Jun-200916:07x64
Iftsph.dll2007.100.2721.054,63223-Jun-200916:24x64
Logread.exe2007.100.2721.0510,80823-Jun-200916:44x64
Microsoft.sqlserver.sqlenum.dll10.0.2721.01,083,22423-Jun-200913:24x86
Rdistcom.dll2007.100.2721.0789,86423-Jun-200917:07x64
Repldp.dll2007.100.2721.0191,33623-Jun-200913:51x86
Repldp.dll2007.100.2721.0229,72023-Jun-200917:07x64
Replmerg.exe2007.100.2721.0408,42423-Jun-200917:08x64
Snapshot.exe10.0.2721.013,14423-Jun-200914:58x86
Snapshot.exe10.0.2721.013,14423-Jun-200917:52x86
Sql_engine_core_shared_keyfile.dll2007.100.2721.014,16823-Jun-200916:37x64
Sqllogship.exe10.0.2721.096,08823-Jun-200917:53x86
Sqlmergx.dll2007.100.2721.0229,22423-Jun-200917:53x64
SQL Server 2008 Database Services Core Instance
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Databasemailengine.dll10.0.2721.075,60823-Jun-200916:01x86
Databasemailprotocols.dll10.0.2721.042,84023-Jun-200916:01x86
Sql_engine_core_inst_keyfile.dll2007.100.2721.014,16823-Jun-200916:37x64
Sqlaccess.dll2007.100.2721.0411,99223-Jun-200917:52x86
Sqlscriptdowngrade.dll2007.100.2721.015,72023-Jun-200917:54x64
Sqlscriptupgrade.dll2007.100.2721.03,373,92823-Jun-200917:54x64
Sqlservr.exe2007.100.2721.057,894,76023-Jun-200917:54x64
SQL Server 2008 Database Services Common Core
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Microsoft.sqlserver.sqlenum.dll10.0.2721.01,083,22423-Jun-200913:24x86
Microsoft.sqlserver.sqlenum.dll10.0.2721.01,083,22423-Jun-200916:49x86
Msgprox.dll2007.100.2721.0202,08823-Jun-200913:26x86
Msgprox.dll2007.100.2721.0246,10423-Jun-200916:50x64
Replprov.dll2007.100.2721.0575,32023-Jun-200913:51x86
Replprov.dll2007.100.2721.0727,40023-Jun-200917:08x64
Replrec.dll2007.100.2721.0789,84823-Jun-200913:51x86
Replrec.dll2007.100.2721.0976,74423-Jun-200917:08x64
Replsub.dll2007.100.2721.0410,96823-Jun-200913:51x86
Replsub.dll2007.100.2721.0492,39223-Jun-200917:08x64
Sql_common_core_keyfile.dll2007.100.2721.014,16823-Jun-200916:37x64
Xmlsub.dll2007.100.2721.0192,34423-Jun-200915:06x86
Xmlsub.dll2007.100.2721.0308,07223-Jun-200917:58x64

Itanium-architecture version

SQL Server 2008 Database Services Core Shared
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Distrib.exe2007.100.2721.0205,65623-Jun-200917:44ia64
Iftsph.dll2007.100.2721.088,42423-Jun-200918:02ia64
Logread.exe2007.100.2721.01,124,71223-Jun-200918:22ia64
Microsoft.sqlserver.sqlenum.dll10.0.2721.01,083,22423-Jun-200913:24x86
Rdistcom.dll2007.100.2721.01,835,36823-Jun-200918:46ia64
Repldp.dll2007.100.2721.0191,33623-Jun-200913:51x86
Repldp.dll2007.100.2721.0522,60023-Jun-200918:46ia64
Replmerg.exe2007.100.2721.0969,57623-Jun-200918:46ia64
Snapshot.exe10.0.2721.013,14423-Jun-200914:58x86
Snapshot.exe10.0.2721.013,14423-Jun-200919:30x86
Sql_engine_core_shared_keyfile.dll2007.100.2721.019,30423-Jun-200918:15ia64
Sqllogship.exe10.0.2721.096,08823-Jun-200919:31x86
Sqlmergx.dll2007.100.2721.0428,37623-Jun-200919:31ia64
SQL Server 2008 Database Services Core Instance
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Databasemailengine.dll10.0.2721.075,60823-Jun-200917:38x86
Databasemailprotocols.dll10.0.2721.042,84023-Jun-200917:38x86
Sql_engine_core_inst_keyfile.dll2007.100.2721.019,30423-Jun-200918:15ia64
Sqlaccess.dll2007.100.2721.0398,68023-Jun-200919:30x86
Sqlscriptdowngrade.dll2007.100.2721.020,82423-Jun-200919:32ia64
Sqlscriptupgrade.dll2007.100.2721.03,380,05623-Jun-200919:32ia64
Sqlservr.exe2007.100.2721.0111,005,01623-Jun-200919:33ia64
SQL Server 2008 Database Services Common Core
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Microsoft.sqlserver.sqlenum.dll10.0.2721.01,083,22423-Jun-200913:24x86
Microsoft.sqlserver.sqlenum.dll10.0.2721.01,083,24023-Jun-200918:27x86
Msgprox.dll2007.100.2721.0202,08823-Jun-200913:26x86
Msgprox.dll2007.100.2721.0534,37623-Jun-200918:28ia64
Replprov.dll2007.100.2721.0575,32023-Jun-200913:51x86
Replprov.dll2007.100.2721.01,640,80823-Jun-200918:46ia64
Replrec.dll2007.100.2721.0789,84823-Jun-200913:51x86
Replrec.dll2007.100.2721.02,125,16023-Jun-200918:46ia64
Replsub.dll2007.100.2721.0410,96823-Jun-200913:51x86
Replsub.dll2007.100.2721.01,111,91223-Jun-200918:46ia64
Sql_common_core_keyfile.dll2007.100.2721.019,30423-Jun-200918:15ia64
Xmlsub.dll2007.100.2721.0192,34423-Jun-200915:06x86
Xmlsub.dll2007.100.2721.0558,93623-Jun-200919:37ia64

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

REFERENCES

For more information about the Incremental Servicing Model for SQL Server, click the following article number to view the article in the Microsoft Knowledge Base:
935897 An Incremental Servicing Model is available from the SQL Server team to deliver hotfixes for reported problems


For more information about the naming schema for SQL Server updates, click the following article number to view the article in the Microsoft Knowledge Base:
822499 New naming schema for Microsoft SQL Server software update packages


For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates

Properties

Article ID: 971136 - Last Review: November 24, 2009 - Revision: 2.0
APPLIES TO
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Workgroup
Keywords: 
kbsurveynew kbexpertiseadvanced kbqfe kbfix KB971136

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com