in src/datamigration/dags/datamigration_utils/hive_bq_load_utils.py [0:0]
def get_job_status(tbl, result):
"""
Get Job status of BQ load command
"""
if result.returncode == 0:
print("Loaded table: {} ".format(tbl))
load_status = "PASS"
reason_for_failure = "NA"
if len(result.stderr.split(" ")) > 2:
bq_job_id = result.stderr.split(" ")[2]
print("BigQuery job id: {}".format(result.stderr.split(" ")[2]))
elif len(result.stdout.split(":")) > 2:
bq_job_id = result.stdout.split(":")[2].replace("'", "")
print("BigQuery job id: {}".format(result.stdout.split(":")[2]))
else:
bq_job_id = "NA"
else:
print("Error Ocuured while loading table: {table} ".format(table=tbl))
reason_for_failure = result.stdout.strip()
load_status = "FAIL"
if len(result.stderr.split(" ")) > 2:
bq_job_id = result.stderr.split(" ")[2]
elif len(result.stdout.split(":")) > 2:
bq_job_id = result.stdout.split(":")[2].replace("'", "")
else:
bq_job_id = "NA"
print("Reason: {}".format(reason_for_failure))
print("Printing STD ERROR")
print(result.stderr)
print("BigQuery job id: {}".format(bq_job_id))
return load_status, reason_for_failure, bq_job_id