Azure / Azure/azure-documentdb-java
Large sql query crash on partitioned collection
- Dominant language
- Java
- Stars
- 51
- Forks
- 52
- PR merge metrics
- No merged PRs in 30d
Description
For example:
SELECT c.id, c.keywords FROM UserData c WHERE c.id IN (key1, ke2, …., key800)
where the id is the partitioned key when I created the collection with "unlimited" storage capacity
Using documentClient to query the table, it crashes with EXCEPTION_ACCESS_VIOLATION.
Same code works fine if I query a collection that was created with "10GB" limit without any partition.
Here is the exaception details:
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j com.microsoft.azure.documentdb.internal.ServiceJNIWrapper.GetPartitionKeyRangesFromQuery(JLjava/lang/String;[Ljava/lang/String;[IIILjava/lang/StringBuilder;ILcom/microsoft/azure/documentdb/internal/ServiceJNIWrapper$IntWrapper;)J+0
j com.microsoft.azure.documentdb.internal.ServiceJNIWrapper.getSerializedPartitionKeyRangesFromQuery(JLcom/microsoft/azure/documentdb/SqlQuerySpec;Lcom/microsoft/azure/documentdb/PartitionKeyDefinition;)Ljava/lang/String;+218
j com.microsoft.azure.documentdb.internal.ServiceJNIWrapper.getPartitionKeyRangesFromQuery(JLcom/microsoft/azure/documentdb/SqlQuerySpec;Lcom/microsoft/azure/documentdb/PartitionKeyDefinition;)Lcom/microsoft/azure/documentdb/internal/query/PartitionedQueryExecutionInfoInternal;+3
j com.microsoft.azure.documentdb.internal.query.QueryPartitionProvider.getPartitionQueryExcecutionInfo(Lcom/microsoft/azure/documentdb/SqlQuerySpec;Lcom/microsoft/azure/documentdb/PartitionKeyDefinition;)Lcom/microsoft/azure/documentdb/internal/query/PartitionedQueryExecutionInfo;+48
j com.microsoft.azure.documentdb.internal.query.ProxyQueryExecutionContext.(Lcom/microsoft/azure/documentdb/DocumentQueryClientInternal;Lcom/microsoft/azure/documentdb/internal/ResourceType;Ljava/lang/Class;Lcom/microsoft/azure/documentdb/SqlQuerySpec;Lcom/microsoft/azure/documentdb/FeedOptionsBase;Ljava/lang/String;)V+158
j com.microsoft.azure.documentdb.internal.query.QueryExecutionContextFactory.createQueryExecutionContext(Lcom/microsoft/azure/documentdb/DocumentQueryClientInternal;Lcom/microsoft/azure/documentdb/internal/ResourceType;Ljava/lang/Class;Lcom/microsoft/azure/documentdb/SqlQuerySpec;Lcom/microsoft/azure/documentdb/FeedOptionsBase;Ljava/lang/String;)Lcom/microsoft/azure/documentdb/internal/query/QueryExecutionContext;+12
j com.microsoft.azure.documentdb.QueryIterable.createQueryExecutionContext(Lcom/microsoft/azure/documentdb/DocumentClient;Lcom/microsoft/azure/documentdb/internal/ResourceType;Ljava/lang/Class;Ljava/lang/String;Lcom/microsoft/azure/documentdb/SqlQuerySpec;Lcom/microsoft/azure/documentdb/FeedOptionsBase;Ljava/lang/Object;)Lcom/microsoft/azure/documentdb/internal/query/QueryExecutionContext;+70
j com.microsoft.azure.documentdb.QueryIterable.reset()V+30
j com.microsoft.azure.documentdb.QueryIterable.(Lcom/microsoft/azure/documentdb/DocumentClient;Lcom/microsoft/azure/documentdb/internal/ResourceType;Ljava/lang/Class;Ljava/lang/String;Lcom/microsoft/azure/documentdb/SqlQuerySpec;Lcom/microsoft/azure/documentdb/FeedOptionsBase;Ljava/lang/Object;)V+58
j com.microsoft.azure.documentdb.DocumentClient.queryDocuments(Ljava/lang/String;Lcom/microsoft/azure/documentdb/SqlQuerySpec;Lcom/microsoft/azure/documentdb/FeedOptions;Ljava/lang/Object;)Lcom/microsoft/azure/documentdb/FeedResponse;+84
j com.microsoft.azure.documentdb.DocumentClient.queryDocuments(Ljava/lang/String;Ljava/lang/String;Lcom/microsoft/azure/documentdb/FeedOptions;Ljava/lang/Object;)Lcom/microsoft/azure/documentdb/FeedResponse;+48
j com.microsoft.azure.documentdb.DocumentClient.queryDocuments(Ljava/lang/String;Ljava/lang/String;Lcom/microsoft/azure/documentdb/FeedOptions;)Lcom/microsoft/azure/documentdb/FeedResponse;+5
Contributor guide
Assessment
This issue has not been assessed yet.