jia-gao opened a new pull request, #1641: URL: https://github.com/apache/samza/pull/1641
Issue: We have observed logging data loss happen in StreamAppender The RC is that current implementation of the “[append()](https://github.com/apache/samza/blob/master/samza-log4j/src/main/java/org/apache/samza/logging/log4j/StreamAppender.java#L146)” method uses one AtomicBoolean variable to detect if the thread is called recursively. However, it won’t work as expected since Log4j2 framework already applies recursive call prevention and it has the side effect that data loss might occur in the parallel logging scenario Change: Remove current recursive call prevention logic, Leverage [log4j2 framework](https://github.com/apache/logging-log4j2/blob/release-2.x/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AppenderControl.java#L122) to prevent recursive calls API Changes: Remove a metric recursivecall from StreamAppenderMetrics since it is no longer used Test Done: ./gradlew build -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@samza.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org