[webkit-reviews] review granted: [Bug 175978] Performance Dashboard backend should support A/B testing for owned components. : [Attachment 321074] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Mon Sep 18 23:43:53 PDT 2017
Ryosuke Niwa <rniwa at webkit.org> has granted dewei_zhu at apple.com's request for
review:
Bug 175978: Performance Dashboard backend should support A/B testing for owned
components.
https://bugs.webkit.org/show_bug.cgi?id=175978
Attachment 321074: Patch
https://bugs.webkit.org/attachment.cgi?id=321074&action=review
--- Comment #11 from Ryosuke Niwa <rniwa at webkit.org> ---
Comment on attachment 321074
--> https://bugs.webkit.org/attachment.cgi?id=321074
Patch
View in context: https://bugs.webkit.org/attachment.cgi?id=321074&action=review
> Websites/perf.webkit.org/ChangeLog:12
> + This will be set true whenever commit_set_item specifies a patch
file,
This line shouldn't be indented like this.
> Websites/perf.webkit.org/ChangeLog:14
> + or commit_set_item is commit with owner commit,
> + or any other commit from same repository and in same
build-request group requires build.
Why are these lines further indented?
> Websites/perf.webkit.org/ChangeLog:18
> + UPDATE TABLE commit_set_items SET
commitset_requires_build = TRUE WHERE commitset_patch_file IS NOT NULL;
You should also add a query to update every commit_set_items in the same test
group.
Something like this (please test it locally):
UPDATE TABLE commit_set_items SET commitset_requires_build = TRUE WHERE
commitset_set IN
(SELECT requests1.request_commit_set FROM build_requests as requests1 JOIN
build_requests as requests2
ON requests1.request_group = requests2.request_group WHERE
requests2.commitset_patch_file IS NOT NULL)
> Websites/perf.webkit.org/public/privileged-api/create-test-group.php:225
> + $owner_commit_id = $owner_commit ? $owner_commit['commit_id'] :
NULL;
This should be done inside the if statement above since we don't access
owner_commit outside the if.
> Websites/perf.webkit.org/public/privileged-api/create-test-group.php:231
> + if ($repository && $repository['repository_owner'])
It's cleaner to simply check $owner_commit_id.
> Websites/perf.webkit.org/public/privileged-api/create-test-group.php:246
> + exit_with_error('CommitOwnerMustExistInCommitSet',
array('owner_commit' => $required_owner_commit));
I think it would be useful to spit out the owned commit as well. Just store the
owned commit ID as the value instead of TRUE in required_owner_commits.
> Websites/perf.webkit.org/public/v3/models/repository.js:29
> + findOwnedRepositoryByName(name)
Looks like this function is never used. Please exclude it from the
patch/commit.
> Websites/perf.webkit.org/server-tests/api-build-requests-tests.js:123
>
> +
Why two blank lines?
>
Websites/perf.webkit.org/server-tests/privileged-api-create-test-group-tests.js
:392
> + const revisionSets = [{[webkit.id()]: {revision: '191622'},
[macos.id()]: {revision: '15A284'}, [jsc.id()]: {revision: 'owned-jsc-6161',
ownerRevision: '191622'}},
> + {[webkit.id()]: {revision: '191622'}, [macos.id()]:
{revision: '15A284'}, [jsc.id()]: {revision: 'owned-jsc-9191', ownerRevision:
'192736'}}];
Add another variant where the owner repository isn't specified at all.
>
Websites/perf.webkit.org/server-tests/privileged-api-create-test-group-tests.js
:782
> + it('should create a test group with a owned commits and a patch', () =>
{
Add another variant where one of the revision doesn't specify owned commit.
e.g. one set specifies system JSC and the other one doesn't.
Make sure that requires_build is specified for both sets.
> Websites/perf.webkit.org/unit-tests/commit-set-tests.js:54
> +describe('CustomCommitSet', () => {
Nice!
More information about the webkit-reviews
mailing list