diff --git a/heron/statemgrs/src/python/zkstatemanager.py b/heron/statemgrs/src/python/zkstatemanager.py
index <HASH>..<HASH> 100644
--- a/heron/statemgrs/src/python/zkstatemanager.py
+++ b/heron/statemgrs/src/python/zkstatemanager.py
@@ -93,6 +93,11 @@ class ZkStateManager(StateManager):
         ret["result"] = data
 
     try:
+      # Ensure the topology path exists. If a topology has never been deployed
+      # then the path will not exist so create it and don't crash.
+      # (fixme) add a watch instead of creating the path?
+      self.client.ensure_path(self.get_topologies_path())
+
       self._get_topologies_with_watch(callback, isWatching)
     except NoNodeError:
       self.client.stop()
[ISSUE-<I>] fix tracker crash when zk root topologies path does not … (#<I>)

* [ISSUE-<I>] fix tracker crash when zk root topologies path does not exist.



* Fix checksytle.