Azure / Azure/data-api-builder
DAB - Cosmos Engine : "message": "id field is mandatory", even-though id is provided as a parameter
- Dominant language
- C#
- Stars
- 1.5k
- Forks
- 370
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 8
Description
When I try to update a document , why do we need to pass id twice ?
updateHero (_partitionKeyValue: "testsajee1", id: "", item:{ id:"testsajee1", alter_ego:"hero", first_appearance:"cosmos", publisher:"azure", superhero:"test"} ){
```
{
"errors": [
{
"message": "id field is mandatory",
"locations": [
{
"line": 2,
"column": 3
}
],
"path": [
"updateHero"
],
"extensions": {
"message": "id field is mandatory",
"stackTrace": " at Azure.DataGateway.Service.Resolvers.CosmosMutationEngine.HandleUpdateAsync(IDictionary`2 queryArgs, Container container) in /Users/sajeetharan/Documents/Cosmos/Hawaii/Hawaii-engine/DataGateway.Service/Resolvers/CosmosMutationEngine.cs:line 128\n at Azure.DataGateway.Service.Resolvers.CosmosMutationEngine.ExecuteAsync(IDictionary`2 queryArgs, CosmosOperationMetadata resolver) in /Users/sajeetharan/Documents/Cosmos/Hawaii/Hawaii-engine/DataGateway.Service/Resolvers/CosmosMutationEngine.cs:line 58\n at Azure.DataGateway.Service.Resolvers.CosmosMutationEngine.ExecuteAsync(IMiddlewareContext context, IDictionary`2 parameters) in /Users/sajeetharan/Documents/Cosmos/Hawaii/Hawaii-engine/DataGateway.Service/Resolvers/CosmosMutationEngine.cs:line 245\n at Azure.DataGateway.Service.Services.ResolverMiddleware.InvokeAsync(IMiddlewareContext context) in /Users/sajeetharan/Documents/Cosmos/Hawaii/Hawaii-engine/DataGateway.Service/Services/ResolverMiddleware.cs:line 55\n at HotChocolate.Utilities.MiddlewareCompiler`1.ExpressionHelper.AwaitTaskHelper(Task task)\n at HotChocolate.Execution.Processing.Tasks.ResolverTask.ExecuteResolverPipelineAsync(CancellationToken cancellationToken)\n at HotChocolate.Execution.Processing.Tasks.ResolverTask.TryExecuteAsync(CancellationToken cancellationToken)"
}
}
],
"data": {
"updateHero": null
}
}
```
since "id" is already a part of the object? why would the user need to pass id as a separate field?
Contributor guide
Assessment
This issue has not been assessed yet.