Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Desktop] Round robin - ad with only parent category is shown once #8971

Closed
btlechowski opened this issue Apr 1, 2020 · 7 comments
Closed
Labels
bug closed/duplicate Issue has already been reported feature/ads OS/Desktop priority/P3 The next thing for us to work on. It'll ride the trains. QA Pass-Win64 QA/Yes release-notes/include

Comments

@btlechowski
Copy link

btlechowski commented Apr 1, 2020

Found when testing #8047

Ads that only have parent category will be shown once:
Ad AAA - shown only once

"segments": [{
		"code": "N6AX5kDbww",
		"name": "automotive"
	}
],

full category ads will be shown fine
Ad BBB - shown many times

"segments": [{
		"code": "mqiPIYccl",
		"name": "automotive-car brands"
	}
],

Steps to Reproduce

  1. Clean profile
  2. Use catalog: roundrobin-automotive-carbrands2.txt
  3. Run Brave with command line: /usr/bin/brave-browser --enable-logging=stderr --vmodule=brave_ads=3 --brave-ads-staging --rewards=staging=true
  4. Enable Rewards
  5. Open cars.com
  6. Trigger ad -> Remember which ad was shown. This is Ad1.
  7. Trigger ad -> another ad is shown than 1st ad. This is Ad2.
  8. Trigger ad
  9. Trigger ad
  10. Trigger ad
  11. Trigger ad

Note: Ad AAA is the one that is shown only once

Actual result:

Ad AAA is shown only once
When Ad AAA is supposed to be shown in says

[14703:1:0402/062522.731998:INFO:ads_impl.cc(1197)] No eligible ads found in categories:
[14703:1:0402/062522.732086:INFO:ads_impl.cc(1199)]   automotive
[14703:1:0402/062522.714122:INFO:ads_impl.cc(371)] Browser state changed to unidle
[14703:1:0402/062522.720309:INFO:ads_impl.cc(1177)] Serving ad from categories:
[14703:1:0402/062522.720430:INFO:ads_impl.cc(1179)]   automotive-car brands
[14703:1:0402/062522.720492:INFO:ads_impl.cc(1179)]   automotive-automotive
[14703:1:0402/062522.720544:INFO:ads_impl.cc(1179)]   automotive-pickup trucks
[14703:1:0402/062522.720775:INFO:client.cc(668)] Successfully saved client state
[14703:1:0402/062522.721461:INFO:ads_impl.cc(1407)] All advertisers have been shown, so round robin
[14703:1:0402/062522.721546:INFO:client.cc(420)] Resetting seen advertisers
[14703:1:0402/062522.721913:INFO:ads_impl.cc(1431)] All ads have been shown, so round robin
[14703:1:0402/062522.722757:INFO:client.cc(393)] Resetting seen ad notifications
[14703:1:0402/062522.723192:INFO:ads_impl.cc(1349)] adUUID d9dc0028-8f86-4c92-b25d-981bc1bdb903 has exceeded the frequency capping for perHour
[14703:1:0402/062522.723289:INFO:ads_impl.cc(1197)] No eligible ads found in categories:
[14703:1:0402/062522.723522:INFO:ads_impl.cc(1199)]   automotive-car brands
[14703:1:0402/062522.723705:INFO:ads_impl.cc(1199)]   automotive-automotive
[14703:1:0402/062522.723829:INFO:ads_impl.cc(1199)]   automotive-pickup trucks
[14703:1:0402/062522.728036:INFO:ads_impl.cc(1230)] Serving ad from parent categories:
[14703:1:0402/062522.728175:INFO:ads_impl.cc(1232)]   automotive
[14703:1:0402/062522.728443:INFO:client.cc(668)] Successfully saved client state
[14703:1:0402/062522.728550:INFO:client.cc(668)] Successfully saved client state
[14703:1:0402/062522.731009:INFO:ads_impl.cc(1349)] adUUID d9dc0028-8f86-4c92-b25d-981bc1bdb903 has exceeded the frequency capping for perHour
[14703:1:0402/062522.731998:INFO:ads_impl.cc(1197)] No eligible ads found in categories:
[14703:1:0402/062522.732086:INFO:ads_impl.cc(1199)]   automotive
[14703:1:0402/062522.732219:INFO:ads_impl.cc(1243)] Serving ad notification from untargeted category
[14703:1:0402/062522.733083:INFO:ads_impl.cc(1303)] Notification not made: No eligible ads found

Full Log
roundrobinglog2.txt

Expected result:

Ad AAA and Ad BBB are shown according to Round Robin

Reproduces how often:

100% repro rate

