[Findit] mismatch between an analysis's failure_info and failure_result_map |
||
Issue descriptionTypeError: unhashable type: 'dict' at _GetSwarmingTaskAndTryJobForFailure (/base/data/home/apps/s~findit-for-me/18023-b8d7f5c.412971483831798704/endpoint_api.py:504) at _GenerateResultsForBuild (/base/data/home/apps/s~findit-for-me/18023-b8d7f5c.412971483831798704/endpoint_api.py:592) at AnalyzeBuildFailures (/base/data/home/apps/s~findit-for-me/18023-b8d7f5c.412971483831798704/endpoint_api.py:645) at invoke_remote_method (/base/alloc/tmpfs/dynamic_runtimes/python27g/ec315266546cb44c/python27/python27_lib/versions/third_party/protorpc-1.0/protorpc/remote.py:414) at invoke_remote (/base/alloc/tmpfs/dynamic_runtimes/python27g/ec315266546cb44c/python27/python27_lib/versions/third_party/endpoints-1.0/endpoints/api_config.py:1331) at decorated (/base/data/home/apps/s~findit-for-me/18023-b8d7f5c.412971483831798704/first_party/gae_ts_mon/config.py:279) at dispatch (/base/data/home/apps/s~findit-for-me/18023-b8d7f5c.412971483831798704/components/endpoints_webapp2/adapter.py:132) at __call__ (/base/alloc/tmpfs/dynamic_runtimes/python27g/ec315266546cb44c/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py:1102) at default_dispatcher (/base/alloc/tmpfs/dynamic_runtimes/python27g/ec315266546cb44c/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py:1278) at _instrumented_dispatcher (/base/data/home/apps/s~findit-for-me/18023-b8d7f5c.412971483831798704/first_party/gae_ts_mon/config.py:218) at dispatch (/base/data/home/apps/s~findit-for-me/18023-b8d7f5c.412971483831798704/first_party/gae_ts_mon/config.py:256) at __call__ (/base/alloc/tmpfs/dynamic_runtimes/python27g/ec315266546cb44c/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py:1529) at __call__ (/base/alloc/tmpfs/dynamic_runtimes/python27g/ec315266546cb44c/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py:1535)
,
Nov 7
,
Nov 8
The following revision refers to this bug: https://chromium.googlesource.com/infra/infra/+/d94445b6db123abeb2ada4cb31d49318ca20b939 commit d94445b6db123abeb2ada4cb31d49318ca20b939 Author: Chan <chanli@chromium.org> Date: Thu Nov 08 00:37:12 2018 [Findit] Fix for TypeError: unhashable type: 'dict' Stack Trace: TypeError: unhashable type: 'dict' at _GetSwarmingTaskAndTryJobForFailure (/base/data/home/apps/s~findit-for-me/18023-b8d7f5c.412971483831798704/endpoint_api.py:504) at _GenerateResultsForBuild (/base/data/home/apps/s~findit-for-me/18023-b8d7f5c.412971483831798704/endpoint_api.py:592) The failure_result_map has a format like {'step1': {'test1': 'try_job_key string', ...}, 'step2': 'try_job_key string', ...}. The issue here is, for some reason, the caller couldn't find the test_name in failure_info so it thinks it's a step failure and passed None as test_name, but the failure is actually a test failure and test_names are saved in failure_result_map. The root cause is still unknown, this change is a work around. Bug: 902835 Change-Id: Id48a59ef45cd1d0cb88450c1184f6e8df7e87878 Reviewed-on: https://chromium-review.googlesource.com/c/1324770 Commit-Queue: Chan Li <chanli@chromium.org> Reviewed-by: Jeffrey Li <lijeffrey@chromium.org> Cr-Commit-Position: refs/heads/master@{#18854} [modify] https://crrev.com/d94445b6db123abeb2ada4cb31d49318ca20b939/appengine/findit/endpoint_api.py [modify] https://crrev.com/d94445b6db123abeb2ada4cb31d49318ca20b939/appengine/findit/test/findit_api_test.py |
||
►
Sign in to add a comment |
||
Comment 1 by chanli@chromium.org
, Nov 7