Skip to content

Commit c14e369

Browse files
amarathavaleAmar Athavale
andauthored
Settubg throughput settings on the collections; updating Client configuration (Azure#20107)
Co-authored-by: Amar Athavale <aathaval@linkedin.com>
1 parent 18534e0 commit c14e369

File tree

4 files changed

+11
-15
lines changed

4 files changed

+11
-15
lines changed

sdk/cosmos/azure-cosmos-benchmark/ctl/linkedin/run_benchmark.sh

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -39,13 +39,6 @@ else
3939
collection_name=$ctl_collection
4040
fi
4141

42-
if [ -z "$ctl_collection" ]
43-
then
44-
collection_name="linkedInTestCollection"
45-
else
46-
collection_name=$ctl_collection
47-
fi
48-
4942
if [ -z "$ctl_throughput" ]
5043
then
5144
throughput=100000

sdk/cosmos/azure-cosmos-benchmark/src/main/java/com/azure/cosmos/benchmark/linkedin/AsyncClientFactory.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,15 +97,15 @@ private static DirectConnectionConfig defaultDirectConfig() {
9797
.setConnectTimeout(Duration.ofSeconds(5L)) // Default
9898
.setConnectionEndpointRediscoveryEnabled(true) // Custom
9999
.setIdleEndpointTimeout(Duration.ofHours(1L)) // Default
100-
.setIdleConnectionTimeout(Duration.ofSeconds(60)) // Custom
100+
.setIdleConnectionTimeout(Duration.ofMinutes(5)) // Custom
101101
.setMaxConnectionsPerEndpoint(130) // Default
102102
.setMaxRequestsPerConnection(30); // Default
103103
}
104104

105105
private static GatewayConnectionConfig defaultGatewayConfig() {
106106
return new GatewayConnectionConfig()
107-
.setMaxConnectionPoolSize(3200) // Custom
108-
.setIdleConnectionTimeout(Duration.ofSeconds(60)); // Default
107+
.setMaxConnectionPoolSize(1000) // Default
108+
.setIdleConnectionTimeout(Duration.ofMinutes(5)); // Custom
109109
}
110110

111111
private static ThrottlingRetryOptions defaultThrottlingRetryOptions() {

sdk/cosmos/azure-cosmos-benchmark/src/main/java/com/azure/cosmos/benchmark/linkedin/CollectionResourceManager.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import com.azure.cosmos.benchmark.linkedin.impl.Constants;
1414
import com.azure.cosmos.models.CosmosContainerProperties;
1515
import com.azure.cosmos.models.CosmosContainerResponse;
16+
import com.azure.cosmos.models.ThroughputProperties;
1617
import com.google.common.base.Preconditions;
1718
import java.time.Duration;
1819
import java.util.Optional;
@@ -98,11 +99,15 @@ private void applyDesiredContainerPolicies(final CosmosAsyncContainer container,
9899
private void createContainer(final CosmosAsyncDatabase database,
99100
final String containerName,
100101
final CollectionAttributes collectionAttributes) {
101-
LOGGER.info("Creating container {} in the database {}", containerName, database.getId());
102+
LOGGER.info("Creating container {} in the database {} [throughput = {}]", containerName,
103+
database.getId(),
104+
_configuration.getThroughput());
105+
final ThroughputProperties throughputProperties =
106+
ThroughputProperties.createManualThroughput(_configuration.getThroughput());
102107
final CosmosContainerProperties containerProperties =
103108
new CosmosContainerProperties(containerName, Constants.PARTITION_KEY_PATH)
104109
.setIndexingPolicy(collectionAttributes.indexingPolicy());
105-
database.createContainerIfNotExists(containerProperties)
110+
database.createContainerIfNotExists(containerProperties, throughputProperties)
106111
.block(RESOURCE_CRUD_WAIT_TIME);
107112
}
108113
}

sdk/cosmos/azure-cosmos-benchmark/src/main/java/com/azure/cosmos/benchmark/linkedin/DatabaseResourceManager.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,7 @@ public DatabaseResourceManager(final Configuration configuration,
4747
public void createResources() throws CosmosException {
4848
try {
4949
LOGGER.info("Creating database {} for the ctl workload if one doesn't exist", _configuration.getDatabaseId());
50-
final ThroughputProperties throughputProperties =
51-
ThroughputProperties.createManualThroughput(_configuration.getThroughput());
52-
_client.createDatabaseIfNotExists(_configuration.getDatabaseId(), throughputProperties)
50+
_client.createDatabaseIfNotExists(_configuration.getDatabaseId())
5351
.block(RESOURCE_CRUD_WAIT_TIME);
5452
} catch (CosmosException e) {
5553
LOGGER.error("Exception while creating database {}", _configuration.getDatabaseId(), e);

0 commit comments

Comments
 (0)