British Airways has been inundated with messages from angry customers after thousands of passengers received emails overnight to say their flights had been cancelled.