-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Closed
Labels
Milestone
Description
Seeing this failure pretty frequently on PreCommit since yesterday (06/17).
The first failure in precommit cron was here: https://ci-beam.apache.org/job/beam_PreCommit_Python_cron/4327/
Seems related to BEAM-10006, but I'm not sure what changed to make this start flaking recently.
self = <apache_beam.options.pipeline_options_test.PipelineOptionsTest testMethod=test_display_data>
def test_display_data(self):
for case in PipelineOptionsTest.TEST_CASES:
options
= PipelineOptions(flags=case['flags'])
dd = DisplayData.create_from(options)
> hc.assert_that(dd.items,
hc.contains_inanyorder(*case['display_data']))
apache_beam/options/pipeline_options_test.py:222:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
target/.tox-py36-cloud/py36-cloud/lib/python3.6/site-packages/hamcrest/library/collection/issequence_containinginanyorder.py:68:
in describe_mismatch
self.matches(item, mismatch_description)
target/.tox-py36-cloud/py36-cloud/lib/python3.6/site-packages/hamcrest/library/collection/issequence_containinginanyorder.py:64:
in matches
.describe_mismatch(sequence, mismatch_description)
target/.tox-py36-cloud/py36-cloud/lib/python3.6/site-packages/hamcrest/core/base_matcher.py:34:
in describe_mismatch
mismatch_description.append_text('was ').append_description_of(item)
target/.tox-py36-cloud/py36-cloud/lib/python3.6/site-packages/hamcrest/core/base_description.py:34:
in append_description_of
description = str(value)
apache_beam/transforms/display.py:359: in __repr__
return 'DisplayDataItem({})'.format(json.dumps(self._get_dict()))
/usr/lib/python3.6/json/__init__.py:231:
in dumps
return _default_encoder.encode(obj)
/usr/lib/python3.6/json/encoder.py:199: in encode
chunks = self.iterencode(o, _one_shot=True)
/usr/lib/python3.6/json/encoder.py:257: in iterencode
return _iterencode(o, 0)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _
self = <json.encoder.JSONEncoder object at 0x7fef54dd19b0>
o = <apache_beam.options.value_provider.RuntimeValueProvider
object at 0x7feeb2ed5c50>
def default(self, o):
"""Implement this method in a subclass
such that it returns
a serializable object for ``o``, or calls the base implementation
(to raise a ``TypeError``).
For example, to support arbitrary iterators, you could
implement default like this::
def default(self, o):
try:
iterable = iter(o)
except TypeError:
pass
else:
return list(iterable)
# Let the base class
default method raise the TypeError
return JSONEncoder.default(self, o)
"""
raise TypeError("Object of type '%s' is not JSON serializable" %
>
o.__class__.__name__)
E TypeError: Object of type 'RuntimeValueProvider' is not JSON serializable
/usr/lib/python3.6/json/encoder.py:180:
TypeError
Imported from Jira BEAM-12515. Original Jira may contain additional context.
Reported by: bhulette.