Skip to content

Commit 1e94443

Browse files
authored
Merge pull request #25263 from tjwatson/checkpointDropinFix
Avoid deleting created dropins folder before checkpoint
2 parents 4750283 + 5560e8c commit 1e94443

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

dev/com.ibm.ws.app.manager/src/com/ibm/ws/app/manager/internal/monitor/DropinMonitor.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@
4949
import com.ibm.wsspi.kernel.service.utils.FilterUtils;
5050
import com.ibm.wsspi.kernel.service.utils.FrameworkState;
5151

52+
import io.openliberty.checkpoint.spi.CheckpointPhase;
53+
5254
/**
5355
* App manager file monitoring service which monitors a given directory for applications being added/deleted and starts/stops them as
5456
* appropriate.
@@ -474,7 +476,17 @@ private File updateMonitoredDirectory(String newMonitoredFolder) {
474476
_monitors.clear();
475477

476478
if (!!!newDir.exists()) {
477-
createdMonitoredDir.set(newDir.mkdirs());
479+
boolean successfulMkDirs = newDir.mkdirs();
480+
if (CheckpointPhase.getPhase().restored()) {
481+
createdMonitoredDir.set(successfulMkDirs);
482+
} else {
483+
// Any created dropins directory created before checkpoint we want to avoid
484+
// deleting on shutdown.
485+
// The directory may be in the middle of being monitored during checkpoint.
486+
// Deleting such a directory on shutdown potentially can prevent the process
487+
// from being restored subsequent times.
488+
createdMonitoredDir.set(false);
489+
}
478490
}
479491
} else {
480492
oldDir = null;

0 commit comments

Comments
 (0)