So adding a test case with timeout disabled won't show the symptom, and adding it with timeout enabled will likely lead to intermittent failures on different machines.

I agree. Unreliable tests can be worse than no tests at all. I'm comfortable
with this decision.

release note would have to be something generic like "optimizer fixes/enhancements could cause the optimizer to choose different query plans, so performance of existing queries may change".

I agree that this is a hard case, and I can see both sides. But I do think
that we can craft an umbrella release note which will be valuable to users
as they move to the new release, covering the multiple changes to the
optimizer as a single logical unit. It seems to me that the release note
should observe that:

 - there have been some optimizer changes in this release (with pointers
   to the specific bugs fixed)
 - the optimizer will now consider additional query plans
 - the optimizer's timeout logic has changed
 - we believe that the optimizer will now choose better plans, and choose
   them more quickly.
 - if you think you are seeing an optimizer-related problem as a result of
   upgrading to this release, please capture the actual query plan that is
   being chosen by the old release and by the new release, and send them
   to us so we can help with the analysis, and here's how to do that.

Perhaps that last bullet point should be a page on the wiki, and the release
note could just point to http://wiki.apache.org/db-derby/OptimizerDiagnosisTips
(or whatever the actual page turns out to be).

I'd be glad to help by reviewing the release note, etc.

thanks,

bryan


Reply via email to