azure-functions-host: Azure Functions just started breaking.
We had an azure function we created by hand, inside the azure function app instance (aka inside the portal). This morning around 7/27/2020 4:00 PM’ish CST, the function started breaking, no code change has been done to the function. The function app does use the extension per the documentation provided by microsoft. I think the Controller (azure function code) must have changed. Because, or azure function team did not update the extension bundle (the one that is added by default when you create a new azure function instance).
Here is the error: Microsoft.Azure.WebJobs.Host: Error indexing method ‘Functions.Bounce’. Microsoft.Azure.WebJobs.Extensions.Storage: Can’t bind Table to type ‘Microsoft.WindowsAzure.Storage.Table.CloudTable’.
Here is the stacktrace.
Microsoft.Azure.WebJobs.Host.Indexers.FunctionIndexingException : Error indexing method 'Functions.Bounce' ---> System.InvalidOperationException : Can't bind Table to type 'Microsoft.WindowsAzure.Storage.Table.CloudTable'.
at Microsoft.Azure.WebJobs.Host.Tables.TableAttributeBindingProvider.TryCreate(BindingProviderContext context) at C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Extensions.Storage\Tables\TableAttributeBindingProvider.cs : 60
at Microsoft.Azure.WebJobs.Host.Tables.TableAttributeBindingProvider.<>c_DisplayClass5_0.<TryCreateAsync>b0() at C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Extensions.Storage\Tables\TableAttributeBindingProvider.cs : 84
at System.Threading.Tasks.Task`1.InnerInvoke()
at System.Threading.Tasks.Task.<>c.<.cctor>b_274_0(Object obj)
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread,ExecutionContext executionContext,ContextCallback callback,Object state)
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread,ExecutionContext executionContext,ContextCallback callback,Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot,Thread threadPoolThread)
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at async Microsoft.Azure.WebJobs.Host.Bindings.GenericCompositeBindingProvider`1.TryCreateAsync[TAttribute](BindingProviderContext context) at C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Bindings\BindingProviders\GenericCompositeBindingProvider.cs : 61
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at async Microsoft.Azure.WebJobs.Host.Bindings.CompositeBindingProvider.TryCreateAsync(BindingProviderContext context) at C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Bindings\BindingProviders\CompositeBindingProvider.cs : 25
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at async Microsoft.Azure.WebJobs.Host.Indexers.FunctionIndexer.IndexMethodAsyncCore(MethodInfo method,IFunctionIndexCollector index,CancellationToken cancellationToken) at C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Indexers\FunctionIndexer.cs : 222
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at async Microsoft.Azure.WebJobs.Host.Indexers.FunctionIndexer.IndexMethodAsync(MethodInfo method,IFunctionIndexCollector index,CancellationToken cancellationToken) at C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Indexers\FunctionIndexer.cs : 137
End of inner exception
at async Microsoft.Azure.WebJobs.Host.Indexers.FunctionIndexer.IndexMethodAsync(MethodInfo method,IFunctionIndexCollector index,CancellationToken cancellationToken) at C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Indexers\FunctionIndexer.cs : 145
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at async Microsoft.Azure.WebJobs.Host.Indexers.FunctionIndexer.IndexTypeAsync(Type type,IFunctionIndexCollector index,CancellationToken cancellationToken) at C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Indexers\FunctionIndexer.cs : 73
Note: If I remove the parameter and create a new tableClient and call tableClient.GetTableReference(…) , it works fines, but as soon as the parameter is added it’s broken with the above message
Check for a solution in the Azure portal
For issues in production, please check for a solution to common issues in the Azure portal before opening a bug. In the Azure portal, navigate to your function app => Platform features
=> Diagnose and solve problems
and the relevant dashboards before opening your issue.
Investigative information
Please provide the following:
- Timestamp: 2020-07-29T12:27:32.309
- Function App version: 3
- Function App name: test-url-shortner
- Function name(s) (as appropriate): BounceBroken
- Invocation ID: there is none, because it’s just giving me: 2020-07-29T12:27:32.309 [Error] run.csx(8,62): error CS0246: The type or namespace name ‘CloudTable’ could not be found (are you missing a using directive or an assembly reference?)
- Region: EASTUS
Repro steps
Provide the steps required to reproduce the problem:
Expected behavior
Provide a description of the expected behavior.
Actual behavior
Provide a description of the actual behavior observed.
Known workarounds
Provide a description of any known workarounds.
Related information
Provide any related information
- Programming language used
- Links to source
- Bindings used
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Comments: 15 (9 by maintainers)
Closing as answered.
@soninaren , this feels like a good candidate for a detector so this information is visible in the portal.