Skip to content

Conversation

@steffenmllr
Copy link
Contributor

🔧 Type of changes

  • bugfix

✨ What's the context?

We got reports that using non existing Stored Requests / Impressions leads to a Nullpointer

Comment on lines +120 to +122
if (auctionContext == null) {
return Future.succeededFuture();
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure I know the case when auctionContext is null, because it should always be created for each auction

What's the case you've face to make this check?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AntoxaAntoxic as stated in the ticket this happens if a request tries to access a storedrequest that does not exist

grafik

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This does lead to this nullpointer:

prebid-server-1  | java.lang.NullPointerException: Cannot invoke "org.prebid.server.auction.model.AuctionContext.getBidRequest()" because "auctionContext" is null
prebid-server-1  | 	at org.prebid.server.analytics.reporter.agma.AgmaAnalyticsReporter.processEvent(AgmaAnalyticsReporter.java:119)
prebid-server-1  | 	at org.prebid.server.analytics.reporter.AnalyticsReporterDelegator.processEventByReporter(AnalyticsReporterDelegator.java:355)
prebid-server-1  | 	at org.prebid.server.analytics.reporter.AnalyticsReporterDelegator.lambda$delegateEvent$2(AnalyticsReporterDelegator.java:133)
prebid-server-1  | 	at io.vertx.core.impl.ContextInternal.dispatch(ContextInternal.java:279)
prebid-server-1  | 	at io.vertx.core.impl.ContextInternal.dispatch(ContextInternal.java:261)
prebid-server-1  | 	at io.vertx.core.impl.ContextInternal.lambda$runOnContext$0(ContextInternal.java:59)
prebid-server-1  | 	at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
prebid-server-1  | 	at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
prebid-server-1  | 	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
prebid-server-1  | 	at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:413)
prebid-server-1  | 	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
prebid-server-1  | 	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
prebid-server-1  | 	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
prebid-server-1  | 	at java.base/java.lang.Thread.run(Thread.java:1583)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, I've skipped the description)

Yeah, I see. Interesting.

@muuki88
Copy link
Contributor

muuki88 commented Dec 12, 2024

Wow! Good catch @steffenmllr . We are going to deploy this soon for the three big german verzeichnisse

@CTMBNara CTMBNara merged commit 3029de2 into prebid:master Dec 16, 2024
7 checks passed
@bretg
Copy link
Contributor

bretg commented Dec 18, 2024

@steffenmllr - does this fix need to be ported to PBS-Go?

@steffenmllr
Copy link
Contributor Author

@bretg thanks for asking! this was a java specific bug so there is no need to port this

sergseven pushed a commit to openx/prebid-server-java that referenced this pull request Dec 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants