Details
-
Bug
-
Resolution: Fixed
-
P3
-
None
-
b114
Backports
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8279270 | 8u331 | Sean Coffey | P3 | Resolved | Fixed | b01 |
JDK-8273394 | 8u321 | Sean Coffey | P3 | Resolved | Fixed | b01 |
JDK-8274962 | 8u311 | Sean Coffey | P3 | Closed | Fixed | b31 |
Description
In SessionKeyRef, during the draining of the queue, the pool.size() check in release() shows to drain performance in PAE analysis. Might be better to store the size ourselves using AtomicInteger.
ConcurrentLinkedDeque.size() is called by drainRefQueueBounded()
– drainRefQueueBounded() is called every time inside constructor of SessionKeyRef
– Iterate through the LinkedDeque, which is O(n)
ConcurrentLinkedDeque.size() is called by drainRefQueueBounded()
– drainRefQueueBounded() is called every time inside constructor of SessionKeyRef
– Iterate through the LinkedDeque, which is O(n)
Attachments
Issue Links
- backported by
-
JDK-8273394 drainRefQueueBounds() puts pressure on pool.size()
-
- Resolved
-
-
JDK-8279270 drainRefQueueBounds() puts pressure on pool.size()
-
- Resolved
-
-
JDK-8274962 drainRefQueueBounds() puts pressure on pool.size()
-
- Closed
-