Skip to content

Fixing failing Full text policy test cases

326e794
Select commit
Loading
Failed to load commit list.
Merged

Fix full text policy test assertions to accommodate backend V2 read behavior #45688

Fixing failing Full text policy test cases
326e794
Select commit
Loading
Failed to load commit list.
Azure Pipelines / python - cosmos - tests succeeded Mar 14, 2026 in 47m 32s

Build #20260314.1 had test failures

Details

Tests

  • Failed: 2 (0.04%)
  • Passed: 4,760 (97.78%)
  • Other: 106 (2.18%)
  • Total: 4,868

Annotations

Check failure on line 1 in test_get_resource_with_dictionary_and_object

See this annotation in the file changed.

@azure-pipelines azure-pipelines / python - cosmos - tests

test_get_resource_with_dictionary_and_object

azure.cosmos.exceptions.CosmosResourceNotFoundError: (NotFound) Entity with the specified id does not exist in the system. More info: https://aka.ms/cosmosdb-tsg-not-found, 
RequestStartTime: 2026-03-14T17:04:23.4576887Z, RequestEndTime: 2026-03-14T17:04:23.4585937Z,  Number of regions attempted:1
{"systemHistory":[{"dateUtc":"2026-03-14T17:03:27.6855381Z","cpu":0.178,"memory":638735920.000,"threadInfo":{"isThreadStarving":"False","threadWaitIntervalInMs":0.11,"availableThreads":32765,"minThreads":128,"maxThreads":32767},"numberOfOpenTcpConnection":387},{"dateUtc":"2026-03-14T17:03:37.6862114Z","cpu":0.269,"memory":638746280.000,"threadInfo":{"isThreadStarving":"False","threadWaitIntervalInMs":0.0268,"availableThreads":32765,"minThreads":128,"maxThreads":32767},"numberOfOpenTcpConnection":390},{"dateUtc":"2026-03-14T17:03:47.6962986Z","cpu":0.124,"memory":638754236.000,"threadInfo":{"isThreadStarving":"False","threadWaitIntervalInMs":0.035,"availableThreads":32765,"minThreads":128,"maxThreads":32767},"numberOfOpenTcpConnection":393},{"dateUtc":"2026-03-14T17:03:57.7063901Z","cpu":0.076,"memory":638758028.000,"threadInfo":{"isThreadStarving":"False","threadWaitIntervalInMs":0.0412,"availableThreads":32763,"minThreads":128,"maxThreads":32767},"numberOfOpenTcpConnection":393},{"dateUtc":"2026-03-14T17:04:07.7073598Z","cpu":0.464,"memory":638810868.000,"threadInfo":{"isThreadStarving":"False","threadWaitIntervalInMs":0.0364,"availableThreads":32765,"minThreads":128,"maxThreads":32767},"numberOfOpenTcpConnection":428},{"dateUtc":"2026-03-14T17:04:17.7168918Z","cpu":0.139,"memory":638814624.000,"threadInfo":{"isThreadStarving":"False","threadWaitIntervalInMs":0.0769,"availableThreads":32765,"minThreads":128,"maxThreads":32767},"numberOfOpenTcpConnection":435}]}
RequestStart: 2026-03-14T17:04:23.4578212Z; ResponseTime: 2026-03-14T17:04:23.4585937Z; StoreResult: StorePhysicalAddress: rntbd://cdb-ms-prod-westus3-be41.documents.azure.com:14312/apps/b4a754e2-efc3-4890-b885-c2fba20447a0/services/c3294a34-b249-457a-ad35-862d43a87870/partitions/0303719d-e4b3-45aa-81b1-d9793e8996b4/replicas/134173728423601479s/, LSN: 13, GlobalCommittedLsn: 13, PartitionKeyRangeId: 2, IsValid: True, StatusCode: 404, SubStatusCode: 0, RequestCharge: 1, ItemLSN: -1, SessionToken: 0#13#6=-1, UsingLocalLSN: True, TransportException: null, BELatencyMs: 0.203, ActivityId: d910580e-008c-4593-b7d1-2ee32bfb14f4, RetryAfterInMs: , globalNRegionCommittedGLSN: -1, ReplicaHealthStatuses: [(port: 14335 | status: Unknown | lkt: 3/14/2026 5:04:21 PM),(port: 14033 | status: Unknown | lkt: 3/14/2026 5:04:21 PM),(port: 14312 | status: Unknown | lkt: 3/14/2026 5:04:21 PM),(port: 14356 | status: Unknown | lkt: 3/14/2026 5:04:21 PM)], TransportRequestTimeline: {"requestTimeline":[{"event": "Created", "startTimeUtc": "2026-03-14T17:04:23.4577437Z", "durationInMs": 0.0147},{"event": "ChannelAcquisitionStarted", "startTimeUtc": "2026-03-14T17:04:23.4577584Z", "durationInMs": 0.0014},{"event": "Pipelined", "startTimeUtc": "2026-03-14T17:04:23.4577598Z", "durationInMs": 0.0548},{"event": "Transit Time", "startTimeUtc": "2026-03-14T17:04:23.4578146Z", "durationInMs": 0.7357},{"event": "Received", "startTimeUtc": "2026-03-14T17:04:23.4585503Z", "durationInMs": 0.0327},{"event": "Completed", "startTimeUtc": "2026-03-14T17:04:23.4585830Z", "durationInMs": 0}],"serviceEndpointStats":{"inflightRequests":1,"openConnections":1},"connectionStats":{"waitforConnectionInit":"False","callsPendingReceive":0,"lastSendAttempt":"2026-03-14T17:04:23.4372559Z","lastSend":"2026-03-14T17:04:23.4372859Z","lastReceive":"2026-03-14T17:04:23.4380675Z"},"requestSizeInBytes":585,"responseMetadataSizeInBytes":151,"responseBodySizeInBytes":84};
 ResourceType: Document, OperationType: Read
