RFR8220166 : Performance regression in deserialization
Roger Riggs
Roger.Riggs at oracle.com
Wed May 15 20:32:09 UTC 2019
Please review a change in the synchronization during the creation of an
ObjectInputStream.
Currently, a synchronized block is used to initialize the streams filter
is read the global serial filter
which becomes a bottleneck under high concurrency. Since the value only
ever changes from null to non-null
once, the synchronization is not needed. Changing the field to volatile
and removing
the synchronization on read should alleviate the contention.
Issue:
https://bugs.openjdk.java.net/browse/JDK-8220166
Webrev:
http://cr.openjdk.java.net/~rriggs/webrev-fix-8220166/index.html
Thanks, Roger
More information about the core-libs-dev
mailing list