Azure / Azure/azure-functions-core-tools
Value cannot be null. (Parameter 'provider')
- Dominant language
- C#
- Stars
- 1.5k
- Forks
- 498
- Avg merge
- 5d 4h
- Merged PRs (30d)
- 15
Description
Same thing as #2232
I'm using a docker image you provide
```
2d550b>
2d550b> Azure Functions Core Tools
2d550b> Core Tools Version: 4.0.3971 Commit hash: d0775d487c93ebd49e9c1166d5c3c01f3c76eaaf (64-bit)
2d550b> Function Runtime Version: 4.0.1.16815
2d550b>
2d550b> info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
2d550b> Request starting HTTP/2 POST http://127.0.0.1:35377/AzureFunctionsRpcMessages.FunctionRpc/EventStream application/grpc -
2d550b> info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
2d550b> Executing endpoint 'gRPC - /AzureFunctionsRpcMessages.FunctionRpc/EventStream'
2d550b> Value cannot be null. (Parameter 'provider')
2d550b> info: Grpc.AspNetCore.Server.ServerCallHandler[14]
2d550b> Error reading message.
2d550b> System.IO.IOException: The request stream was aborted.
2d550b> ---> Microsoft.AspNetCore.Connections.ConnectionAbortedException: The HTTP/2 connection faulted.
2d550b> --- End of inner exception stack trace ---
2d550b> at System.IO.Pipelines.Pipe.GetReadResult(ReadResult& result)
2d550b> at System.IO.Pipelines.Pipe.GetReadAsyncResult()
2d550b> at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http2.Http2MessageBody.ReadAsync(CancellationToken cancellationToken)
2d550b> at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
2d550b> at Grpc.AspNetCore.Server.Internal.PipeExtensions.ReadStreamMessageAsync[T](PipeReader input, HttpContextServerCallContext serverCallContext, Func`2 deserializer, CancellationToken cancellationToken)
2d550b> info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
2d550b> Executed endpoint 'gRPC - /AzureFunctionsRpcMessages.FunctionRpc/EventStream'
2d550b> info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
2d550b> Request finished HTTP/2 POST http://127.0.0.1:35377/AzureFunctionsRpcMessages.FunctionRpc/EventStream application/grpc - - 200 - application/grpc 37926.0230ms
2d550b> info: Microsoft.AspNetCore.Server.Kestrel[32]
2d550b> Connection id "0HMEKAJ9IPGU1", Request id "0HMEKAJ9IPGU1:00000003": the application completed without reading the entire request body.
Azure Functions Core Tools
Core Tools Version: 4.0.3971 Commit hash: d0775d487c93ebd49e9c1166d5c3c01f3c76eaaf (64-bit)
Function Runtime Version: 4.0.1.16815
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/2 POST http://127.0.0.1:35377/AzureFunctionsRpcMessages.FunctionRpc/EventStream application/grpc -
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
Executing endpoint 'gRPC - /AzureFunctionsRpcMessages.FunctionRpc/EventStream'
Value cannot be null. (Parameter 'provider')
info: Grpc.AspNetCore.Server.ServerCallHandler[14]
Error reading message.
System.IO.IOException: The request stream was aborted.
---> Microsoft.AspNetCore.Connections.ConnectionAbortedException: The HTTP/2 connection faulted.
--- End of inner exception stack trace ---
at System.IO.Pipelines.Pipe.GetReadResult(ReadResult& result)
at System.IO.Pipelines.Pipe.GetReadAsyncResult()
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http2.Http2MessageBody.ReadAsync(CancellationToken cancellationToken)
at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
at Grpc.AspNetCore.Server.Internal.PipeExtensions.ReadStreamMessageAsync[T](PipeReader input, HttpContextServerCallContext serverCallContext, Func`2 deserializer, CancellationToken cancellationToken)
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
Executed endpoint 'gRPC - /AzureFunctionsRpcMessages.FunctionRpc/EventStream'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished HTTP/2 POST http://127.0.0.1:35377/AzureFunctionsRpcMessages.FunctionRpc/EventStream application/grpc - - 200 - application/grpc 37926.0230ms
info: Microsoft.AspNetCore.Server.Kestrel[32]
Connection id "0HMEKAJ9IPGU1", Request id "0HMEKAJ9IPGU1:00000003": the application completed without reading the entire request body.
2d550b
2d550bAzure Functions Core Tools
2d550bCore Tools Version: 4.0.3971 Commit hash: d0775d487c93ebd49e9c1166d5c3c01f3c76eaaf (64-bit)
2d550bFunction Runtime Version: 4.0.1.16815
2d550b
2d550binfo: Microsoft.AspNetCore.Hosting.Diagnostics[1]
2d550b Request starting HTTP/2 POST http://127.0.0.1:35377/AzureFunctionsRpcMessages.FunctionRpc/EventStream application/grpc -
2d550binfo: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
2d550b Executing endpoint 'gRPC - /AzureFunctionsRpcMessages.FunctionRpc/EventStream'
2d550bValue cannot be null. (Parameter 'provider')
2d550binfo: Grpc.AspNetCore.Server.ServerCallHandler[14]
2d550b Error reading message.
2d550b System.IO.IOException: The request stream was aborted.
2d550b ---> Microsoft.AspNetCore.Connections.ConnectionAbortedException: The HTTP/2 connection faulted.
2d550b --- End of inner exception stack trace ---
2d550b at System.IO.Pipelines.Pipe.GetReadResult(ReadResult& result)
2d550b at System.IO.Pipelines.Pipe.GetReadAsyncResult()
2d550b at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http2.Http2MessageBody.ReadAsync(CancellationToken cancellationToken)
2d550b at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1.StateMachineBox`1.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
2d550b at Grpc.AspNetCore.Server.Internal.PipeExtensions.ReadStreamMessageAsync[T](PipeReader input, HttpContextServerCallContext serverCallContext, Func`2 deserializer, CancellationToken cancellationToken)
2d550binfo: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
2d550b Executed endpoint 'gRPC - /AzureFunctionsRpcMessages.FunctionRpc/EventStream'
2d550binfo: Microsoft.AspNetCore.Hosting.Diagnostics[2]
2d550b Request finished HTTP/2 POST http://127.0.0.1:35377/AzureFunctionsRpcMessages.FunctionRpc/EventStream application/grpc - - 200 - application/grpc 37926.0230ms
2d550binfo: Microsoft.AspNetCore.Server.Kestrel[32]
2d550b Connection id "0HMEKAJ9IPGU1", Request id "0HMEKAJ9IPGU1:00000003": the application completed without reading the entire request body.
[ERROR] DOCKER> [mcr.microsoft.com/azure-functions/java:4-java11-core-tools]: Container stopped with exit code 1 unexpectedly after 43158 ms while waiting on url
```
This happens when there are network issues or network traffic is restricted.
The message is totally unhelpful.
Why is this even calling remote servers for a local function execution. I should be able to run it offline.
Contributor guide
Research direction
Reproduce the failure with the mcr.microsoft.com/azure-functions/java:4-java11-core-tools image while network access is restricted, using the Azure Functions Core Tools versions and HTTP/2 error shown here. Trace the local function execution path that emits the null-provider message and determine whether the expected outcome is a clearer diagnostic, offline execution, or both.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, docker
- Domain
- cli, cloud
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100