I’m hoping someone can help me here because I’ve hit a HUGE issue migrating from SQL Server 2000 to 2005. We just upgrade TEST to SQL 2005 (on Prod we are still 2000). On both I have a linked server pointed to the same Cache database (InterSystems Cache - not a fan, but the vendor uses it).
On PROD everything works fine but on TEST we are seeing a huge issue. On some of the cache tables they under state the actual length of the data to be returned. In turn we are seeing the following error message being returned by SQL Server:
**********************
Msg 7347, Level 16, State 1, Line 1
OLE DB provider 'MSDASQL' for linked server '-X-' returned data that does not match expected data length for column '[MSDASQL].SecurityText'. The (maximum) expected data length is 32, while the returned data length is 35.
**********************
This is apparently tied to inaccurate Meta Data being sent to SQL. I even used Cache Monitor (a tool for quering Cache database) to verify the Meta Data and it does show the Cache database is stating the data will be no longer than 32 (though some of the data returned is of length 35).
Okay, Cache shouldn’t be returning in accurate Meta Data for sure. However, I can’t do anything about this. I can’t make changes on the Cache side due to vendor related matters.
With all that said, SQL 2000 (we have the latest SP) has no issue with the bad Meta Data, it just ignores it. So I did some checking around and found out that SQL 2000 had the same issue. Here is a link to the KB article (http://support.microsoft.com/kb/920930) with the exact error message we are seeing for the exact situation. There is a fix but for SQL 2000.
I also found others are running into the same issue with linked servers on 2005. Here a link to one of a few I found (http://www.sqlservercentral.com/Forums/Topic473552-146-1.aspx).
Does anyone have any ideas as to what I can/should do? I have no options on the Cache side so I have to find some way to make SQL Server 2005 behave as 2000 did when running into this issue.
This is a show stopper for our production environment because we pull so much information out from the vendor database over the linked server. So I am desperate.
Thank you in advance for any help or feedback you can provide.
Steve