michaelosthege commented on issue #12813:
URL: https://github.com/apache/airflow/issues/12813#issuecomment-821833783


   We're getting the same error in Airflow 2.0.1 and it happens with xcom 
produced by the `PythonOperator` too.
   
   Tasks that try to `xcom_pull` upstream results that were created **before** 
the 1.0.14 → 2.0.1 migration break (see below).
   Pulling upstream XCom results that were created **after** the 2.0.1 upgrade 
works just fine.
   
   ```
   [2021-04-17 14:28:35,344] {taskinstance.py:1455} ERROR - 'utf-8' codec can't 
decode byte 0x80 in position 0: invalid start byte
   Traceback (most recent call last):
     File 
"/opt/conda/lib/python3.7/site-packages/airflow/models/taskinstance.py", line 
1112, in _run_raw_task
       self._prepare_and_execute_task_with_callbacks(context, task)
     File 
"/opt/conda/lib/python3.7/site-packages/airflow/models/taskinstance.py", line 
1285, in _prepare_and_execute_task_with_callbacks
       result = self._execute_task(context, task_copy)
     File 
"/opt/conda/lib/python3.7/site-packages/airflow/models/taskinstance.py", line 
1315, in _execute_task
       result = task_copy.execute(context=context)
     File "/opt/conda/lib/python3.7/site-packages/airflow/operators/python.py", 
line 117, in execute
       return_value = self.execute_callable()
     File "/opt/conda/lib/python3.7/site-packages/airflow/operators/python.py", 
line 128, in execute_callable
       return self.python_callable(*self.op_args, **self.op_kwargs)
     File "/usr/local/airflow/dags/flow.py", line 91, in _run
       upstream_result = task_instance.xcom_pull(task_ids=[taskid])[0]
     File "/opt/conda/lib/python3.7/site-packages/airflow/utils/session.py", 
line 65, in wrapper
       return func(*args, session=session, **kwargs)
     File 
"/opt/conda/lib/python3.7/site-packages/airflow/models/taskinstance.py", line 
1960, in xcom_pull
       for result in query.with_entities(XCom.task_id, XCom.value)
     File 
"/opt/conda/lib/python3.7/site-packages/airflow/models/taskinstance.py", line 
1960, in <dictcomp>
       for result in query.with_entities(XCom.task_id, XCom.value)
     File "/opt/conda/lib/python3.7/site-packages/airflow/models/xcom.py", line 
255, in deserialize_value
       return json.loads(result.value.decode('UTF-8'))
   UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: 
invalid start byte
   ```
   
   Interestingly the XCom data shows up just fine on the webserver:
   
![grafik](https://user-images.githubusercontent.com/5894642/115116739-8f6d8a00-9f9b-11eb-9094-df2d83572795.png)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to