UnicodeDecodeError quando ssh'ing em um servidor, apenas ao tentar usar SnakeMake

0

Meu laptop roda o Ubuntu 16.04 LTS. No trabalho, eu uso o ssh para trabalhar em um servidor rodando a versão 7.4.1708 do CentOS Linux.

Esse problema só acontece quando tento usar o Snakemake. Quando eu digito qualquer comando relacionado ao snakemake, recebo o erro abaixo.

Este erro ocorre apenas quando se utiliza o Ubuntu. Meu laptop também tem o Windows 10, do qual eu posso usar ssh usando o puTTY. Nesse caso, posso executar o Snakemake sem problemas.

Não tem nada a ver com o programa de terminal específico - testei o Terminal, Tilda e Xterm padrão.

Não é um problema do lado do servidor. Qualquer um dos meus colegas de trabalho pode fazer login na minha conta no servidor com seus computadores e executar o Snakemake sem problemas.

Aqui está o erro:

#2018-04-06 13:51:33,976 | ERROR   | logging.py          : UnicodeDecodeError in line 54 of /data2/patrick/Patients/USZ/Snakefile:
'ascii' codec can't decode byte 0xe2 in position 3378: ordinal not in range(128)
  File "/data2/patrick/Patients/USZ/Snakefile", line 54, in <module>
  File "/data2/patrick/Patients/USZ/pipeline/scripts/load_config.py", line 17, in load_config
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/__init__.py", line 72, in load
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/constructor.py", line 35, in get_single_data
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/composer.py", line 36, in get_single_node
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/composer.py", line 55, in compose_document
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/composer.py", line 84, in compose_node
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/composer.py", line 133, in compose_mapping_node
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/composer.py", line 84, in compose_node
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/composer.py", line 133, in compose_mapping_node
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/composer.py", line 84, in compose_node
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/composer.py", line 127, in compose_mapping_node
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/parser.py", line 98, in check_event
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/parser.py", line 428, in parse_block_mapping_key
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/scanner.py", line 116, in check_token
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/scanner.py", line 156, in fetch_more_tokens
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/scanner.py", line 778, in scan_to_next_token
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/scanner.py", line 1429, in scan_line_break
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/reader.py", line 96, in prefix
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/reader.py", line 153, in update
  File "/home/wid/miniconda3/lib/python3.6/site-packages/yaml/reader.py", line 178, in update_raw
  File "/home/wid/miniconda3/lib/python3.6/encodings/ascii.py", line 26, in decode

A primeira linha do erro faz referência a uma linha específica no meu Snakefile. Aqui está:

 54 config = load_config(config_file_path)

Essa linha refere-se a outro script (load_config), no qual há um erro na linha 17. Essa linha chama outro script python, no qual há um erro em outra linha ... e assim por diante na mensagem de erro. A linha final (a origem do problema?) Refere-se à linha 26 de ascii.py. Aqui estão as linhas relevantes:

 24 class IncrementalDecoder(codecs.IncrementalDecoder):
 25     def decode(self, input, final=False):
 26         return codecs.ascii_decode(input, self.errors)[0]

Este é o caso quando se usa a instalação do miniconda python, bem como usando o python base.

Mais uma vez, quero enfatizar que isso só acontece quando eu ssh do Ubuntu.

    
por Patrick Turko 06.04.2018 / 14:13

0 respostas