You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "Gerard Toonstra (JIRA)" <ji...@apache.org> on 2017/04/27 09:46:04 UTC
[jira] [Commented] (AIRFLOW-1144) Logging causes UnicodeEncodeError
when using Japanese characters
[ https://issues.apache.org/jira/browse/AIRFLOW-1144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15986286#comment-15986286 ]
Gerard Toonstra commented on AIRFLOW-1144:
------------------------------------------
Hi Sushant,
It sounds like you're mixing encoding settings. The psql client probably outputs in japanese encoding, but airflow expects everything to be in utf-8. You could try to force the client encoding of psql to utf-8 as well:
SET client_encoding = 'UTF8';
in a test script first to set the client encoding. If that works, I wouldn't go about to have that at the top of every file, but make this part of your environment. You can add this to either ~/.psqlrc , use an environment variable or let the client figure this out from LC_CTYPE. See the postgres docs for details. Please update this JIRA when you know more.
> Logging causes UnicodeEncodeError when using Japanese characters
> ----------------------------------------------------------------
>
> Key: AIRFLOW-1144
> URL: https://issues.apache.org/jira/browse/AIRFLOW-1144
> Project: Apache Airflow
> Issue Type: Bug
> Components: logging, worker
> Affects Versions: 1.8.0
> Reporter: Sushant Karki
>
> I am using the bash operator to pipe a sql dump to my database. Since, the encoding of my psql client is Japanese, the output displays some Japanese characters. Whenever the logger tries to log the output, it raises a UnicodeEncodeError.
> Here are the details of the error.
> {code}
> Exception in thread Thread-1:
> Traceback (most recent call last):
> File "/usr/lib64/python2.7/threading.py", line 813, in __bootstrap_inner
> self.run()
> File "/usr/lib64/python2.7/threading.py", line 766, in run
> self.__target(*self.__args, **self.__kwargs)
> File "/home/karki/virtualenv/master/local/lib/python2.7/site-packages/airflow/task_runner/base_task_runner.py", line 95, in _read_task_logs
> self.logger.info('Subtask: {}'.format(line.rstrip('\n')))
> UnicodeEncodeError: 'ascii' codec can't encode character u'\u884c' in position 58: ordinal not in range(128)
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)