On 27/08/2020 14:11, Rahul Yadav wrote:
Hello,
Request to have my fix reviewed for issue:
JDK-8245308: Replace ThreadLocalCoders decoder/encoder cache in
java.net.URI.
This fix updates java.net.URI, replaces the ThreadLocalCoders
optimization.
The benchmark results indicate no impact, optimization can be
replaced.The results of
benchmark are provided below and benchmark included in webrev.
Before
Benchmark (iterations) Mode Cnt Score Error
Units
ThreadLocalURI.uriDecoderTest 100 avgt 25 0.258 ±
0.014 us/op
ThreadLocalURI.uriEncoderTest 100 avgt 25 35.540 ±
1.082 us/op
After
Benchmark (iterations) Mode Cnt Score Error
Units
ThreadLocalURI.uriDecoderTest 100 avgt 25 0.247 ±
0.005 us/op
ThreadLocalURI.uriEncoderTest 100 avgt 25 37.231 ±
0.669 us/op
Issue: https://bugs.openjdk.java.net/browse/JDK-8245308
webrev: https://cr.openjdk.java.net/~ryadav/webrev_8245308/index.html
The quote method is creating the UTF-8 encoder eagerly, I guess I would
expect it to only create this encoder when the input has non-ASCII
chars, meaning it can be created lazily. Otherwise the change to URI
looks okay to me.
For the micro, I'm curious if iterations is needed.
-Alan