On 5/22/20 2:16 PM, Claes Redestad wrote:
> What I'm asking for is whether there exist any operational issues that
> means users have to use any of the fallback strategies in the wild on
> JDK 11/14 today. That would be a good argument to keep maintaining the
> code, but I've not heard of such a case.

Well, I myself thought there are "no operational issues" with string concat too 
for years after it
was in. Until at least two major bugs (one is this filter-order issue, and 
other is "+=" issue) were
discovered. This makes me extremely averse of sticking with a single strategy. 
And I think you
should be averse too!

We know that good JVMs have runtime killswitch options to be used when 
something goes wrong. The
killswitch might be removed after we are definitely sure most users migrated to 
the common path, and
after that happens, no issues were reported for a while. As it stands right 
now, the migration from
8 is far, far, far from over, and so I would not discount the possibility new 
issues come up during
that migration.

Having no fallback means issue in MH_* string concat strategy would be a 
showstopper. Having a very
simple fallback strategy today is a responsible thing to do, even if it makes 
maintenance harder. I
understand the maintainability argument, and I think that removing most 
strategies strikes the
balance between maintainability and the width of the reliability safety net.

Let's just not remove all-but-one-we-hope-is-right.

> For testing and verifying the correctness of dynamic concat callsites we
> have the javac fallback to emit SB chains (-XDstringConcat=inline) -
> maintaining another fallback strategy is duplication of effort and a
> source of potential bugs in its own right.

-XDstringConcat is the compilation time killswitch, it is not the same. I don't 
think we would ask
users to recompile the JARs they got from Maven Central to deploy the 
workaround. Runtime option
that enables a fallback strategy is what is needed for field deployment when 
things go very wrong.

-- 
Thanks,
-Aleksey

Reply via email to