make sure operations get cancelled on channel close