From 37f83652e472f4d0195cce26c64d1d88ba6318e3 Mon Sep 17 00:00:00 2001 From: Andrew Feldman Date: Thu, 9 Apr 2020 12:20:10 -0700 Subject: [PATCH 1/2] Reproduced M issue --- .../async/SampleCRUDQuickstartAsync.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/main/java/com/azure/cosmos/examples/crudquickstart/async/SampleCRUDQuickstartAsync.java b/src/main/java/com/azure/cosmos/examples/crudquickstart/async/SampleCRUDQuickstartAsync.java index eead774..e9fcfc3 100644 --- a/src/main/java/com/azure/cosmos/examples/crudquickstart/async/SampleCRUDQuickstartAsync.java +++ b/src/main/java/com/azure/cosmos/examples/crudquickstart/async/SampleCRUDQuickstartAsync.java @@ -20,6 +20,7 @@ import com.azure.cosmos.models.CosmosAsyncDatabaseResponse; import com.azure.cosmos.models.CosmosAsyncItemResponse; import com.azure.cosmos.models.CosmosContainerProperties; +import com.azure.cosmos.models.CosmosContainerRequestOptions; import com.azure.cosmos.models.FeedOptions; import com.azure.cosmos.models.PartitionKey; import com.google.common.collect.Lists; @@ -165,6 +166,22 @@ private void createContainerIfNotExists() throws Exception { }).block(); // + + //Modify existing container + + + Mono propertiesReplace = container.replace(containerProperties, new CosmosContainerRequestOptions()); + propertiesReplace.flatMap(containerResponse -> { + logger.info("setupContainer(): Container " + container.getId() + " in " + database.getId() + + "has been updated with it's new properties."); + return Mono.empty(); + }).onErrorResume((exception) -> { + logger.error("setupContainer(): Unable to update properties for container " + containerProperties.getId() + + " in database " + database.getId() + + ". e: " + exception.getLocalizedMessage()); + return Mono.empty(); + }).block(); + } private void createFamilies(Flux families) throws Exception { From fff179d24e9abb594fca22f25fa8017d9c73cb68 Mon Sep 17 00:00:00 2001 From: Kushagra Thapar Date: Thu, 9 Apr 2020 18:13:45 -0700 Subject: [PATCH 2/2] Updated code with cosmos container replace operation --- .../async/SampleCRUDQuickstartAsync.java | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/azure/cosmos/examples/crudquickstart/async/SampleCRUDQuickstartAsync.java b/src/main/java/com/azure/cosmos/examples/crudquickstart/async/SampleCRUDQuickstartAsync.java index e9fcfc3..81298b5 100644 --- a/src/main/java/com/azure/cosmos/examples/crudquickstart/async/SampleCRUDQuickstartAsync.java +++ b/src/main/java/com/azure/cosmos/examples/crudquickstart/async/SampleCRUDQuickstartAsync.java @@ -159,24 +159,19 @@ private void createContainerIfNotExists() throws Exception { Mono containerIfNotExists = database.createContainerIfNotExists(containerProperties, 400); // Create container with 400 RU/s - containerIfNotExists.flatMap(containerResponse -> { - container = containerResponse.getContainer(); - logger.info("Checking container " + container.getId() + " completed!\n"); - return Mono.empty(); - }).block(); - + CosmosAsyncContainerResponse cosmosContainerResponse = containerIfNotExists.block(); + container = cosmosContainerResponse.getContainer(); // //Modify existing container - - + containerProperties = cosmosContainerResponse.getProperties(); Mono propertiesReplace = container.replace(containerProperties, new CosmosContainerRequestOptions()); propertiesReplace.flatMap(containerResponse -> { logger.info("setupContainer(): Container " + container.getId() + " in " + database.getId() + "has been updated with it's new properties."); return Mono.empty(); }).onErrorResume((exception) -> { - logger.error("setupContainer(): Unable to update properties for container " + containerProperties.getId() + + logger.error("setupContainer(): Unable to update properties for container " + container.getId() + " in database " + database.getId() + ". e: " + exception.getLocalizedMessage()); return Mono.empty();