Optimization bug: xsl:choose with branches uniformly comparing untypedAtomic to numeric
We tried to upgrade our Saxon 9.7 library to 9.9. After a few hours it turned out that some tranformations does not work as expected. A result of such a transformation was a totally different output file.
We tried to reconfigure Saxon by disabling optimizations (setting http://saxon.sf.net/feature/optimizationLevel feature to 0). With this configuration it worked as before (in 9.7).
I attached test transformation (test.xslt), an input file (input-optimization-level-test.xml) and two output files for the optimization level set to 0 and 9 respectively (output-optimization-level-0.xml, output-optimization-level-9.xml)
Here comes some questions which need to be answered in order to be sure that new library is safe to be deployed to a production environment:
- How is that possible that optimization changes transformation behaviour?
- What else changed that could break transformations which works in 9.7?
- Do you have any suggestions how to deploy the new version safely?
Please register to edit this issue