Skip to content

Commit c0a728a

Browse files
authored
[SQL] az sql db update: Prevent overwrite of SLO when updating from serverless to provisioned (#32292)
1 parent b50f957 commit c0a728a

File tree

3 files changed

+2329
-2
lines changed

3 files changed

+2329
-2
lines changed

src/azure-cli/azure/cli/command_modules/sql/custom.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ def _is_serverless_slo(sku_name):
176176
Returns True if the sku name is a serverless sku.
177177
'''
178178

179-
return "_S_" in sku_name
179+
return "_S_" in sku_name if sku_name else False
180180

181181

182182
def _get_default_server_version(location_capabilities):
@@ -1898,8 +1898,11 @@ def db_update( # pylint: disable=too-many-locals, too-many-branches
18981898

18991899
# Finding out requesting compute_model
19001900
if not compute_model:
1901+
# Determine compute model from the requested service objective if provided,
1902+
# otherwise infer from the current database SKU
1903+
sku_name_for_compute_model = service_objective if service_objective else instance.sku.name
19011904
compute_model = (
1902-
ComputeModelType.serverless if _is_serverless_slo(instance.sku.name)
1905+
ComputeModelType.serverless if _is_serverless_slo(sku_name_for_compute_model)
19031906
else ComputeModelType.provisioned)
19041907

19051908
# Update sku

0 commit comments

Comments
 (0)