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

Issue 795029 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Last visit > 30 days ago
Closed: Dec 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug

Blocking:
issue 794232



Sign in to add a comment

Tests fail when container pool doesn't yield a container

Project Member Reported by kenobi@chromium.org, Dec 14 2017

Issue description

Log link: https://pantheon.corp.google.com/storage/browser/chromeos-autotest-results/162425705-chromeos-test/chromeos4-row3-rack6-host10/ssp_logs/debug/

On this particular test, the container pool was depleted and failed to yield a container.  In this scenario, the test is supposed to clone its own container and proceed as usual.  Instead, it appears that an errant attribute access on the returned object is causing a crash.
 

Comment 1 by kenobi@chromium.org, Dec 14 2017

Blocking: 794232

Comment 2 by jkop@chromium.org, Dec 14 2017

Cc: -jkop@chromium.org ihf@chromium.org
Owner: jkop@chromium.org
Status: Started (was: Untriaged)

Comment 3 by ihf@chromium.org, Dec 14 2017

Labels: M-65 OS-Chrome
Posting backtrace for future reference:

12/13 19:47:18.039 ERROR|         traceback:0013|   File "/usr/local/autotest/server/autoserv", line 507, in run_autoserv
12/13 19:47:18.039 ERROR|         traceback:0013|     machines)
12/13 19:47:18.039 ERROR|         traceback:0013|   File "/usr/local/autotest/server/autoserv", line 168, in _run_with_ssp
12/13 19:47:18.039 ERROR|         traceback:0013|     dut_name=dut_name)
12/13 19:47:18.039 ERROR|         traceback:0013|   File "/usr/local/autotest/site-packages/chromite/lib/metrics.py", line 483, in wrapper
12/13 19:47:18.040 ERROR|         traceback:0013|     return fn(*args, **kwargs)
12/13 19:47:18.040 ERROR|         traceback:0013|   File "/usr/local/autotest/site_utils/lxc/cleanup_if_fail.py", line 40, in func_cleanup_if_fail
12/13 19:47:18.040 ERROR|         traceback:0013|     return func(*args, **kwargs)
12/13 19:47:18.040 ERROR|         traceback:0013|   File "/usr/local/autotest/site_utils/lxc/container_bucket.py", line 173, in setup_test
12/13 19:47:18.046 ERROR|         traceback:0013|     container = self._factory.create_container(container_id)
12/13 19:47:18.046 ERROR|         traceback:0013|   File "/usr/local/autotest/site_utils/lxc/container_bucket.py", line 267, in create_container
12/13 19:47:18.047 ERROR|         traceback:0013|     container.name)
12/13 19:47:18.047 ERROR|         traceback:0013| AttributeError: 'NoneType' object has no attribute 'name'
12/13 19:47:18.054 INFO |            client:0570| Attempting refresh to obtain initial access_token

Comment 4 by jkop@chromium.org, Dec 14 2017

It was a simple typo; the message logging container.name was outside the 'if not None' block. Should have a fix in by tomorrow.
Project Member

Comment 5 by bugdroid1@chromium.org, Dec 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/335f92947c3ea9d3d73e8769a57a640475d042bd

commit 335f92947c3ea9d3d73e8769a57a640475d042bd
Author: Jacob Kopczynski <jkop@google.com>
Date: Fri Dec 15 07:57:39 2017

container_pool: Only log retrieveds container name

This prevents a crash when the pool needs to fall back to JIT container-creation

BUG= chromium:795029 
TEST=container_bucket_unittest

Change-Id: I1aa64d74bb1b06c789b5b61e87fe7ba79823ef39
Reviewed-on: https://chromium-review.googlesource.com/827561
Commit-Ready: Jacob Kopczynski <jkop@chromium.org>
Tested-by: Jacob Kopczynski <jkop@chromium.org>
Reviewed-by: Ben Kwa <kenobi@chromium.org>

[modify] https://crrev.com/335f92947c3ea9d3d73e8769a57a640475d042bd/site_utils/lxc/container_bucket.py
[modify] https://crrev.com/335f92947c3ea9d3d73e8769a57a640475d042bd/site_utils/lxc/container_bucket_unittest.py

Comment 6 by jkop@chromium.org, Dec 21 2017

Status: Verified (was: Started)

Sign in to add a comment