파티션 키가 "flightConversationId"인 콜렉션이 있습니다. nodeJS SDK를 통해이 쿼리를 수행 할 때 PARTITON 키 필드Cosmos DB는 같은 쿼리에서 무작위로 성공하고 실패합니다. 교차하지 않는 파티션이라고 말하면
SELECT * from root WHERE root.flightConversationId="b36d13c0-cbec-11e7-a4ad-8fcedf370f98"
BY 내가 아주 간단한 쿼리를하고있는 중이 야
, 그것은 1 초를 작동하고, 오류가있는 다음을 실패합니다
를Cross partition query is required but disabled. Please set x-ms-documentdb-query-enablecrosspartition to true, specify x-ms-documentdb-partitionkey, or revise your query to avoid this exception.
은 내가 크로스 파티션 쿼리를 가능하게 할 수 실현,하지만 난 크로스 파티션 쿼리가 필요하지 않습니다. 무슨 일 이니?
나는 두 가지 이유로 당신이 옳다고 생각하지 않습니다. 쿼리가 변경되지 않고 가끔씩 작동합니다. 문서에서 파티션 키가 쿼리 자체 일 때 제공 할 필요가 없습니다. 자세한 내용은 https://docs.microsoft.com/en-us/azure/cosmos-db/documentdb-partition-data의 "파티션 된 컨테이너 쿼리"를 참조하십시오. 두 번째 링크는 파티션간에 쿼리 할 때만 키를 제공하면된다는 것을 나타냅니다 난 아니다). 또한 "파티션 된 컨테이너의 데이터를 쿼리 할 때 CDB는 쿼리를 필터에 지정된 파티션 키 값에 해당하는 파티션으로 자동 라우팅합니다." –
x-ms-documentdb-query-enablecrosspartition \t 선택 사항입니다. 단일 파티션 키에 대해 필터하지 않는 쿼리의 경우 true로 설정해야합니다. 단일 파티션 키 값에 대해 필터하는 쿼리는 true로 설정된 경우에도 단일 파티션에 대해서만 실행됩니다. https://docs.microsoft.com/en-us/rest/api/documentdb/querying-documentdb-resources-using-the-rest-api –
그리고 이것이 사실이라면 왜 "또는 귀하의 검색어를 이 예외를 피하십시오 "? –