You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2017/11/24 17:42:36 UTC

svn commit: r1816246 - in /tomcat/trunk/java/org/apache/catalina: ha/deploy/ manager/ session/

Author: markt
Date: Fri Nov 24 17:42:36 2017
New Revision: 1816246

URL: http://svn.apache.org/viewvc?rev=1816246&view=rev
Log:
Fix a handful of low severity SpotBugs reports
- Failure to delete/rename a file should result have some visible outcome

Modified:
    tomcat/trunk/java/org/apache/catalina/ha/deploy/FileMessageFactory.java
    tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
    tomcat/trunk/java/org/apache/catalina/manager/LocalStrings.properties
    tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java
    tomcat/trunk/java/org/apache/catalina/session/FileStore.java
    tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties
    tomcat/trunk/java/org/apache/catalina/session/StandardManager.java

Modified: tomcat/trunk/java/org/apache/catalina/ha/deploy/FileMessageFactory.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/FileMessageFactory.java?rev=1816246&r1=1816245&r2=1816246&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/ha/deploy/FileMessageFactory.java (original)
+++ tomcat/trunk/java/org/apache/catalina/ha/deploy/FileMessageFactory.java Fri Nov 24 17:42:36 2017
@@ -396,7 +396,9 @@ public class FileMessageFactory {
             int timeIdle = (int) ((timeNow - creationTime) / 1000L);
             if (timeIdle > maxValidTime) {
                 cleanup();
-                if (file.exists()) file.delete();
+                if (file.exists() && !file.delete()) {
+                    log.warn(sm.getString("fileMessageFactory.deleteFail", file));
+                }
                 return false;
             }
         }

Modified: tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties?rev=1816246&r1=1816245&r2=1816246&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties (original)
+++ tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties Fri Nov 24 17:42:36 2017
@@ -46,6 +46,8 @@ farmWarDeployer.undeployEnd=Undeployment
 farmWarDeployer.undeployLocal=Undeploy local context [{0}]
 farmWarDeployer.watchDir=Cluster deployment is watching [{0}] for changes.
 
+fileMessageFactory.deleteFail=Failed to delete [{0}]
+
 warWatcher.checkingWars=Checking WARs in [{0}]
 warWatcher.listedFileDoesNotExist=[{0}] was detected in [{1}] but does not exist. Check directory permissions on [{1}]?
 warWatcher.checkingWar=Checking WAR file [{0}]

Modified: tomcat/trunk/java/org/apache/catalina/manager/LocalStrings.properties
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/LocalStrings.properties?rev=1816246&r1=1816245&r2=1816246&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/manager/LocalStrings.properties (original)
+++ tomcat/trunk/java/org/apache/catalina/manager/LocalStrings.properties Fri Nov 24 17:42:36 2017
@@ -97,6 +97,7 @@ managerServlet.notSslConnector=SSL is no
 managerServlet.objectNameFail=FAIL - Unable to register object name [{0}] for Manager Servlet
 managerServlet.postCommand=FAIL - Tried to use command [{0}] via a GET request but POST is required
 managerServlet.reloaded=OK - Reloaded application at context path [{0}]
+managerServlet.renameFail=FAIL - Unable to rename [{0}] to [{1}]. This may cause problems for future deployments.
 managerServlet.resourcesAll=OK - Listed global resources of all types
 managerServlet.resourcesType=OK - Listed global resources of type [{0}]
 managerServlet.saveFail=FAIL - Configuration save failed: [{0}]

Modified: tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java?rev=1816246&r1=1816245&r2=1816246&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java (original)
+++ tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java Fri Nov 24 17:42:36 2017
@@ -719,7 +719,11 @@ public class ManagerServlet extends Http
                             return;
                         }
                         // Rename uploaded WAR file
-                        uploadedWar.renameTo(deployedWar);
+                        if (!uploadedWar.renameTo(deployedWar)) {
+                            writer.println(smClient.getString("managerServlet.renameFail",
+                                    uploadedWar, deployedWar));
+                            return;
+                        }
                     }
                     if (tag != null) {
                         // Copy WAR to the host's appBase

Modified: tomcat/trunk/java/org/apache/catalina/session/FileStore.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/session/FileStore.java?rev=1816246&r1=1816245&r2=1816246&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/session/FileStore.java (original)
+++ tomcat/trunk/java/org/apache/catalina/session/FileStore.java Fri Nov 24 17:42:36 2017
@@ -264,7 +264,10 @@ public final class FileStore extends Sto
             manager.getContext().getLogger().debug(sm.getString(getStoreName() + ".removing",
                              id, file.getAbsolutePath()));
         }
-        file.delete();
+
+        if (!file.delete()) {
+            throw new IOException(sm.getString("fileStore.deleteSessionFailed", file));
+        }
     }
 
 

Modified: tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties?rev=1816246&r1=1816245&r2=1816246&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties (original)
+++ tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties Fri Nov 24 17:42:36 2017
@@ -16,8 +16,9 @@
 fileStore.saving=Saving Session [{0}] to file [{1}]
 fileStore.loading=Loading Session [{0}] from file [{1}]
 fileStore.removing=Removing Session [{0}] at file [{1}]
-fileStore.deleteFailed=Unable to delete file [{0}] which is preventing the creation of the session storage location
 fileStore.createFailed=Unable to create directory [{0}] for the storage of session data
+fileStore.deleteFailed=Unable to delete file [{0}] which is preventing the creation of the session storage location
+fileStore.deleteSessionFailed=Unable to delete file [{0}] which is no longer required
 JDBCStore.close=Exception closing database connection [{0}]
 JDBCStore.saving=Saving Session [{0}] to database [{1}]
 JDBCStore.loading=Loading Session [{0}] from database [{1}]
@@ -39,6 +40,7 @@ managerBase.sessionTimeout=Invalid sessi
 managerBase.setContextNotNew=It is illegal to call setContext() to change the Context associated with a Manager if the Manager is not in the NEW state
 standardManager.loading=Loading persisted sessions from [{0}]
 standardManager.loading.exception=Exception while loading persisted sessions
+standardManager.deletePersistedFileFail=Unable to delete [{0}] after reading the persisted sessions. The continued presence of this file may cause future attempts to persist sessions to fail.
 standardManager.unloading=Saving persisted sessions to [{0}]
 standardManager.unloading.debug=Unloading persisted sessions
 standardManager.unloading.nosessions=No persisted sessions to unload

Modified: tomcat/trunk/java/org/apache/catalina/session/StandardManager.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/session/StandardManager.java?rev=1816246&r1=1816245&r2=1816246&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/session/StandardManager.java (original)
+++ tomcat/trunk/java/org/apache/catalina/session/StandardManager.java Fri Nov 24 17:42:36 2017
@@ -230,7 +230,9 @@ public class StandardManager extends Man
                 } finally {
                     // Delete the persistent storage file
                     if (file.exists()) {
-                        file.delete();
+                        if (!file.delete()) {
+                            log.warn(sm.getString("standardManager.deletePersistedFileFail", file));
+                        }
                     }
                 }
             }



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org