Open
Description
Hi there :)
again a utf-8 against iso-8859-15 issue.
Scriptserver has bash env utf-8
connects to host test.de with user oracle which has bash env de_DE.iso885915 set.
Script outputs an umlaut and Scriptserver shows error:
Unexpected error occurred. Contact the administrator.
>> KILLED
The server.log says:
2021-08-26 16:19:50,663 [script_server.execution_service.INFO] Calling script #1497: ssh [email protected] /home/oracle/bin/prod2test_CS2.sh
2021-08-26 16:19:50,677 [tornado.access.INFO] 200 POST /executions/start (127.0.0.1) 31.51ms
2021-08-26 16:19:50,683 [tornado.access.INFO] 101 GET /executions/io/1497 (127.0.0.1) 0.67ms
2021-08-26 16:19:50,870 [script_server.process_popen.ERROR] Failed to read script output
Traceback (most recent call last):
File "src/execution/process_popen.py", line 71, in pipe_process_output
data = self.process.stdout.read(1)
File "/usr/lib/python3.7/codecs.py", line 322, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 6: invalid continuation byte
2021-08-26 16:19:50,883 [web_server.INFO] lutz disconnected
0xe4 is a german "ä" which is an output from a program that is being executed.
The only fix is to use a pipe and converting to utf-8 like so:
echo "This is a german umlaut ä" | iconv -f latin9 -t utf8