Phil Sorber created TS-2854:
-------------------------------
Summary: BACKPORT - HdrHeap::coalesce_str_heaps doesn't properly
calculate new heap size
Key: TS-2854
URL: https://issues.apache.org/jira/browse/TS-2854
Project: Traffic Server
Issue Type: Bug
Components: Core
Affects Versions: 4.2.1, 5.0.0
Reporter: Brian Geffon
Assignee: Phil Sorber
Fix For: 5.0.0
HdrHeap::coalesce_str_heaps doesn't properly calculate the new heap size for a
few reasons:
1) It doesn't current walk the HdrHeap chain (m_next).
2) It doesn't account for HdrHeap objects that point to the same string in the
HdrStrHeap.
The easiest fix for this is to completely walk all of the HdrHeap objects in
the chain and sum up the size of every string; obviously this approach means
that strings that were previously aliased will now become independent copies on
coalesce; however, the alternative solution that allows continued aliasing
would be pretty messy.
I'm proposing we just properly determine the size but allow the user to
minimizing coalescing by making the read only heap sizes configurable and the
StrHdrHeap and HdrHeap default sizes configurable.
--
This message was sent by Atlassian JIRA
(v6.2#6252)