You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by vi...@apache.org on 2013/03/13 07:24:11 UTC

svn commit: r1455819 - in /incubator/mesos/trunk/src/slave: status_update_manager.cpp status_update_manager.hpp

Author: vinodkone
Date: Wed Mar 13 06:24:10 2013
New Revision: 1455819

URL: http://svn.apache.org/r1455819
Log:
Garbage collected task meta directories.

Review: https://reviews.apache.org/r/8837

Modified:
    incubator/mesos/trunk/src/slave/status_update_manager.cpp
    incubator/mesos/trunk/src/slave/status_update_manager.hpp

Modified: incubator/mesos/trunk/src/slave/status_update_manager.cpp
URL: http://svn.apache.org/viewvc/incubator/mesos/trunk/src/slave/status_update_manager.cpp?rev=1455819&r1=1455818&r2=1455819&view=diff
==============================================================================
--- incubator/mesos/trunk/src/slave/status_update_manager.cpp (original)
+++ incubator/mesos/trunk/src/slave/status_update_manager.cpp Wed Mar 13 06:24:10 2013
@@ -447,6 +447,9 @@ void StatusUpdateManagerProcess::cleanup
     streams.erase(frameworkId);
   }
 
+  // Delete the task meta directory.
+  stream->cleanup();
+
   delete stream;
 }
 

Modified: incubator/mesos/trunk/src/slave/status_update_manager.hpp
URL: http://svn.apache.org/viewvc/incubator/mesos/trunk/src/slave/status_update_manager.hpp?rev=1455819&r1=1455818&r2=1455819&view=diff
==============================================================================
--- incubator/mesos/trunk/src/slave/status_update_manager.hpp (original)
+++ incubator/mesos/trunk/src/slave/status_update_manager.hpp Wed Mar 13 06:24:10 2013
@@ -250,6 +250,17 @@ struct StatusUpdateStream
     return terminated_;
   }
 
+  // Delete the task meta directory.
+  // TODO(vinod): Archive it.
+  void cleanup() {
+    if (path.isSome()) {
+      LOG(INFO) << "Deleting the meta directory for task " << taskId
+                << " of framework " << frameworkId;
+
+      os::rmdir(os::basename(path.get()).get());
+    }
+  }
+
   // TODO(vinod): Explore semantics to make 'timeout' and 'pending' private.
   Option<Timeout> timeout; // Timeout for resending status update.
   std::queue<StatusUpdate> pending;