public override Task ExecuteStreamQuery(IndexQueryServerSide query, DocumentsOperationContext documentsContext, HttpResponse response, IStreamDocumentQueryResultWriter writer, OperationCancelToken token) { using (var result = new StreamDocumentQueryResult(response, writer)) { documentsContext.OpenReadTransaction(); FillCountOfResultsAndIndexEtag(result, query.Metadata, documentsContext); ExecuteCollectionQuery(result, query, query.Metadata.CollectionName, documentsContext, token.Token); } return(Task.CompletedTask); }
public Task ExecuteStream(HttpResponse response, BlittableJsonTextWriter writer, string dynamicIndexName, IndexQueryServerSide query) { string collection; var index = MatchIndex(dynamicIndexName, query, false, out collection); if (index == null) { using (var result = new StreamDocumentQueryResult(response, writer, _context)) ExecuteCollectionQuery(result, query, collection); return(Task.CompletedTask); } return(index.StreamQuery(response, writer, query, _context, _token)); }
public override Task ExecuteStreamQuery(IndexQueryServerSide query, DocumentsOperationContext documentsContext, HttpResponse response, IStreamQueryResultWriter<Document> writer, OperationCancelToken token) { var result = new StreamDocumentQueryResult(response, writer, token); documentsContext.OpenReadTransaction(); FillCountOfResultsAndIndexEtag(result, query.Metadata, documentsContext); var collection = GetCollectionName(query.Metadata.CollectionName, out var indexName); using (QueryRunner.MarkQueryAsRunning(indexName, query, token)) { result.IndexName = indexName; ExecuteCollectionQuery(result, query, collection, documentsContext, token.Token); result.Flush(); return Task.CompletedTask; } }
public override async Task ExecuteStreamQuery(IndexQueryServerSide query, QueryOperationContext queryContext, HttpResponse response, IStreamQueryResultWriter <Document> writer, OperationCancelToken token) { var result = new StreamDocumentQueryResult(response, writer, token); using (queryContext.OpenReadTransaction()) { FillCountOfResultsAndIndexEtag(result, query.Metadata, queryContext); var collection = GetCollectionName(query.Metadata.CollectionName, out var indexName); using (QueryRunner.MarkQueryAsRunning(indexName, query, token, true)) { result.IndexName = indexName; await ExecuteCollectionQueryAsync(result, query, collection, queryContext, pulseReadingTransaction : true, token.Token); result.Flush(); } } }
public async Task ExecuteStream(HttpResponse response, BlittableJsonTextWriter writer, IndexQueryServerSide query) { var tuple = await MatchIndex(query, false); var index = tuple.Index; var collection = tuple.Collection; if (index == null) { using (var result = new StreamDocumentQueryResult(response, writer, _context)) { _context.OpenReadTransaction(); FillCountOfResultsAndIndexEtag(result, collection); ExecuteCollectionQuery(result, query, collection); } return; } await index.StreamQuery(response, writer, query, _context, _token); }