Page MenuHomePhabricator

XHGui is returning all results, with wrong sort order
Closed, ResolvedPublic

Description

The data import used milliseconds instead of seconds, which overflowed the request_ts column. This breaks sort order, since there are a bunch of entries with the same, incorrect timestamp at the top of the list. (New entries are being written with the correct value, thus appear before the import.)

Additionally, the lack of filtering and pagination produces a very long list of profiles when following the "View in XHGui" link on a profiled page. The user has to find the relevant profile using the timestamp column, after waiting for the full list to load.

Event Timeline

dpifke created this task.Aug 13 2020, 11:46 PM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptAug 13 2020, 11:46 PM
dpifke triaged this task as High priority.Aug 13 2020, 11:46 PM
dpifke moved this task from Inbox to Doing on the Performance-Team board.

Change 620140 had a related patch set uploaded (by Dave Pifke; owner: Dave Pifke):
[performance/debs/xhgui@wmf] Implement URL filter and pagination

https://gerrit.wikimedia.org/r/620140

I deleted and re-inserted migrated records, this time with the correct request_ts value. Sort order is fixed.

Change 621855 had a related patch set uploaded (by Dave Pifke; owner: Dave Pifke):
[performance/debs/xhgui@master] Upgrade to latest upstream

https://gerrit.wikimedia.org/r/621855

Change 620140 abandoned by Dave Pifke:
[performance/debs/xhgui@wmf] Implement URL filter and pagination

Reason:
Merged upstream.

https://gerrit.wikimedia.org/r/620140

Change 621855 merged by Dzahn:
[performance/debs/xhgui@master] Upgrade to latest upstream

https://gerrit.wikimedia.org/r/621855

Dzahn added a subscriber: Dzahn.Tue, Aug 25, 8:44 PM

could you link to the upstream tarball?

Upstream doesn't release tarballs; we mirror their Git repository in the "upstream" branch.

The newest version is tagged upstream/0.12.0-2, if you use git-buildpackage it should generate a tarball from that, e.g.

$ gbp buildpackage -sa -us -uc
gbp:info: Creating xhgui_0.12.0-2.orig.tar.gz from 'upstream/0.12.0-2'
gbp:info: Performing the build
...
$ ls -l ../*.orig.tar.gz
-rw-r--r-- 1 dpifke dpifke   377896 Aug 25 13:49 ../xhgui_0.12.0-2.orig.tar.gz

(Open to suggestions if there's a better way to do this.)

All gbp is doing is checking out the related tag (by dropping the -wmf1 suffix from the version string in debian/changelog) and running tar -czf, so you could do that manually if it's not available.

Mentioned in SAL (#wikimedia-operations) [2020-08-25T21:46:35Z] <mutante> importing xhgui 0.12.0-2-wmf1 to buster-wikimedia APT repo (T260397)

Mentioned in SAL (#wikimedia-operations) [2020-08-25T21:51:31Z] <mutante> xhgui1001/xhgui2001 - Unpacking xhgui (0.12.0-2-wmf1) over (0.9.0-1-wmf1) (T260397)

Dzahn added a comment.Tue, Aug 25, 9:55 PM

Upstream doesn't release tarballs; we mirror their Git repository in the "upstream" branch.

I copied the xhgui_0.12.0-2.orig.tar.gz from deployment-xhgui03:/home/dpifke/. With that in my home dir I could build on the prod build host using debuild. Without it it will fail when looking for that tarball.

After compiling i rsynced the files over to apt1001 and imported with reprepro.

Then simulated and then real install on xhgui1001 and 2001.

dpifke closed this task as Resolved.Tue, Aug 25, 9:55 PM