-
Notifications
You must be signed in to change notification settings - Fork 325
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
Improper life cycle management in async servlet API #584
Comments
Actually the lifecycle is mostly managed properly - activated and deactivated properly on the initiating thread and ended exactly once in all scenarios. apm-agent-java/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/ElasticApmTracer.java Line 482 in 5dce160
We should probably get rid of this stack clearance. Instead, we can force a certain order of deactivate/end only for Transactions, and make the stack check-and-clear on In any case, I am adding two checks for this kind of situations:
In addition, Jetty and Payara exposed another problem- Line 164 in 21d6412
|
The
/async-start-servlet
test case logs warnings. The transaction is activated 3 times but deactivated 4 times.We should enable assertions in the servlet containers so this fails integration tests
The text was updated successfully, but these errors were encountered: