2.2.3.144 RebuildResults

The RebuildResults element is an optional child element of the Options element in Search command requests that forces the server to rebuild the search folder that corresponds to a given query.

All elements referenced in this section are defined in the Search namespace.

Command request/response

Parent elements

Child elements

Data type

Number allowed

Search command request (section 2.2.1.16)

Options (section 2.2.3.125.5)

None

None

0...1 (optional)

The RebuildResults element is an empty tag element, meaning it has no value or data type. It is distinguished only by the presence or absence of the <RebuildResults/> tag.

The result of including more than one RebuildResults element in a Search command request is undefined. The server MAY return a protocol status error in response to such a command request.

The search results (that is, the result set) are stored in a search folder on the server. This way, when a client comes back with the same query but a new row range, rows are pulled from the result set that is currently stored in the search folder. The entire result set does not have to be rebuilt.

The search folder remains unchanged until the client does one of the following to update the result set:

§ Sends a Search request, specifying a new query. In this case, the search folder is automatically rebuilt. The RebuildResults node does not have to be included.

§ Sends a Search request that includes the RebuildResults node. In this case, the server is forced to rebuild the search folder

If a new item is added, the item does not appear in the result set until the result set is updated. If an item is deleted, the server will filter the deleted item out of the result set.

The client SHOULD send a new Search request with the given query and include the RebuildResults option every few days to ensure accurate results for that query.

Protocol Versions

The following table specifies the protocol versions that support this element. The client indicates the protocol version being used by setting either the MS-ASProtocolVersion header, as specified in [MS-ASHTTP] section 2.2.1.1.2.6, or the Protocol version field, as specified in [MS-ASHTTP] section 2.2.1.1.1.1, in the request.

Protocol version

Element support

2.5

12.0

Yes

12.1

Yes

14.0

Yes

14.1

Yes

16.0

Yes

16.1

Yes