Bug #3943
closedfn:innermost() optimization not working
100%
Description
The implementation of the fn:innermost function is designed to avoid sorting the argument sequence into document order if it's statically known to be already sorted. However (in 9.8 and 9.9) this optimization isn't working: the "presorted" flag is never set (except when loading from a SEF on which it is already set), and the sort into document order always takes place.
Related issues
Updated by Michael Kay about 6 years ago
- Status changed from New to Resolved
- Fix Committed on Branch 9.8, 9.9 added
Fixed on 9.8 and 9.9 by adding method Innermost#makeOptimizedFunctionCall()
Also added the logic that innermost() is a no-op if the argument is a peer node-set, e.g. innermost(child::node())
.
Updated by Debbie Lockett about 6 years ago
- Related to Bug #3944: fn:innermost() expects input sequence to be in document order added
Updated by O'Neil Delpratt about 6 years ago
- % Done changed from 0 to 100
- Fixed in Maintenance Release 9.8.0.15 added
Bug fix applied in the Saxon 9.8.0.15 maintenance release. Leave open to the Saxon 9.9 maintenance release.
Updated by O'Neil Delpratt about 6 years ago
- Status changed from Resolved to Closed
- Fixed in Maintenance Release 9.9.0.2 added
Bug fix applied in the Saxon 9.9.0.2 maintenance release.
Please register to edit this issue