Skip to content
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

"collision in threads table" using CompletableFutures and Java 16+ #29

Open
KristofferSmedlund opened this issue Oct 30, 2024 · 0 comments

Comments

@KristofferSmedlund
Copy link

In Java 17, a security fix was applied. All tasks that are executed within ForkJoinPool.commonPool will clear all ThreadLocal data for that thread after the task is completed.

This breaks the way that the scalyr-logback appender handles multi threaded logging since the EventUploader.java class has the state for the thread in its map but the Events.java class cant find it's threadlocal value. It ends in the assert giving an error with the message "collision in threads table".

Logstash logback appender has already solved this:
logfellow/logstash-logback-encoder#722

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

No branches or pull requests

1 participant