What happens if this call fails?  I think we need to handle this case, otherwise, it would end up locked forever...