Skip to content

Commit f6aeef8

Browse files
committed
Remove duplicate binding data upon detecting capability
1 parent 6bc641f commit f6aeef8

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

src/WebJobs.Script/Rpc/LanguageWorkerChannel.cs

+10-1
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
using System.Collections.Generic;
88
using System.IO;
99
using System.Linq;
10-
using System.Reactive.Concurrency;
1110
using System.Reactive.Linq;
1211
using System.Threading.Tasks;
1312
using System.Threading.Tasks.Dataflow;
13+
using Microsoft.AspNetCore.Http.Internal;
1414
using Microsoft.Azure.WebJobs.Script.Description;
1515
using Microsoft.Azure.WebJobs.Script.Diagnostics;
1616
using Microsoft.Azure.WebJobs.Script.Eventing;
@@ -311,6 +311,10 @@ internal void SendInvocationRequest(ScriptInvocationContext context)
311311
{
312312
if (pair.Value != null)
313313
{
314+
if ((pair.Value is DefaultHttpRequest) && IsTriggerMetadataPopulatedByWorker())
315+
{
316+
continue;
317+
}
314318
invocationRequest.TriggerMetadata.Add(pair.Key, pair.Value.ToRpc(_workerChannelLogger, _workerCapabilities));
315319
}
316320
}
@@ -429,5 +433,10 @@ public void Dispose()
429433
_disposing = true;
430434
Dispose(true);
431435
}
436+
437+
private bool IsTriggerMetadataPopulatedByWorker()
438+
{
439+
return !string.IsNullOrEmpty(_workerCapabilities.GetCapabilityState(LanguageWorkerConstants.RpcHttpTriggerMetadataRemoved));
440+
}
432441
}
433442
}

src/WebJobs.Script/Rpc/LanguageWorkerConstants.cs

+1
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ public static class LanguageWorkerConstants
5252
public const string RawHttpBodyBytes = "RawHttpBodyBytes";
5353
public const string TypedDataCollection = "TypedDataCollection";
5454
public const string RpcHttpBodyOnly = "RpcHttpBodyOnly";
55+
public const string RpcHttpTriggerMetadataRemoved = "RpcHttpTriggerMetadataRemoved";
5556

5657
// Thresholds
5758
public const int WorkerRestartErrorIntervalThresholdInMinutes = 30;

0 commit comments

Comments
 (0)