PRB: RDS May Return E_FAIL Status When Querying Index Server (241794)
The information in this article applies to:
- Remote Data Service for ADO 2.0
- Remote Data Service for ADO 2.01
- Remote Data Service for ADO 2.1
- Remote Data Service for ADO 2.5
- Remote Data Service for ADO 2.6
- Remote Data Service for ADO 2.7
This article was previously published under Q241794 SYMPTOMS
Using the Data Factory in Remote Data Service 2.x to query Index Server for the document titles (DocTitle field) generates one of the following errors:
The data provider or other service returned an E_FAIL status.
Error: -2147217887 (80040e21)
Description: Multiple-step operation generated errors. Check each status value.
Source: Microsoft Cursor Engine
-or when using MDAC 2.6 or 2.7-
Run-time error '-2147267259 (80004005)':
Stream object cannot be read because it is empty, or the current position is at the end of the stream. For non-empty streams, set the current position with the Position property. To determine if a stream is empty, check the Size property.
The same errors will result for any of the Doc* properties or user-defined properties.
CAUSE
Index Server does not hard-code the datatype for DocTitle as a string. Thus the return value is recognized as a VARIANT. Remote Data Service is known to fail when handling the DBTYPE_VARIANT datatype for a property retrieved in OLE DB. Returning such a type with Remote Data Service results in the E_FAIL status error.
RESOLUTION
You can resolve this problem in the following ways:
- Remove DocTitle from the Index Server query.
- Use ActiveX Data Objects (ADO) to query for the DocTitle.
| Modification Type: | Major | Last Reviewed: | 9/30/2003 |
|---|
| Keywords: | kbDatabase kbprb kbRDO KB241794 |
|---|
|