azure-functions-java-worker icon indicating copy to clipboard operation
azure-functions-java-worker copied to clipboard

ServiceBus support with partition and duplicate detection

Open VenkataMadana opened this issue 5 years ago • 1 comments

We try to send messages to ServiceBus using functions binding. Bellow Code worked without partitions. But we are facing issues with partition and duplicate detection.

@ServiceBusQueueOutput @ServiceBusTopicOutput

Sample code to reproduce this issue

@FunctionName("QueueTrigger")
	public void run(
			@ServiceBusQueueTrigger(name = "inMessage", queueName = "%sbInputQueue%", connection = "sbconnection") Message inMessage,
			@ServiceBusTopicOutput(name = "topicMessage", topicName = "fx-demo-topic", subscriptionName = "fx-demo-subscription", connection = "sbconnection") OutputBinding<Message> topicMessage,
			final ExecutionContext context) {

		context.getLogger().info("Queue Msg Received " + inMessage.toString());

		topicMessage.setValue(inMessage);

		context.getLogger().info("Java Service Bus Listing Queue trigger executed.");
	}
}

Error message :

System.Private.CoreLib: Exception while executing function: Functions.QueueTrigger. Microsoft.Azure.ServiceBus: Message to a partitioned entity with duplicate detection enabled must have either PartitionKey or MessageId

VenkataMadana avatar Nov 15 '19 04:11 VenkataMadana

hmm what about this issue ? I assume currently in azure functions its not possible to use ServiceBusTopicOutput annotation to put into topic if its partitioned ?

maciejbak85 avatar Jun 27 '22 11:06 maciejbak85