Skip to content

Commit 1a30cad

Browse files
authored
Merge branch 'master' into master
2 parents 083d3b9 + cbd924e commit 1a30cad

File tree

3 files changed

+23
-3
lines changed

3 files changed

+23
-3
lines changed

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ def read(fname):
2323

2424

2525
setup(name="sagemaker",
26-
version="1.7.1",
26+
version="1.7.2",
2727
description="Open source library for training and deploying models on Amazon SageMaker.",
2828
packages=find_packages('src'),
2929
package_dir={'': 'src'},

src/sagemaker/utils.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,8 +146,12 @@ def secondary_training_status_changed(current_job_description, prev_job_descript
146146
if current_secondary_status_transitions is None or len(current_secondary_status_transitions) == 0:
147147
return False
148148

149-
last_message = prev_job_description['SecondaryStatusTransitions'][-1]['StatusMessage']\
150-
if prev_job_description is not None else ''
149+
prev_job_secondary_status_transitions = prev_job_description.get('SecondaryStatusTransitions') \
150+
if prev_job_description is not None else None
151+
152+
last_message = prev_job_secondary_status_transitions[-1]['StatusMessage'] \
153+
if prev_job_secondary_status_transitions is not None and len(prev_job_secondary_status_transitions) > 0 else ''
154+
151155
message = current_job_description['SecondaryStatusTransitions'][-1]['StatusMessage']
152156

153157
return message != last_message

tests/unit/test_utils.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ def test_name_from_training_arn():
104104
TRAINING_JOB_DESCRIPTION_2 = {
105105
'SecondaryStatusTransitions': [{'StatusMessage': 'different message', 'Status': STATUS}]
106106
}
107+
107108
TRAINING_JOB_DESCRIPTION_EMPTY = {
108109
'SecondaryStatusTransitions': []
109110
}
@@ -119,6 +120,21 @@ def test_secondary_training_status_changed_false():
119120
assert changed is False
120121

121122

123+
def test_secondary_training_status_changed_prev_missing():
124+
changed = secondary_training_status_changed(TRAINING_JOB_DESCRIPTION_1, {})
125+
assert changed is True
126+
127+
128+
def test_secondary_training_status_changed_prev_none():
129+
changed = secondary_training_status_changed(TRAINING_JOB_DESCRIPTION_1, None)
130+
assert changed is True
131+
132+
133+
def test_secondary_training_status_changed_current_missing():
134+
changed = secondary_training_status_changed({}, TRAINING_JOB_DESCRIPTION_1)
135+
assert changed is False
136+
137+
122138
def test_secondary_training_status_changed_empty():
123139
changed = secondary_training_status_changed(TRAINING_JOB_DESCRIPTION_EMPTY, TRAINING_JOB_DESCRIPTION_1)
124140
assert changed is False

0 commit comments

Comments
 (0)