Azure / Azure/azure-functions-java-library
CosmosDB Outputbinding does not work for multiple documents
- Lenguaje dominante
- Java
- Estrellas
- 45
- Forks
- 49
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
We have a simple function which is triggered by event hub and simply forwards messages to cosmosDB using the cosmosDB output binding.
It works well if we receive and forward one message.
However it does not work when we receive and forward a list of messages using Cardinality.many.
Example:
```
public void run(
@EventHubTrigger(
name = "ConsumeDeviceMessages2",
eventHubName = "@eventhub.name@",
connection = "@iothub.connection@",
consumerGroup = CONSUMER_GROUP,
cardinality = Cardinality.MANY)
List messages,
@CosmosDBOutput(
name = "outputDocument",
databaseName = "@cosmosdb.name@",
collectionName = "@cosmosdb.collection.name@",
connectionStringSetting = "@cosmosdb.connection.appsetting@")
OutputBinding> outputDocument,
final ExecutionContext context) {
outputDocument.setValue(messages);
}
```
If this is triggered an error occurs:
`[Error] Executed 'Functions.SaveIotDeviceMessages' (Failed, Id=a845d74b-861a-40e7-a6f2-f5b7032b2cf2)Value cannot be null.Parameter name: document`
Configuration seems pretty basic and works on another function where we forward multiple messages to a queue instead.
Any idea why it is not working for cosmosDB? The documentation states its working for .NET and Javascript, no information about Java though.
Thanks and regards.
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comienza reproduciendo la función de Java con EventHubTrigger Cardinality.MANY y CosmosDBOutput usando OutputBinding>. Traza cómo el binding de salida de CosmosDB para Java gestiona outputDocument.setValue(messages) y compara su comportamiento con el soporte documentado de .NET y JavaScript. Se considera completado cuando se haya identificado si Java admite varios documentos y se haya registrado o corregido el comportamiento resultante.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- databases
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 35/100