utkarsharma2 commented on code in PR #30501:
URL: https://github.com/apache/airflow/pull/30501#discussion_r1161457763
##########
airflow/providers/amazon/aws/transfers/dynamodb_to_s3.py:
##########
@@ -118,11 +123,51 @@ def __init__(
self.dynamodb_scan_kwargs = dynamodb_scan_kwargs
self.s3_bucket_name = s3_bucket_name
self.s3_key_prefix = s3_key_prefix
+ self.export_time = export_time
+ self.export_format = export_format
def execute(self, context: Context) -> None:
hook = DynamoDBHook(aws_conn_id=self.source_aws_conn_id)
- table = hook.get_conn().Table(self.dynamodb_table_name)
+ if self.export_time:
+ self._export_table_to_point_in_time(hook=hook)
+ else:
+ self._export_entire_data(hook=hook)
+
+ def _export_table_to_point_in_time(self, hook: DynamoDBHook):
Review Comment:
Thanks for the suggestions. :)
1. Updated code to implement `waiter` logic. This is much better now!
2. I feel if we add `wait_for_completion` it will be only applicable if a
user is specifying `export_time` that is using the `ExportTableToPointInTime`
API via a waiter. The older path cannot accommodate this logic since we are
getting data to the worker node and pushing in a loop and would be a little
inconsistent IMO. WDYT?
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]