ferruzzi opened a new issue, #34673:
URL: https://github.com/apache/airflow/issues/34673

   ### Apache Airflow version
   
   2.7.1
   
   ### What happened
   
   The [Dynamo-to-S3 system 
test](https://github.com/apache/airflow/blob/main/tests/system/providers/amazon/aws/example_dynamodb_to_s3.py)
 has been failing since https://github.com/apache/airflow/pull/34492 got 
merged.  It looks like the `get_export_time` task is returning a datetime in a 
format that is no longer being supported.  This might be a matter of just 
converting the format of that return value, but it ma also indicate a larger 
issue with that change.
   
   Relevant logs for the failing test runs:
   
   ```
   INFO  [airflow.task] Executing <Task(DynamoDBToS3Operator): 
backup_db_to_point_in_time> on 2021-01-01 00:00:00+00:00
   --
   ERROR [airflow.task.operators] Exception rendering Jinja template for task 
'backup_db_to_point_in_time', field 'export_time'. Template: 
XComArg(<Task(_PythonDecoratedOperator): get_export_time>)
   Traceback (most recent call last):
   File "/opt/airflow/airflow/models/abstractoperator.py", line 699, in 
_do_render_template_fields
   rendered_content = self.render_template(
   File "/opt/airflow/airflow/template/templater.py", line 157, in 
render_template
   return value.resolve(context)
   File "/opt/airflow/airflow/utils/session.py", line 79, in wrapper
   return func(*args, session=session, **kwargs)
   File "/opt/airflow/airflow/models/xcom_arg.py", line 417, in resolve
   result = ti.xcom_pull(
   File "/opt/airflow/airflow/utils/session.py", line 76, in wrapper
   return func(*args, **kwargs)
   File "/opt/airflow/airflow/models/taskinstance.py", line 2967, in xcom_pull
   return XCom.deserialize_value(first)
   File "/opt/airflow/airflow/models/xcom.py", line 696, in deserialize_value
   return BaseXCom._deserialize_value(result, False)
   File "/opt/airflow/airflow/models/xcom.py", line 689, in _deserialize_value
   return json.loads(result.value.decode("UTF-8"), cls=XComDecoder, 
object_hook=object_hook)
   File "/usr/local/lib/python3.8/json/__init__.py", line 370, in loads
   return cls(**kw).decode(s)
   File "/usr/local/lib/python3.8/json/decoder.py", line 337, in decode
   obj, end = self.raw_decode(s, idx=_w(s, 0).end())
   File "/usr/local/lib/python3.8/json/decoder.py", line 353, in raw_decode
   obj, end = self.scan_once(s, idx)
   File "/opt/airflow/airflow/utils/json.py", line 117, in object_hook
   return deserialize(dct)
   File "/opt/airflow/airflow/serialization/serde.py", line 255, in deserialize
   return _deserializers[classname].deserialize(classname, version, 
deserialize(value))
   File "/opt/airflow/airflow/serialization/serializers/datetime.py", line 86, 
in deserialize
   tz = deserialize_timezone(data[TIMEZONE][1], data[TIMEZONE][2], 
data[TIMEZONE][0])
   File "/opt/airflow/airflow/serialization/serializers/timezone.py", line 72, 
in deserialize
   return timezone(data)
   File "/usr/local/lib/python3.8/site-packages/pendulum/tz/__init__.py", line 
37, in timezone
   tz = _Timezone(name, extended=extended)
   File "/usr/local/lib/python3.8/site-packages/pendulum/tz/timezone.py", line 
40, in __init__
   tz = read(name, extend=extended)
   File 
"/usr/local/lib/python3.8/site-packages/pendulum/tz/zoneinfo/__init__.py", line 
9, in read
   return Reader(extend=extend).read_for(name)
   File 
"/usr/local/lib/python3.8/site-packages/pendulum/tz/zoneinfo/reader.py", line 
50, in read_for
   file_path = pytzdata.tz_path(timezone)
   File "/usr/local/lib/python3.8/site-packages/pytzdata/__init__.py", line 63, 
in tz_path
   raise ValueError('Invalid timezone')
   ValueError: Invalid timezone
   ERROR [airflow.models.taskinstance.TaskInstance] Task failed with exception
   Traceback (most recent call last):
   File "/opt/airflow/airflow/models/taskinstance.py", line 2246, in 
_run_raw_task
   self._execute_task_with_callbacks(context, test_mode, session=session)
   File "/opt/airflow/airflow/models/taskinstance.py", line 2375, in 
_execute_task_with_callbacks
   task_orig = self.render_templates(context=context)
   File "/opt/airflow/airflow/models/taskinstance.py", line 2787, in 
render_templates
   original_task.render_template_fields(context)
   File "/opt/airflow/airflow/models/baseoperator.py", line 1248, in 
render_template_fields
   self._do_render_template_fields(self, self.template_fields, context, 
jinja_env, set())
   File "/opt/airflow/airflow/utils/session.py", line 79, in wrapper
   return func(*args, session=session, **kwargs)
   File "/opt/airflow/airflow/models/abstractoperator.py", line 699, in 
_do_render_template_fields
   rendered_content = self.render_template(
   File "/opt/airflow/airflow/template/templater.py", line 157, in 
render_template
   return value.resolve(context)
   File "/opt/airflow/airflow/utils/session.py", line 79, in wrapper
   return func(*args, session=session, **kwargs)
   File "/opt/airflow/airflow/models/xcom_arg.py", line 417, in resolve
   result = ti.xcom_pull(
   File "/opt/airflow/airflow/utils/session.py", line 76, in wrapper
   return func(*args, **kwargs)
   File "/opt/airflow/airflow/models/taskinstance.py", line 2967, in xcom_pull
   return XCom.deserialize_value(first)
   File "/opt/airflow/airflow/models/xcom.py", line 696, in deserialize_value
   return BaseXCom._deserialize_value(result, False)
   File "/opt/airflow/airflow/models/xcom.py", line 689, in _deserialize_value
   return json.loads(result.value.decode("UTF-8"), cls=XComDecoder, 
object_hook=object_hook)
   File "/usr/local/lib/python3.8/json/__init__.py", line 370, in loads
   return cls(**kw).decode(s)
   File "/usr/local/lib/python3.8/json/decoder.py", line 337, in decode
   obj, end = self.raw_decode(s, idx=_w(s, 0).end())
   File "/usr/local/lib/python3.8/json/decoder.py", line 353, in raw_decode
   obj, end = self.scan_once(s, idx)
   File "/opt/airflow/airflow/utils/json.py", line 117, in object_hook
   return deserialize(dct)
   File "/opt/airflow/airflow/serialization/serde.py", line 255, in deserialize
   return _deserializers[classname].deserialize(classname, version, 
deserialize(value))
   File "/opt/airflow/airflow/serialization/serializers/datetime.py", line 86, 
in deserialize
   tz = deserialize_timezone(data[TIMEZONE][1], data[TIMEZONE][2], 
data[TIMEZONE][0])
   File "/opt/airflow/airflow/serialization/serializers/timezone.py", line 72, 
in deserialize
   return timezone(data)
   File "/usr/local/lib/python3.8/site-packages/pendulum/tz/__init__.py", line 
37, in timezone
   tz = _Timezone(name, extended=extended)
   File "/usr/local/lib/python3.8/site-packages/pendulum/tz/timezone.py", line 
40, in __init__
   tz = read(name, extend=extended)
   File 
"/usr/local/lib/python3.8/site-packages/pendulum/tz/zoneinfo/__init__.py", line 
9, in read
   return Reader(extend=extend).read_for(name)
   File 
"/usr/local/lib/python3.8/site-packages/pendulum/tz/zoneinfo/reader.py", line 
50, in read_for
   file_path = pytzdata.tz_path(timezone)
   File "/usr/local/lib/python3.8/site-packages/pytzdata/__init__.py", line 63, 
in tz_path
   raise ValueError('Invalid timezone')
   ValueError: Invalid timezone
   
   ```
   
   cc @huss
   
   ### What you think should happen instead
   
   The PR I referenced broke existing code.  If this is a matter of adjusting 
one return value that's great, but it may indicate a larger issue.
   
   ### How to reproduce
   
   The issue comes up when running the system test, there are surely other ways 
to repro it.
   
   ### Operating System
   
   linux
   
   ### Versions of Apache Airflow Providers
   
   _No response_
   
   ### Deployment
   
   Other
   
   ### Deployment details
   
   _No response_
   
   ### Anything else
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [X] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [X] I agree to follow this project's [Code of 
Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)
   


-- 
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.

To unsubscribe, e-mail: commits-unsubscr...@airflow.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to