@azure/cosmos
Version:
Microsoft Azure Cosmos DB Service Node.js SDK for NOSQL API
34 lines • 2 kB
TypeScript
import type { ClientContext } from "../ClientContext.js";
import type { PartitionedQueryExecutionInfo } from "../request/ErrorResponse.js";
import type { FeedOptions } from "../request/FeedOptions.js";
import type { DocumentProducer } from "./documentProducer.js";
import type { ExecutionContext } from "./ExecutionContext.js";
import { ParallelQueryExecutionContextBase } from "./parallelQueryExecutionContextBase.js";
import type { Response } from "../request/index.js";
import type { SqlQuerySpec } from "./SqlQuerySpec.js";
/**
* Provides the ParallelQueryExecutionContext.
* This class is capable of handling parallelized queries and derives from ParallelQueryExecutionContextBase.
* @hidden
*/
export declare class ParallelQueryExecutionContext extends ParallelQueryExecutionContextBase implements ExecutionContext {
constructor(clientContext: ClientContext, collectionLink: string, query: string | SqlQuerySpec, options: FeedOptions, partitionedQueryExecutionInfo: PartitionedQueryExecutionInfo, correlatedActivityId: string);
/**
* Fetches all buffered items from producer for parallel processing.
*/
protected fetchFromProducer(producer: DocumentProducer): Promise<Response<any>>;
/**
* Determines if buffered producers should continue to be processed for parallel queries.
* For parallel queries, we process all buffered producers.
* @param _isUnfilledQueueEmpty - Whether the unfilled queue is empty (ignored for parallel queries)
* @hidden
*/
protected shouldProcessBufferedProducers(_isUnfilledQueueEmpty: boolean): boolean;
/**
* Creates a comparator function for sorting document producers in parallel queries.
* Sorts by partition key range minInclusive values, with empty string first,
* then lexicographically. Uses EPK ranges as secondary sort when minInclusive values are identical.
*/
private static createDocumentProducerComparator;
}
//# sourceMappingURL=parallelQueryExecutionContext.d.ts.map