FastStringUtils change

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

FastStringUtils change

paulk_asert

Hi everyone,

I just noticed that for GROOVY-8379 (getting rid of Unsafe usage) I made this change in master and 2_6_X only. I was planning to push this into 2_5_X. If anyone has objections, let me know.

Details:
FastStringUtils implementations are picked up using the service provider mechanism and Unsafe usage is pushed into a groovy-json-direct subproject which isn't included in the groovy-all pom by default. The plan is to get rid of this altogether in future Groovy versions. Bringing this forward to 2_5_X will allow normal users not to get the warning earlier and allow us to drop the Unsafe usage earlier since it might not even be possible to use in some upcoming version of the JDK.

Cheers, Paul.

Reply | Threaded
Open this post in threaded view
|

Re: FastStringUtils change

jwagenleitner
Definitely in favor of removing from 2_5_X, think it's a good idea. I doubt (though haven't benchmarked) that it really offers that much in terms of performance and memory savings and with JDK9 compat strings it doesn't work in it's currently form.

Would it be worth considering leaving deprecated in 2.5/6 and removed completely in 3.0?

On Mon, May 14, 2018 at 11:08 PM Paul King <[hidden email]> wrote:

Hi everyone,

I just noticed that for GROOVY-8379 (getting rid of Unsafe usage) I made this change in master and 2_6_X only. I was planning to push this into 2_5_X. If anyone has objections, let me know.

Details:
FastStringUtils implementations are picked up using the service provider mechanism and Unsafe usage is pushed into a groovy-json-direct subproject which isn't included in the groovy-all pom by default. The plan is to get rid of this altogether in future Groovy versions. Bringing this forward to 2_5_X will allow normal users not to get the warning earlier and allow us to drop the Unsafe usage earlier since it might not even be possible to use in some upcoming version of the JDK.

Cheers, Paul.

Reply | Threaded
Open this post in threaded view
|

Re: FastStringUtils change

paulk_asert
I am okay with removing in 3 (maybe even 2.6) though it's through the service loader and it currently degrades gracefully on JDK9+, i.e. just won't load. I am more worried about it degrading ungracefully in the future.

On Wed, May 16, 2018 at 12:09 AM, John Wagenleitner <[hidden email]> wrote:
Definitely in favor of removing from 2_5_X, think it's a good idea. I doubt (though haven't benchmarked) that it really offers that much in terms of performance and memory savings and with JDK9 compat strings it doesn't work in it's currently form.

Would it be worth considering leaving deprecated in 2.5/6 and removed completely in 3.0?

On Mon, May 14, 2018 at 11:08 PM Paul King <[hidden email]> wrote:

Hi everyone,

I just noticed that for GROOVY-8379 (getting rid of Unsafe usage) I made this change in master and 2_6_X only. I was planning to push this into 2_5_X. If anyone has objections, let me know.

Details:
FastStringUtils implementations are picked up using the service provider mechanism and Unsafe usage is pushed into a groovy-json-direct subproject which isn't included in the groovy-all pom by default. The plan is to get rid of this altogether in future Groovy versions. Bringing this forward to 2_5_X will allow normal users not to get the warning earlier and allow us to drop the Unsafe usage earlier since it might not even be possible to use in some upcoming version of the JDK.

Cheers, Paul.