fix deadlock race between propose and recv