Por que recebo um erro “Sequência de bytes inválida em UTF-8” ao ler um arquivo de texto?

Estou escrevendo um script Ruby para processar um arquivo de texto grande e continuo recebendo um erro de codificação estranho. Aqui está a situação:

input_data = File.new(in_path, 'r').read
p input_data.encoding.name   #   UTF-8 
break_char = "\r".encode("UTF-8")
p break_char # "\r"
p break_char.encoding.name # "UTF-8" 
input_data.split(",".encode("UTF-8"))
p Encoding.compatible?(input_data, break_char) # # Encoding:UTF-8>

Isso produz o erro:in 'split': invalid byte sequence in UTF-8 (ArgumentError)

Eu lihttp: //blog.grayproductions.net/articles/ruby_19s_strin e olhou para outras soluções para aparentemente o mesmo problema, mas ainda não consigo entender por que isso está acontecendo quando acredito que estou controlando as codificaçõe

Estou no OSX trabalhando com ruby 1.9.2

questionAnswers(5)

yourAnswerToTheQuestion