, Microsoft.Azure.Documents.Common/2.14.0
Code: NotFound
Message: Entity with the specified id does not exist in the system. More info: https://aka.ms/cosmosdb-tsg-not-found, 
RequestStartTime: 2026-03-14T17:04:23.4576887Z
Raw output
self = <test_crud.TestCRUDOperations testMethod=test_get_resource_with_dictionary_and_object>

    def test_get_resource_with_dictionary_and_object(self):
        created_db = self.databaseForTest
    
        # read database with id
        read_db = self.client.get_database_client(created_db.id)
        self.assertEqual(read_db.id, created_db.id)
    
        # read database with instance
        read_db = self.client.get_database_client(created_db)
        self.assertEqual(read_db.id, created_db.id)
    
        # read database with properties
        read_db = self.client.get_database_client(created_db.read())
        self.assertEqual(read_db.id, created_db.id)
    
        created_container = self.databaseForTest.get_container_client(self.configs.TEST_MULTI_PARTITION_CONTAINER_ID)
    
        # read container with id
        read_container = created_db.get_container_client(created_container.id)
        self.assertEqual(read_container.id, created_container.id)
    
        # read container with instance
        read_container = created_db.get_container_client(created_container)
        self.assertEqual(read_container.id, created_container.id)
    
        # read container with properties
        created_properties = created_container.read()
        read_container = created_db.get_container_client(created_properties)
        self.assertEqual(read_container.id, created_container.id)
    
        created_item = created_container.create_item({'id': '1' + str(uuid.uuid4()), 'pk': 'pk'})
    
        # read item with id
        read_item = created_container.read_item(item=created_item['id'], partition_key=created_item['pk'])
        self.assertEqual(read_item['id'], created_item['id'])
    
        # read item with properties
>       read_item = created_container.read_item(item=created_item, partition_key=created_item['pk'])

tests/test_crud.py:1663: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
../../../.venv/azure-cosmos/.venv_whl/lib/python3.13/site-packages/azure/core/tracing/decorator.py:119: in wrapper_use_tracer
    return func(*args, **kwargs)
