Azure / Azure/azure-functions-host

TypeScript compilation intermittently times out

Open
#2,124 5 comments 0 reactions 0 assignees View on GitHub
bug help wanted
Dominant language
C#
Stars
2k
Forks
482
Avg merge
2d 12h
Merged PRs (30d)
38

Description

_From @jumpei-yamauchi on November 5, 2017 23:28_

Hi,

Recently we started to see this error intermittently - "Microsoft.CodeAnalysis.Scripting.CompilationErrorException : Compilation timed out" when running one of the function. Please see the full error message below.

The function is queue-triggered and written in Typescript. Restarting the Function App that contains this function seemed to have helped (runs successfully without the error) but after a while it started to spit out the same error again. Has anyone come across this before?

Thank you in advance,

```
Microsoft.Azure.WebJobs.Host.FunctionInvocationException : Exception while executing function: ---> Microsoft.CodeAnalysis.Scripting.CompilationErrorException : Compilation timed out.
at async Microsoft.Azure.WebJobs.Script.Description.ConditionalJavaScriptCompilationService.GetCompilationResultAsync(FunctionMetadata functionMetadata) at C:\azure-webjobs-sdk-script\src\WebJobs.Script\Description\Node\Compilation\ConditionalJavaScriptCompilationService.cs : 115
at async Microsoft.Azure.WebJobs.Script.Description.ConditionalJavaScriptCompilationService.GetFunctionCompilationAsync(FunctionMetadata functionMetadata) at C:\azure-webjobs-sdk-script\src\WebJobs.Script\Description\Node\Compilation\ConditionalJavaScriptCompilationService.cs : 56
at async Microsoft.Azure.WebJobs.Script.Description.NodeFunctionInvoker.CompileAndTraceAsync(LogTargets logTargets,Boolean throwOnCompilationError,Boolean suppressCompilationSummary) at C:\azure-webjobs-sdk-script\src\WebJobs.Script\Description\Node\NodeFunctionInvoker.cs : 170
at async Microsoft.Azure.WebJobs.Script.Description.NodeFunctionInvoker.CreateFunctionTarget(CancellationToken cancellationToken) at C:\azure-webjobs-sdk-script\src\WebJobs.Script\Description\Node\NodeFunctionInvoker.cs : 133
at async Microsoft.Azure.WebJobs.Script.Description.FunctionLoader`1.GetFunctionTargetAsync[T](Int32 attemptCount) at C:\azure-webjobs-sdk-script\src\WebJobs.Script\Description\FunctionLoader.cs : 0
at async Microsoft.Azure.WebJobs.Script.Description.NodeFunctionInvoker.GetFunctionTargetAsync() at C:\azure-webjobs-sdk-script\src\WebJobs.Script\Description\Node\NodeFunctionInvoker.cs : 121
at async Microsoft.Azure.WebJobs.Script.Description.NodeFunctionInvoker.InvokeCore(Object[] parameters,FunctionInvocationContext context) at C:\azure-webjobs-sdk-script\src\WebJobs.Script\Description\Node\NodeFunctionInvoker.cs : 192
```

_Copied from original issue: Azure/Azure-Functions#579_

Contributor guide

Open the contributing guide

Research direction

Start by tracing ConditionalJavaScriptCompilationService.cs at lines 56 and 115, then follow NodeFunctionInvoker.cs at lines 121, 133, 170, and 192. Reproduce the intermittent timeout with a queue-triggered TypeScript function and inspect when compilation is retried or blocked. Done means the cause is identified and the function no longer intermittently fails with Compilation timed out.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, csharp, typescript
Domain
backend, cloud
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.