What are the expected failures here? What should the caller do if this returns false?