Brave version (brave://version info)

Brave 1.7.79 Chromium: 80.0.3987.149 (Official Build) dev (64-bit)
Revision 5f4eb224680e5d7dca88504586e9fd951840cac6-refs/branch-heads/3987_137@{#16}
OS Ubuntu 18.04 LTS

cc @brave/legacy_qa @rebron @tmancey @moritzhaller @jsecretan

@tmancey
Copy link
Contributor

tmancey commented Apr 1, 2020

@btlechowski @jsecretan d9dc0028-8f86-4c92-b25d-981bc1bdb903 has exceeded the frequency capping for perHour, see log. No more than 1 ad per hour can be shown from the same creative instance id

@btlechowski
Copy link
Author

@tmancey Thanks for checking
d9dc0028-8f86-4c92-b25d-981bc1bdb903 is the ad that is actually always shown - Ad BBB
d4e390fc-424b-4b2c-895e-df8475ea8b45 is the ad that is shown only once - Ad AAA.

Check the attached catalog.

When it says that d9dc0028-8f86-4c92-b25d-981bc1bdb903 (Ad BBB) has exceeded the frequency capping for perHour, this is when I wanted to trigger the other ad(Ad AAA).

[14703:1:0402/062522.731998:INFO:ads_impl.cc(1197)] No eligible ads found in categories:
[14703:1:0402/062522.732086:INFO:ads_impl.cc(1199)]   automotive

Yet the log shows that the ad was not found.

I updated the catalog and renamed the Ads titles so that we can easily check how many times the ad was shown, I renamed the ads to:
Ad AAA - shown only once
Ad BBB - shown many times

These are the ads shown in the new log
image

@btlechowski
Copy link
Author

Adding a new TC, it includes untargeted category

Test case: Ads in different categories (child, parent, untargeted) - triggered every 20 minutes

  1. Overwrite the catalog with Charles advertisers - different categories.txt
  2. Run Brave with command line: /usr/bin/brave-browser --enable-logging=stderr --vmodule=brave_ads=3 --brave-ads-staging --rewards=staging=true
  3. Enable Rewards
  4. Change Ads frequency to 5 per hour
  5. Open cars.com
  6. Trigger ad
  7. Wait 20 minutes
  8. Trigger ad
  9. Wait 20 minutes
  10. Trigger ad
  11. Wait 20 minutes
  12. Repeat 2x steps 6-11

Expected behavior:
The ads are not random, but are shown in order:
Ad AAA
Ad BBB
Ad CCC

Ad AAA
Ad BBB
Ad CCC

Ad AAA
Ad BBB
Ad CCC

@tmancey
Copy link
Contributor

tmancey commented Apr 14, 2020

@btlechowski This is correct behaviour based upon priorities as first we choose from parent-child, then from the parent, and then from untargeted

@btlechowski
Copy link
Author

btlechowski commented Apr 14, 2020

@tmancey Do you mean TC #8971 (comment)? This TC fails right now, because ad with parent category is shown only once. I added the TC so we can test with it when the issue is fixed.

@tmancey tmancey removed QA/Test-Plan-Specified QA/Yes priority/P3 The next thing for us to work on. It'll ride the trains. labels May 5, 2020
@tmancey tmancey removed their assignment May 29, 2020
@tmancey tmancey added OS/Android Fixes related to Android browser functionality OS/Desktop labels Aug 5, 2020
@tmancey tmancey removed the OS/Android Fixes related to Android browser functionality label Aug 20, 2020
@srirambv srirambv changed the title Round robin - ad with only parent category is shown once [Desktop] Round robin - ad with only parent category is shown once Sep 9, 2020
@tmancey tmancey added QA/Yes release-notes/include priority/P3 The next thing for us to work on. It'll ride the trains. closed/duplicate Issue has already been reported labels Oct 28, 2020
@tmancey
Copy link
Contributor

tmancey commented Nov 3, 2020

Closing issue as resolved by #12486

@tmancey tmancey closed this as completed Nov 3, 2020
@btlechowski
Copy link
Author

Verification passed on

Brave 1.18.66 Chromium: 87.0.4280.67 (Official Build) dev (64-bit)
Revision 0e5d92df40086cf0050c00f87b11da1b14580930-refs/branch-heads/4280@{#1441}
OS Windows 7 Service Pack 1 (Build 7601.24544)

Verified test plan from the description

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug closed/duplicate Issue has already been reported feature/ads OS/Desktop priority/P3 The next thing for us to work on. It'll ride the trains. QA Pass-Win64 QA/Yes release-notes/include
Projects
Archived in project
Development

No branches or pull requests

2 participants