Azure / Azure/azure-functions-java-worker
ServiceBus support with partition and duplicate detection
- 主要言語
- Java
- スター
- 103
- フォーク
- 74
- 平均マージ
- 4日 8時間
- マージ済み PR(30日)
- 2
説明
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 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
コントリビューションガイド
調査の方向性
再現された QueueTrigger 関数の @ServiceBusTopicOutput バインディングと、報告された Service Bus 例外から始めます。重複検出が有効になっているパーティション分割されたエンティティ向けに、Java worker が送信 Message をどのように作成するかを追跡します。提供された再現手順が、期待されるパーティション分割および重複検出の動作を維持したまま、失敗しなくなれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- azure, java
- 領域
- backend, distributed-systems
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100