public async Task <IAsyncEnumerator <StreamResult <T> > > StreamAsync <T>(IAsyncDocumentQuery <T> query, Reference <QueryHeaderInformation> queryHeaderInformation, CancellationToken token = default(CancellationToken)) { var ravenQueryInspector = ((IRavenQueryInspector)query); var indexQuery = ravenQueryInspector.GetIndexQuery(true); if (indexQuery.WaitForNonStaleResults || indexQuery.WaitForNonStaleResultsAsOfNow) { throw new NotSupportedException( "Since Stream() does not wait for indexing (by design), streaming query with WaitForNonStaleResults is not supported."); } var enumerator = await AsyncDatabaseCommands.StreamQueryAsync(ravenQueryInspector.AsyncIndexQueried, indexQuery, queryHeaderInformation, token).ConfigureAwait(false); var queryOperation = ((AsyncDocumentQuery <T>)query).InitializeQueryOperation(); queryOperation.DisableEntitiesTracking = true; return(new QueryYieldStream <T>(this, enumerator, queryOperation, query, token)); }