Skip to content
This repository has been archived by the owner on Mar 20, 2024. It is now read-only.

Non-servo PRs regularly trigger "RuntimeError('Invalid configuration')" #176

Closed
jdm opened this issue Nov 8, 2018 · 4 comments · Fixed by #177
Closed

Non-servo PRs regularly trigger "RuntimeError('Invalid configuration')" #176

jdm opened this issue Nov 8, 2018 · 4 comments · Fixed by #177

Comments

@jdm
Copy link
Member

jdm commented Nov 8, 2018

Traceback (most recent call last):
  File "/home/servo/homu/_venv/bin/bottle.py", line 862, in _handle
    return route.call(**args)
  File "/home/servo/homu/_venv/bin/bottle.py", line 1740, in wrapper
    rv = callback(*a, **ka)
  File "/home/servo/homu/_venv/lib/python3.4/site-packages/homu/server.py", line 688, in buildbot
    state, logger, repo_cfg)
  File "/home/servo/homu/_venv/lib/python3.4/site-packages/homu/server.py", line 589, in report_build_res
    g.queue_handler()
  File "/home/servo/homu/_venv/lib/python3.4/site-packages/homu/main.py", line 1552, in queue_handler
    return process_queue(states, repos, repo_cfgs, logger, buildbot_slots, db, git_cfg)  # noqa
  File "/home/servo/homu/_venv/lib/python3.4/site-packages/homu/main.py", line 1203, in process_queue
    logger, db, git_cfg):
  File "/home/servo/homu/_venv/lib/python3.4/site-packages/homu/main.py", line 1182, in start_build_or_rebuild
    return start_build(state, repo_cfgs, *args)
  File "/home/servo/homu/_venv/lib/python3.4/site-packages/homu/main.py", line 1048, in start_build
    raise RuntimeError('Invalid configuration')
RuntimeError: Invalid configuration

This is coming from a PR in webrender that was approved. The code in question gathers up builders when a PR is approved and throws if no builders are applicable. This is a regression from the try-chooser work for reasons that are unclear to me.

@jdm
Copy link
Member Author

jdm commented Nov 8, 2018

When I run try- on the affected PRs, they start building, despite being in repos where the try command is not available and was never used.

@jdm
Copy link
Member Author

jdm commented Nov 8, 2018

Somehow state.try_choose is invalid in this block.

@jdm
Copy link
Member Author

jdm commented Nov 8, 2018

Possibly the None value when inserted into a TEXT field gets converted into a string value that is treated as non-None when it is read back from the database?

cc @Manishearth

@Manishearth
Copy link
Member

Yeah try_choose is 0 for some reason for PRs like servo/heapsize#101 . Seems random?

bors-servo pushed a commit that referenced this issue Nov 9, 2018
bors-servo pushed a commit that referenced this issue Nov 9, 2018
Use None, not False, for try_choose default value

False gets stored as 0

fixes #176

I also ran `update table pull set try_choose=null where try_choose=0;`
on the database to clean up things affected by this.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/homu/177)
<!-- Reviewable:end -->
yshui pushed a commit to hadeaninc/homu that referenced this issue Apr 1, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants