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

Issue 665538 link

Starred by 2 users

Issue metadata

Status: Archived
Owner:
Closed: Nov 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug

Blocking:
issue 659562



Sign in to add a comment

push-to-prod: autotest master is broken

Project Member Reported by pprabhu@chromium.org, Nov 15 2016

Issue description

Push-to-prod test is breaking:
http://chromeos-autotest.hot.corp.google.com/afe/#tab_id=view_job&object_id=1676


Traceback (most recent call last):
  File "/usr/local/autotest/server/server_job.py", line 780, in run
    self._execute_code(server_control_file, namespace)
  File "/usr/local/autotest/server/server_job.py", line 1280, in _execute_code
    execfile(code_file, namespace, namespace)
  File "/usr/local/autotest/results/1676-chromeos-test/hostless/control.srv", line 53, in <module>
    dynamic_suite.reimage_and_run(**args_dict)
  File "/usr/local/autotest/server/cros/dynamic_suite/dynamic_suite.py", line 473, in reimage_and_run
    for version_prefix, build in suite_spec.builds.items())
  File "/usr/local/autotest/server/cros/dynamic_suite/dynamic_suite.py", line 473, in <genexpr>
    for version_prefix, build in suite_spec.builds.items())
AttributeError: 'module' object has no attribute 'NamespaceLabel'
 
Labels: -Pri-2 Pri-1
I want to do a push today.
The most obvious culprit is https://chromium-review.googlesource.com/#/c/400618/ but I don't know why it is breaking.
Double checked that chromeos-drone2-staging.hot where this drone ran had the correct version of the autotest software.
Cc: jrbarnette@chromium.org
+jrbarnette (Reviewer of the said CL): ayatane@ is out today, so adding you before I decide to revert this CL and try my luck. I'm not convinced this CL should be breaking anything. I tried to import the said modules locally at autotest cros/master, and it works. Dunno why it fails in that hostless job.
Cc: dshi@chromium.org
I agree that the problem must be that CL.  Reverting will
presumably fix it, although I can't say for sure, since I
don't fully understand the failure, either.

My first guess is that when all is said and done, SSP will
be found to be involved.  But, let's revert first, and ask
questions later.


Comment 5 by dshi@chromium.org, Nov 15 2016

It's a hostless job, which does not run with ssp.
Whatever the problem is, it's quite for real:

$ python
Python 2.7.6 (default, Jun 22 2015, 17:58:13) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import common
>>> from server.cros.dynamic_suite import dynamic_suite
>>> print dynamic_suite.provision
<module 'autotest_lib.server.cros.provision' from '/usr/local/google/home/jrbarnette/repos/cros.lab/src/third_party/autotest/files/server/cros/provision.pyc'>
>>> print dynamic_suite.provision.NamespaceLabel
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'NamespaceLabel'

Comment 7 by dshi@chromium.org, Nov 15 2016

The code in #6 works fine for me. Is that a repo sync issue?

Comment 9 by dshi@chromium.org, Nov 15 2016

I'm guessing it's some pyc issue, deleting all pyc in chromeos-drone2-staging:/usr/local/autotest, might just fix the issue.

Comment 10 by dshi@chromium.org, Nov 15 2016

In chromeos-drone2-staging, I moved server/cros/provision.pyc to /tmp, and the test passed. 

The CL is not the one to blame. It's reverted too early.
Re#10: As far as pushing to prod is concerned, it's entirely likely that this same failure will occur if I try to push to prod with the CL.
So reverting that CL, waiting for push test to succeed, and pushing to prod is a reasonable thing to do.

Now, there _is_ a bug either in the way provision.py is first imported (so that .pyc is not updated) or the way we run the push test (so that .pyc is not updated). We need to figure that out and fix that, BUT, revert-and-push-first seems like the right approach still to me.
Blocking: 659562
Labels: -current-issue
Status: Fixed (was: Started)
This is no longer blocking test_push (because the CL was reverted).
ayatane@: Let me know if you need help trying to figure out why provision.pyc is not getting re-created on a push.

Comment 15 by dchan@google.com, Mar 4 2017

Labels: VerifyIn-58

Comment 16 by dchan@google.com, Apr 17 2017

Labels: VerifyIn-59

Comment 17 by dchan@google.com, May 30 2017

Labels: VerifyIn-60
Labels: VerifyIn-61

Comment 19 by dchan@chromium.org, Oct 14 2017

Status: Archived (was: Fixed)

Sign in to add a comment