distributed error handling