_wrap() breaks comparison of Python dictionaries to non-dictionary objects. Working with pings loaded from JSON, you need to compare dictionaries a lot: def descend(d): . path = ['environment', 'settings', 'defaultSearchEngineData', 'origin'] . while path: . key = path.pop(0) . d = d.get(key) . blowup = d == 'some string' This fails due to _lazyjson()'s invocation of getattr(): File "/home/hadoop/anaconda2/lib/python2.7/site-packages/moztelemetry/heka_message_parser.py", line 92, in _wrap return method(*args[1:], **kwargs) TypeError: dict.cmp(x,y) requires y to be a 'dict', not a 'str' Workaround is to test for isinstance(dict, other) before comparing, which may not be obvious to your average bear.
please add priority and effort Mauro
Points: --- → 1
Priority: -- → P2
Component: Metrics: Pipeline → Telemetry APIs for Analysis
Product: Cloud Services → Data Platform and Tools
Status: NEW → RESOLVED
Last Resolved: a year ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.