Project

Profile

Help

Bug #3287

closed

Performance bottleneck in SequenceType

Added by William McCusker about 7 years ago. Updated almost 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Performance
Sprint/Milestone:
-
Start date:
2017-06-16
Due date:
% Done:

100%

Estimated time:
Legacy ID:
Applies to branch:
9.7, 9.8
Fix Committed on Branch:
9.7, 9.8
Fixed in Maintenance Release:
Platforms:

Description

Saxon-HE 9.7.0-18

When processing a large number of paths in parallel with many threads (150+) our application was hitting a bottle neck in net.sf.saxon.value.SequenceType.makeSequenceType(ItemType, int) from a static synchronizedMap.

Would it be possible to instead use a ConcurrentHashMap for the "pool" field in SequenceType? This will improve throughput when accessing the "pool" to get the cached array. Right now because it a synchronizedMap every call to get on the "pool" is paying the cost of synchronizing.

Please register to edit this issue

Also available in: Atom PDF