Zach P
10/18/2022, 10:34 PMdagster_aws.emr.emr.EmrError: EMR log file did not appear on S3 after waiting
File "/usr/local/lib/python3.8/site-packages/dagster/_core/execution/plan/execute_plan.py", line 224, in dagster_event_sequence_for_step
for step_event in check.generator(step_events):
File "/usr/local/lib/python3.8/site-packages/dagster_aws/emr/pyspark_step_launcher.py", line 310, in launch_step
yield from self.wait_for_completion_and_log(run_id, step_key, emr_step_id, step_context)
File "/usr/local/lib/python3.8/site-packages/dagster_aws/emr/pyspark_step_launcher.py", line 323, in wait_for_completion_and_log
self._log_logs_from_s3(step_context.log, emr_step_id)
File "/opt/dagster/app/common/clusters.py", line 165, in _log_logs_from_s3
stdout_log, stderr_log = self.emr_job_runner.retrieve_logs_for_step_id(
File "/usr/local/lib/python3.8/site-packages/dagster_aws/emr/emr.py", line 379, in retrieve_logs_for_step_id
stdout_log = self.wait_for_log(log, log_bucket, "{prefix}/stdout.gz".format(prefix=prefix))
File "/usr/local/lib/python3.8/site-packages/dagster_aws/emr/emr.py", line 419, in wait_for_log
raise EmrError("EMR log file did not appear on S3 after waiting") from err
The above exception was caused by the following exception:
botocore.exceptions.WaiterError: Waiter ObjectExists failed: An error occurred (403): Forbidden
File "/usr/local/lib/python3.8/site-packages/dagster_aws/emr/emr.py", line 413, in wait_for_log
waiter.wait(
File "/usr/local/lib/python3.8/site-packages/botocore/waiter.py", line 55, in wait
Waiter.wait(self, **kwargs)
File "/usr/local/lib/python3.8/site-packages/botocore/waiter.py", line 357, in wait
raise WaiterError(
The above error may be a one time issue, iam, etc. I haven’t seen it happen before but I’m more concerned with the invalid state in may have introduced/caused.
I now have both STEP_SUCCESS and STEP_FAILURE in the logs…dagster._check.CheckError: Invariant failed. Description: Attempted to mark step poi_scores as complete that was not known to be in flight
File "/usr/local/lib/python3.8/site-packages/dagster/_core/execution/api.py", line 1085, in pipeline_execution_iterator
for event in pipeline_context.executor.execute(pipeline_context, execution_plan):
File "/usr/local/lib/python3.8/site-packages/dagster/_core/executor/multiprocess.py", line 219, in execute
active_execution.handle_event(event_or_none)
File "/usr/local/lib/python3.8/site-packages/dagster/_core/execution/plan/active.py", line 400, in handle_event
self.mark_failed(step_key)
File "/usr/local/lib/python3.8/site-packages/dagster/_core/execution/plan/active.py", line 342, in mark_failed
self._mark_complete(step_key)
File "/usr/local/lib/python3.8/site-packages/dagster/_core/execution/plan/active.py", line 387, in _mark_complete
check.invariant(
File "/usr/local/lib/python3.8/site-packages/dagster/_check/__init__.py", line 1470, in invariant
raise CheckError(f"Invariant failed. Description: {desc}")
daniel
10/19/2022, 1:14 AMZach P
10/19/2022, 1:26 AM_log_logs_from_s3
method. (It’s almost the same, just an if/else statement in the record logging loop.daniel
10/19/2022, 1:26 AMZach P
10/19/2022, 1:27 AMdaniel
10/19/2022, 1:27 AMZach P
10/19/2022, 1:35 AM