You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
AdUnit code is compared with slot path and div id. But, if user is using custom divs and customSlotMatching function for setTargetingForGPTAsync, that custom matching function would be ignored and slots on custom divs won't be reset. This is problematic in case where user is refreshing the same slot, in first refresh targeting would be set, but for second refresh if there is no HB bid, targeting won't be set nor reset. So, gampad request to DFP will contain 'old' targeting, which will cause 'old' HB ad to be rendered (in case if DFP doesn't win).
Steps to reproduce
create GPT slot in custom div, by custom div it is meant div with id that is not the same as gpt adUnitPath nor as adUnit code used in prebid.
request HB bids from prebid (in this step you need to make sure to have only 1 HB bid)
call setTargetingForGPTAsync with provided customSlotMatching function to match your custom div
make DFP request
request HB bids from prebid for same adunits (in this step you need to make sure there is no HB bid)
call setTargetingForGPTAsync with provided customSlotMatching function for the same div and adunit as in one of the previous steps
notice that the same ad, with same adId is rendered (if DFP doesn't decide to win)
This test page will initially hold HB auction and send request to DFP and it will render demo ad.
To actually reproduce the bug, open debug mode, select 'Slow 3G' network and call window.refreshAdUnits(). Because of the Slow 3G', requests to HB bidders will timeout, so there won't be any HB bid, but gampad` request to DFP will contain 'old' targeting.
Expected results
I was expecting that, manually executed window.refreshAdUnits(), won't render any ad, since there was no HB bid, or I was expecting DFP ad.
Actual results
Same ad with same adId was rendered for the second time.
Platform details
Used configuration:
latest version of prebid, built from master branch on this day (16.04.2020.)
browser: Chromium 81
OS: Arch Linux
node version: 8.9.4
Other information
The text was updated successfully, but these errors were encountered:
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Type of issue
bug
Description
To reset targeting for particular slot/adunit combination, following code is executed:
AdUnit code is compared with slot path and div id. But, if user is using custom divs and
customSlotMatching
function forsetTargetingForGPTAsync
, that custom matching function would be ignored and slots on custom divs won't be reset. This is problematic in case where user is refreshing the same slot, in first refresh targeting would be set, but for second refresh if there is no HB bid, targeting won't be set nor reset. So,gampad
request to DFP will contain 'old' targeting, which will cause 'old' HB ad to be rendered (in case if DFP doesn't win).Steps to reproduce
setTargetingForGPTAsync
with providedcustomSlotMatching
function to match your custom divsetTargetingForGPTAsync
with providedcustomSlotMatching
function for the same div and adunit as in one of the previous stepsTest page
https://github.com/rtk-io/Prebid.js/blob/pbjs_gpt_custom_div/integrationExamples/gpt/hello_world.html
This test page will initially hold HB auction and send request to DFP and it will render demo ad.
To actually reproduce the bug, open debug mode, select 'Slow 3G' network and call
window.refreshAdUnits()
. Because of theSlow 3G', requests to HB bidders will timeout, so there won't be any HB bid, but
gampad` request to DFP will contain 'old' targeting.Expected results
I was expecting that, manually executed
window.refreshAdUnits()
, won't render any ad, since there was no HB bid, or I was expecting DFP ad.Actual results
Same ad with same
adId
was rendered for the second time.Platform details
Used configuration:
Other information
The text was updated successfully, but these errors were encountered: