prebid / prebid-server

Open-source solution for running real-time advertising auctions in the cloud.
https://prebid.org/product-suite/prebid-server/
Apache License 2.0
434 stars 744 forks source link

ORTB Blocking module: lack of media type strictness configuration for `battr` #4006

Open Net-burst opened 1 month ago

Net-burst commented 1 month ago

There seems to be a design flaw with the blocking module. It was there from the moment the blocking module was initially released, but it became apparent only after we added video and audio support.

The issue lies in the fact that the blocking module doesn't care whether there is a media type object present for the purposes of adding battr. If an account has a configuration for banner/video/audio battr, the module will populate imp[].banner/video/audio.battr even if imp[].banner/video/audio doesn't exist. This would result in the impression potentially having multiple (basically bogus) media types.

OpenRTB blocking module should inject battr only if the media type object (imp[].banner/video/audio) exists. If the object is null, the module shouldn’t create an empty one to house the battr.

justadreamer commented 1 month ago

Why introduce another config option and not simply fix it? i.e.: if imp[].MEDIA_TYPE is null skip this MEDIA_TYPE and don't inject battr;

bsardo commented 1 month ago

Discussed in committee. @bretg do you recall why this module was designed this way? The general opinion here is that this a bug but there is some concern as to whether we should consider this a breaking change such that backwards compatibility should be considered.

Net-burst commented 3 weeks ago

Updated the issue description to reflect that this is indeed a bug.

Net-burst commented 2 weeks ago

PBS-Java PR: https://github.com/prebid/prebid-server-java/pull/3538

bretg commented 6 days ago

done in PBS-Java 3.15