Closed
Bug 1070637
Opened 10 years ago
Closed 10 years ago
Pushlogs from hg.mozilla.org are empty
Categories
(Developer Services :: General, task)
Developer Services
General
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: epinal99-bugzilla2, Assigned: bkero)
References
(Blocks 1 open bug)
Details
(Keywords: regression)
Open http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=8648aa476eef&tochange=9688476c1544
Result: blank page.
Expected: I should see the list of bugfixes.
Blocks: 1053705
Updated•10 years ago
|
Severity: normal → critical
Comment 1•10 years ago
|
||
With no params the page at least returns the template, but still no changesets:
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml
Though interestingly (and fortunate, since TBPL uses it) the json version of this works:
http://hg.mozilla.org/mozilla-central/json-pushes?full=1
Comment 2•10 years ago
|
||
(In reply to Ed Morley [:edmorley] from comment #1)
> With no params the page at least returns the template, but still no
> changesets:
> https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml
Actually, that's not due to the params, mozilla-inbound returns an empty template, mozilla-central a blank page:
http://hg.mozilla.org/mozilla-central/pushloghtml
Assignee: nobody → server-ops-devservices
Component: Mercurial Pushlog → Server Operations: Developer Services
Product: Webtools → mozilla.org
QA Contact: nmaul
Version: Trunk → other
Updated•10 years ago
|
Severity: critical → major
Assignee | ||
Comment 4•10 years ago
|
||
I've managed to patch this in a patch to pushlog-feed.py. This can be seen in the latest revision in http://hg.mozilla.org/hgcustom/pushlog/
diff -r 0ffe19e2e343 -r ac1d016df8fb pushlog-feed.py
--- a/pushlog-feed.py Wed Sep 11 14:02:52 2013 -0400
+++ b/pushlog-feed.py Mon Sep 22 00:03:26 2014 -0700
@@ -345,8 +345,9 @@
def nodeinbranch(repo, ctx):
branches = []
branch = ctx.branch()
- if branch != 'default' and repo.branchtags().get(branch) != ctx.node():
- branches.append({"name": branch})
+ if hasattr(repo, 'branchtags'):
+ if branch != 'default' and repo.branchtags().get(branch) != ctx.node():
+ branches.append({"name": branch})
return branches
def changenav():
The branchtags() method was removed in the changeset listed here: http://hg.intevation.org/mercurial/crew/rev/4274eda143cb
Assignee: server-ops-devservices → bkero
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Comment 6•10 years ago
|
||
Should this be fixed already on hg.m.o? Or does this take a while to reach live servers?
Comment 7•10 years ago
|
||
Fixed in 86e6470a7c55 (branchtags shows up in two places) and apache gracefully restarted. Checked each web head and they're all showing data. Shout if you see anything else amiss.
diff -r ac1d016df8fb pushlog-feed.py
--- a/pushlog-feed.py Mon Sep 22 00:03:26 2014 -0700
+++ b/pushlog-feed.py Mon Sep 22 08:39:22 2014 -0400
@@ -338,8 +338,9 @@
# If this is an empty repo, ctx.node() == nullid,
# ctx.branch() == 'default', but branchtags() is
# an empty dict. Using dict.get avoids a traceback.
- if repo.branchtags().get(branch) == ctx.node():
- branches.append({"name": branch})
+ if hasattr(repo, 'branchtags'):
+ if repo.branchtags().get(branch) == ctx.node():
+ branches.append({"name": branch})
return branches
def nodeinbranch(repo, ctx):
Comment 8•10 years ago
|
||
Thank you - looks good now :-)
Comment 9•10 years ago
|
||
:fubar
While this certainly did fix it for the reported issue, there is a followup to do which regressed with this update:
https://hg.mozilla.org/releases/mozilla-beta/pushloghtml?changeset=d179d51ba70c
Note for example, that the specified cset landed on a branch (easy to verify by clicking down to hg's main view), however pushloghtml doesn't actually show that its a branch, while it used to.
Your change basically makes the "old mercurial used repo.branchtags() -- while in new thats invalid" not raise a real exception that breaks things.
n-i to you and gps to figure out the best path forward here.
Flags: needinfo?(klibby)
Flags: needinfo?(gps)
Comment 10•10 years ago
|
||
I know sod all about python, nevermind the hg internals; I just carried on what ben started. Alternatively, patches accepted.
Flags: needinfo?(klibby)
Assignee | ||
Comment 11•10 years ago
|
||
If I can read this:
# If this is an empty repo, ctx.node() == nullid,
# ctx.branch() == 'default', but branchtags() is
# an empty dict. Using dict.get avoids a traceback.
if repo.branchtags().get(branch) == ctx.node():
branches.append({"name": branch})
correctly, the code block was designed to avoid a traceback, not to throw one in the event of an empty repository.
This bug belongs to me and gps is out until next week. If you're familiar with the code and the change in Mercurial 2.9, could you offer an alternate fix for the problem?
Additionally, I don't see the problem in the example you provided. Could you provide some additional information to help me understand the issue?
Comment 12•10 years ago
|
||
Let's keep this bug for the "outage" (fixed), and track the other needs in a new bug. I've opened bug 1071296 for that, and transferred the ni there
Flags: needinfo?(gps)
Comment 13•10 years ago
|
||
Updated•10 years ago
|
Component: Server Operations: Developer Services → General
Product: mozilla.org → Developer Services
You need to log in
before you can comment on or make changes to this bug.
Description
•