Skip to content

Commit 739f042

Browse files
authored
[Cosmos] hotfix: replace sproc/trigger/udf request body invalid (Azure#23076)
* popping serverScript for backend * Update CHANGELOG.md
1 parent a596137 commit 739f042

File tree

3 files changed

+7
-6
lines changed

3 files changed

+7
-6
lines changed

sdk/cosmos/azure-cosmos/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
consistency level of the user's cosmos account setting on initialization if not passed during client initialization.
1111
This change will impact client application in terms of RUs and latency. Users relying on default `Session` consistency will need to pass it explicitly if their account consistency is different than `Session`.
1212
Please see [Consistency Levels in Azure Cosmos DB](https://docs.microsoft.com/azure/cosmos-db/consistency-levels) for more details.
13+
- Fixed invalid request body being sent when passing in `serverScript` body parameter to replace operations for trigger, sproc and udf resources.
1314

1415
### 4.3.0b2 (2022-01-25)
1516

sdk/cosmos/azure-cosmos/azure/cosmos/_cosmos_client_connection.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1764,7 +1764,7 @@ def ReplaceTrigger(self, trigger_link, trigger, options=None, **kwargs):
17641764
CosmosClientConnection.__ValidateResource(trigger)
17651765
trigger = trigger.copy()
17661766
if trigger.get("serverScript"):
1767-
trigger["body"] = str(trigger["serverScript"])
1767+
trigger["body"] = str(trigger.pop("serverScript", ""))
17681768
elif trigger.get("body"):
17691769
trigger["body"] = str(trigger["body"])
17701770

@@ -1814,7 +1814,7 @@ def ReplaceUserDefinedFunction(self, udf_link, udf, options=None, **kwargs):
18141814
CosmosClientConnection.__ValidateResource(udf)
18151815
udf = udf.copy()
18161816
if udf.get("serverScript"):
1817-
udf["body"] = str(udf["serverScript"])
1817+
udf["body"] = str(udf.pop("serverScript", ""))
18181818
elif udf.get("body"):
18191819
udf["body"] = str(udf["body"])
18201820

@@ -1898,7 +1898,7 @@ def ReplaceStoredProcedure(self, sproc_link, sproc, options=None, **kwargs):
18981898
CosmosClientConnection.__ValidateResource(sproc)
18991899
sproc = sproc.copy()
19001900
if sproc.get("serverScript"):
1901-
sproc["body"] = str(sproc["serverScript"])
1901+
sproc["body"] = str(sproc.pop("serverScript", ""))
19021902
elif sproc.get("body"):
19031903
sproc["body"] = str(sproc["body"])
19041904

sdk/cosmos/azure-cosmos/azure/cosmos/aio/_cosmos_client_connection_async.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1076,7 +1076,7 @@ async def ReplaceUserDefinedFunction(self, udf_link, udf, options=None, **kwargs
10761076
CosmosClientConnection.__ValidateResource(udf)
10771077
udf = udf.copy()
10781078
if udf.get("serverScript"):
1079-
udf["body"] = str(udf["serverScript"])
1079+
udf["body"] = str(udf.pop("serverScript", ""))
10801080
elif udf.get("body"):
10811081
udf["body"] = str(udf["body"])
10821082

@@ -1105,7 +1105,7 @@ async def ReplaceTrigger(self, trigger_link, trigger, options=None, **kwargs):
11051105
CosmosClientConnection.__ValidateResource(trigger)
11061106
trigger = trigger.copy()
11071107
if trigger.get("serverScript"):
1108-
trigger["body"] = str(trigger["serverScript"])
1108+
trigger["body"] = str(trigger.pop("serverScript", ""))
11091109
elif trigger.get("body"):
11101110
trigger["body"] = str(trigger["body"])
11111111

@@ -1187,7 +1187,7 @@ async def ReplaceStoredProcedure(self, sproc_link, sproc, options=None, **kwargs
11871187
CosmosClientConnection.__ValidateResource(sproc)
11881188
sproc = sproc.copy()
11891189
if sproc.get("serverScript"):
1190-
sproc["body"] = str(sproc["serverScript"])
1190+
sproc["body"] = str(sproc.pop("serverScript", ""))
11911191
elif sproc.get("body"):
11921192
sproc["body"] = str(sproc["body"])
11931193

0 commit comments

Comments
 (0)