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
Transactions on Kafka are blocked when using kafkaReceiver.receiveExactlyOnce(transactionManager) from Reactor Kafka Reciever with instrumentation attached from Java agent.
Temporary workaround is to use another method signature with two arguments kafkaReceiver.receiveExactlyOnce(transactionManager, null)__
Steps to reproduce
Setup Java project with library io.projectreactor.kafka:reactor-kafka:1.3.22and Apache Kafka
Configure KafkaSender and KafkaReceiver instances
Use receiveExactlyOnce(transactionManager) method to create transactions between consumer and producer, for example:
Describe the bug
Transactions on Kafka are blocked when using
kafkaReceiver.receiveExactlyOnce(transactionManager)
from Reactor Kafka Reciever with instrumentation attached from Java agent.Temporary workaround is to use another method signature with two arguments
kafkaReceiver.receiveExactlyOnce(transactionManager, null)
__Steps to reproduce
io.projectreactor.kafka:reactor-kafka:1.3.22
and Apache KafkaExpected behavior
Transaction between consumer and producer works uninterrupted by instrumentation when using
receiveExactlyOnce(transactionManager)
.Actual behavior
Consumer and producer transactions cannot start because the instrumentation code blocks it.
Javaagent or library instrumentation version
at least higher than 1.30, Javaagent
Environment
JDK: 17 and 21
OS: MacOS Sonoma
Additional context
opentelemetry-java-instrumentation/instrumentation/reactor/reactor-kafka-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/reactor/kafka/v1_0/InstrumentedKafkaReceiver.java
Line 60 in e7f1aff
Implementation of method
uses receiveAutoAck() instead of receiveExactlyOnce()
The text was updated successfully, but these errors were encountered: