def update_node(self, path, value):
    if self.needs_connection or not self.handle.connected:
      self.reestablish_connection()

    logging.debug("Updating node at {0}, with new value {1}".format(path,
      value))
    try:
      self.run_with_retry(self.handle.set, path, str(value))
    except kazoo.exceptions.NoNodeError:
      try:
        self.run_with_retry(self.handle.create, path, str(value), ZOO_ACL_OPEN,
          makepath=True)
      except kazoo.exceptions.KazooException as kazoo_exception:
        logging.exception(kazoo_exception)
        self.reestablish_connection()
    except kazoo.exceptions.ZookeeperError as zoo_exception:
      logging.exception(zoo_exception)
    except kazoo.exceptions.KazooException as kazoo_exception:
      logging.exception(kazoo_exception)
      self.reestablish_connection()
Sets the ZooKeeper node at path to value, creating the node if it
dataset/ETHPy150Open AppScale/appscale/AppDB/zkappscale/zktransaction.py/ZKTransaction.update_node