../../../.venv/azure-cosmos/.venv_whl/lib/python3.13/site-packages/azure/cosmos/container.py:301: in read_item
    return self.client_connection.ReadItem(document_link=doc_link, options=request_options, **kwargs)
../../../.venv/azure-cosmos/.venv_whl/lib/python3.13/site-packages/azure/cosmos/_cosmos_client_connection.py:1504: in ReadItem
    return self.Read(path, http_constants.ResourceType.Document, document_id, None, options, **kwargs)
../../../.venv/azure-cosmos/.venv_whl/lib/python3.13/site-packages/azure/cosmos/_cosmos_client_connection.py:2948: in Read
    result, last_response_headers = self.__Get(path, request_params, headers, **kwargs)
../../../.venv/azure-cosmos/.venv_whl/lib/python3.13/site-packages/azure/cosmos/_cosmos_client_connection.py:3020: in __Get
    return synchronized_request.SynchronizedRequest(
../../../.venv/azure-cosmos/.venv_whl/lib/python3.13/site-packages/azure/cosmos/_synchronized_request.py:288: in SynchronizedRequest
    return _retry_utility.Execute(
../../../.venv/azure-cosmos/.venv_whl/lib/python3.13/site-packages/azure/cosmos/_retry_utility.py:138: in Execute
    result = ExecuteFunction(function, global_endpoint_manager, *args, **kwargs)
../../../.venv/azure-cosmos/.venv_whl/lib/python3.13/site-packages/azure/cosmos/_retry_utility.py:317: in ExecuteFunction
    return function(*args, **kwargs)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

global_endpoint_manager = <azure.cosmos._global_partition_endpoint_manager_per_partition_automatic_failover._GlobalPartitionEndpointManagerForPerPartitionAutomaticFailover object at 0x7f0d658d2c10>
request_params = <azure.cosmos._request_object.RequestObject object at 0x7f0d6434e210>
connection_policy = <azure.cosmos.documents.ConnectionPolicy object at 0x7f0d659010f0>
pipeline_client = <azure.core._pipeline_client.PipelineClient object a

Check failure on line 1 in test_recovering_only_fails_one_requests_async

See this annotation in the file changed.

@azure-pipelines azure-pipelines / python - cosmos - tests

test_recovering_only_fails_one_requests_async

assert 0 == 1
Raw output
self = <test_per_partition_circuit_breaker_mm_async.TestPerPartitionCircuitBreakerMMAsync object at 0x7f0d661c8cd0>

    async def test_recovering_only_fails_one_requests_async(self):
        error_lambda = lambda r: asyncio.create_task(FaultInjectionTransportAsync.error_after_delay(
            0, CosmosHttpResponseError(
            status_code=502,
            message="Some envoy error.")))
        setup, doc, expected_uri, uri_down, custom_setup, custom_transport, predicate = await self.setup_info(error_lambda)
        fault_injection_container = custom_setup['col']
        for i in range(5):
            with pytest.raises(CosmosHttpResponseError):
                await fault_injection_container.create_item(body=doc)
    
    
        number_of_errors = 0
    
        async def concurrent_upsert():
            nonlocal number_of_errors
            doc = {'id': str(uuid.uuid4()),
                   'pk': PK_VALUE,
                   'name': 'sample document',
                   'key': 'value'}
            try:
                await fault_injection_container.upsert_item(doc)
            except CosmosHttpResponseError as e:
                number_of_errors += 1
    
        # attempt to recover partition
        original_unavailable_time = _partition_health_tracker.INITIAL_UNAVAILABLE_TIME_MS
        _partition_health_tracker.INITIAL_UNAVAILABLE_TIME_MS = 1
        try:
            tasks = []
            for i in range(15):
                tasks.append(concurrent_upsert())
            await asyncio.gather(*tasks)
>           assert number_of_errors == 1
E           assert 0 == 1

tests/test_per_partition_circuit_breaker_mm_async.py:479: AssertionError