@@ -321,7 +321,8 @@ func actOnPodEvent(ctx context.Context, m actingManager, manager *Manager, statu
321
321
if status .Conditions .Timeout != "" && strings .Contains (status .Conditions .Timeout , string (activityBackup )) {
322
322
span .LogKV ("event" , "timeout during backup" )
323
323
ds := & workspaceDisposalStatus {Status : DisposalFinished , BackupComplete : true , BackupFailure : status .Conditions .Timeout }
324
- if manager .markDisposalStatus (ctx , workspaceID , ds ) != nil {
324
+ err = manager .markDisposalStatus (ctx , workspaceID , ds )
325
+ if err != nil {
325
326
log .WithError (err ).Error ("was unable to update pod's disposal state - this will break someone's experience" )
326
327
}
327
328
}
@@ -514,7 +515,7 @@ func actOnPodEvent(ctx context.Context, m actingManager, manager *Manager, statu
514
515
}
515
516
return m .modifyFinalizer (ctx , workspaceID , gitpodFinalizerName , false )
516
517
} else {
517
- if ds == nil || ds .Status != DisposalFinished {
518
+ if ds .Status != DisposalFinished {
518
519
// We start finalizing the workspace content only after the container is gone. This way we ensure there's
519
520
// no process modifying the workspace content as we create the backup.
520
521
go m .finalizeWorkspaceContent (ctx , wso )
@@ -1008,10 +1009,10 @@ func (m *Monitor) finalizeWorkspaceContent(ctx context.Context, wso *workspaceOb
1008
1009
return
1009
1010
}
1010
1011
1011
- var disposalStatus * workspaceDisposalStatus
1012
+ disposalStatus := & workspaceDisposalStatus {}
1012
1013
defer func () {
1013
- if disposalStatus == nil {
1014
- span .LogKV ("disposalStatus" , "nil " )
1014
+ if disposalStatus . Status == DisposalEmpty {
1015
+ span .LogKV ("disposalStatus" , "empty " )
1015
1016
return
1016
1017
}
1017
1018
0 commit comments