-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major
-
Affects Version/s: 4.9.0
-
Component/s: CLI: pegasus-transfer, Monitord
-
Environment:ubuntu18.04
The path of my original file contains Chinese characters, and the intermediate files do not contain. First, it failed during pegasus-transfer process. "UnicodeEncodeError: 'ascii' codec can't encode characters in position 47-49: ordinal not in range(128)". So in the file /usr/bin/pegasus-transfer, I change all "get_src_path()" into "get_src_path().encode('utf-8')". And it worked successfully, then failed in pegasus-monitord job. Again the problem is " UnicodeEncodeError: 'ascii' codec can't encode characters in position 890-898: ordinal not in range(128)"
22 Traceback (most recent call last):
23 File "/usr/bin/pegasus-monitord", line 1259, in <module>
24 process_output = process_dagman_out(workflow_entry.wf, workflow_entry.ml_buffer[0:ml_pos])
25 File "/usr/bin/pegasus-monitord", line 702, in process_dagman_out
26 add(wf, my_jobid, "%s_SCRIPT_FAILURE" % (my_script), status=my_exit_code)
27 File "/usr/bin/pegasus-monitord", line 551, in add
28 wf.update_job_state(jobid, sched_id, my_job_submit_seq, event, status, my_time, reason)
So, how can I change this files to make it possible to use Chinese characters in the file path?