user480355
user480355

Reputation: 31

Azure giving 409 on git push

Since yesterday morning i receive random 409 conflict errors when deploying through Git.

$ git push azure master --force
error: RPC failed; HTTP 409 curl 22 The requested URL returned error: 409 Conflict

This happens after a while and sometimes it does pass but fails on the next project being deployed. Nothing changed on the code side and this happens for all my web apps inside the subscription.

When i SSH into the web app, i can find the following error message: The 'Getting deployment status' operation conflicts with the pend ing 'Getting deployment status' operation started at . Please retry operation later. With stacktraces to the Kudo deployment manager (full trace below).

Does anyone ever experienced this issue and have any idea on how to fix this?

I am asking it here before submitting a ticket in case there is any known fix. Contacting support is kind of a detour from my account.

Full trace:

6-5af4afe2e8c0.txt~/LogFiles/kudu/trace# cat 437d8aa4270e-0fece829-6553-417d-8b96-5af4afe2e8c0.txt
2020-12-07T08:57:46              Error occurred, type: error, text: The 'Getting deployment status' operation conflicts with the pending 'Getting deployment stat
us' operation started at .  Please retry operation later., stackTrace:    at Kudu.Contracts.Infrastructure.LockExtensions.LockOperation[T](IOperationLock lockObj
, Func`1 operation, String operationName, TimeSpan timeout) in /tmp/KuduLite/Kudu.Contracts/Infrastructure/LockExtensions.cs:line 67
   at Kudu.Core.Deployment.DeploymentStatusFile.Open(String id, IEnvironment environment, IAnalytics analytics, IOperationLock statusLock) in /tmp/KuduLite/Kudu.
Core/Deployment/DeploymentStatusFile.cs:line 64
   at Kudu.Core.Deployment.DeploymentStatusManager.Open(String id) in /tmp/KuduLite/Kudu.Core/Deployment/DeploymentStatusManager.cs:line 41
   at Kudu.Core.Deployment.DeploymentManager.GetOrCreateStatusFile(ChangeSet changeSet, ITracer tracer, String deployer) in /tmp/KuduLite/Kudu.Core/Deployment/De
ploymentManager.cs:line 538
   at Kudu.Core.Deployment.DeploymentManager.DeployAsync(IRepository repository, ChangeSet changeSet, String deployer, Boolean clean, DeploymentInfoBase deployme
ntInfo, Boolean needFileUpdate, Boolean fullBuildByDefault) in /tmp/KuduLite/Kudu.Core/Deployment/DeploymentManager.cs:line 210
2020-12-07T08:58:17            Error occurred, type: error, text: One or more errors occurred. (The 'Getting deployment status' operation conflicts with the pend
ing 'Getting deployment status' operation started at .  Please retry operation later.), stackTrace:    at System.Threading.Tasks.Task.Wait(Int32 millisecondsTime
out, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait()
   at Kudu.Console.Program.PerformDeploy(String appRoot, String wapTargets, String deployer, String lockPath, IEnvironment env, IDeploymentSettingsManager settin
gsManager, TraceLevel level, ITracer tracer, ITraceFactory traceFactory, IOperationLock deploymentLock) in /tmp/KuduLite/Kudu.Console/Program.cs:line 191, innerT
ext: The 'Getting deployment status' operation conflicts with the pending 'Getting deployment status' operation started at .  Please retry operation later., inne
rStackTrace:    at Kudu.Contracts.Infrastructure.LockExtensions.LockOperation[T](IOperationLock lockObj, Func`1 operation, String operationName, TimeSpan timeout
) in /tmp/KuduLite/Kudu.Contracts/Infrastructure/LockExtensions.cs:line 67
   at Kudu.Core.Deployment.DeploymentStatusFile.Open(String id, IEnvironment environment, IAnalytics analytics, IOperationLock statusLock) in /tmp/KuduLite/Kudu.
Core/Deployment/DeploymentStatusFile.cs:line 64
   at Kudu.Core.Deployment.DeploymentStatusManager.Open(String id) in /tmp/KuduLite/Kudu.Core/Deployment/DeploymentStatusManager.cs:line 41
   at Kudu.Core.Deployment.DeploymentManager.DeployAsync(IRepository repository, ChangeSet changeSet, String deployer, Boolean clean, DeploymentInfoBase deployme
ntInfo, Boolean needFileUpdate, Boolean fullBuildByDefault) in /tmp/KuduLite/Kudu.Core/Deployment/DeploymentManager.cs:line 279
   at Kudu.Console.Program.<>c__DisplayClass1_0.<<PerformDeploy>b__1>d.MoveNext() in /tmp/KuduLite/Kudu.Console/Program.cs:line 182
2020-12-07T08:58:47    Error occurred, type: error, text: StatusCode cannot be set because the response has already started., stackTrace:    at Microsoft.AspNetC
ore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ThrowResponseAlreadyStartedException(String value)
   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.set_StatusCode(Int32 value)
   at Kudu.Services.GitServer.ReceivePackHandlerMiddleware.Invoke(HttpContext context, ITracer tracer, IGitServer gitServer, IDictionary`2 namedLocks, IDeploymen
tManager deploymentManager, IRepositoryFactory repositoryFactory, IEnvironment environment) in /tmp/KuduLite/Kudu.Services/GitServer/ReceivePackHandlerMiddleware
.cs:line 114
   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
   at Kudu.Services.Web.Tracing.TraceMiddleware.Invoke(HttpContext context) in /tmp/KuduLite/Kudu.Services.Web/Tracing/TraceMiddleware.cs:line 64

Update: This automatically fixed it self in a couple of days

Upvotes: 0

Views: 1019

Answers (1)

Ismayil T.
Ismayil T.

Reputation: 1

try to scale up/dow your ASP. that will reboot the Vm and possibly clean up the pending deployment.

Upvotes: 0

Related Questions