def _destroy_actor_cb(self, key, value, application, retries=0):
        _log.analyze(self._node.id, "+", {'actor_id': key, 'value': value, 'retries': retries})
        _log.debug("Destroy app peers actor cb %s" % key)
        if value and 'node_id' in value:
            application.update_node_info(value['node_id'], key)
        else:
            if retries<10:
                # FIXME add backoff time
                _log.analyze(self._node.id, "+ RETRY", {'actor_id': key, 'value': value, 'retries': retries})
                self.storage.get_actor(key, CalvinCB(func=self._destroy_actor_cb, application=application, retries=(retries+1)))
            else:
                # FIXME report failure
                _log.analyze(self._node.id, "+ GIVE UP", {'actor_id': key, 'value': value, 'retries': retries})
                application.update_node_info(None, key)

        if application.complete_node_info():
            self._destroy_final(application)
Determine if the given table has a given column.
dataset/ETHPy150Open EricssonResearch/calvin-base/calvin/runtime/north/appmanager.py/AppManager._destroy_actor_cb--crossover with--dataset/ETHPy150Open sdispater/orator/orator/schema/builder.py/SchemaBuilder.has_column