New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 800218 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug



Sign in to add a comment

[Findit] Flake Analyzer - Analysis fails in try job stage

Project Member Reported by wylieb@chromium.org, Jan 9 2018

Issue description

Example analysis:
https://13488-8abb82a-dot-findit-for-me.appspot.com/waterfall/flake?redirect=1&key=ag9zfmZpbmRpdC1mb3ItbWVyzgELEhdNYXN0ZXJGbGFrZUFuYWx5c2lzUm9vdCKXAWNocm9taXVtLm1lbW9yeS9MaW51eCBDaHJvbWl1bU9TIE1TYW4gVGVzdHMvNTA0OC9icm93c2VyX3Rlc3RzL1VHRjViV1Z1ZEZKbGNYVmxjM1JUYUdsd2NHbHVaMEZrWkhKbGMzTkZaR2wwYjNKVVpYTjBMa1Z1ZEdWeVFXTmpaV3hsY21GMGIzSlRlVzVqUkdGMFlRPT0MCxITTWFzdGVyRmxha2VBbmFseXNpcxgCDA

Stacktrace:
Generator waterfall.flake.schedule_flake_try_job_pipeline.ScheduleFlakeTryJobPipeline(*(u'chromium.memory', u'Linux ChromiumOS MSan Tests', u'browser_tests', u'PaymentRequestShippingAddressEditorTest.EnterAcceleratorSyncData', u'8eec813f79843ed6dae826c592ed24fe9431e9a6', u'ag9zfmZpbmRpd... (646 bytes), **{})#0ca4b9db1046433184a25c09b67e7540 raised exception. IndexError: list index out of range (/base/data/home/apps/s~findit-for-me/waterfall-backend:13488-8abb82a.406803775975663518/infra_api_clients/../third_party/pipeline/pipeline.py:2434)
Traceback (most recent call last):
  File "/base/data/home/apps/s~findit-for-me/waterfall-backend:13488-8abb82a.406803775975663518/infra_api_clients/../third_party/pipeline/pipeline.py", line 2158, in evaluate
    self, pipeline_key, root_pipeline_key, caller_output)
  File "/base/data/home/apps/s~findit-for-me/waterfall-backend:13488-8abb82a.406803775975663518/infra_api_clients/../third_party/pipeline/pipeline.py", line 1113, in _run_internal
    return self.run(*self.args, **self.kwargs)
  File "/base/data/home/apps/s~findit-for-me/waterfall-backend:13488-8abb82a.406803775975663518/waterfall/flake/schedule_flake_try_job_pipeline.py", line 57, in run
    cache_name, dimensions, self.pipeline_id)
  File "/base/data/home/apps/s~findit-for-me/waterfall-backend:13488-8abb82a.406803775975663518/services/try_job.py", line 335, in TriggerTryJob
    swarming_util.AssignWarmCacheHost(try_job, cache_name, FinditHttpClient())
  File "/base/data/home/apps/s~findit-for-me/waterfall-backend:13488-8abb82a.406803775975663518/waterfall/swarming_util.py", line 908, in AssignWarmCacheHost
    selected_bot = _GetBotWithFewestNamedCaches(bots_with_cache)['bot_id']
  File "/base/data/home/apps/s~findit-for-me/waterfall-backend:13488-8abb82a.406803775975663518/waterfall/swarming_util.py", line 876, in _GetBotWithFewestNamedCaches
    return sorted(candidates)[0][2]
IndexError: list index out of range

 
This failure is in swarming_util
Owner: robert...@chromium.org
Project Member

Comment 3 by bugdroid1@chromium.org, Jan 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra/+/d9865dfdd933a7fa95984c4ec15483a55015b5c4

commit d9865dfdd933a7fa95984c4ec15483a55015b5c4
Author: Roberto Carrillo <robertocn@google.com>
Date: Tue Jan 09 17:35:03 2018

[Findit] Fix bad logic for flake tryjob cache assignment.

The reason why the previous flake-specific clause was not working is
that it didn't handle the case where no bots were available or no bots
had the cache name already.

With this change we use the existing check to see if there are available
bots having the cache, and otherwise let the call fall through to the
same else clause as non-flake tryjobs.

R=wylieb,lijeffrey
BUG= 800218 

Change-Id: Ic4331d4f59a4a6d87fd548e88899b398d157dd71
Reviewed-on: https://chromium-review.googlesource.com/856219
Reviewed-by: Brandon Wylie <wylieb@chromium.org>
Reviewed-by: Jeffrey Li <lijeffrey@chromium.org>
Commit-Queue: Roberto Carrillo <robertocn@chromium.org>

[modify] https://crrev.com/d9865dfdd933a7fa95984c4ec15483a55015b5c4/appengine/findit/waterfall/swarming_util.py

I think this is fixed. The tryjob was correctly scheduled: https://ci.chromium.org/p/chromium/builders/luci.chromium.findit/findit_variable/235

Status: Fixed (was: Available)

Sign in to add a comment