[ 
https://issues.apache.org/jira/browse/TS-2824?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Phil Sorber resolved TS-2824.
-----------------------------

       Resolution: Fixed
    Fix Version/s: 5.0.0
         Assignee: Phil Sorber

Fixed this by reverting TS-2592 (2fbd4b6)

> ioBufferAllocator objects in ATS master keep growing endlessly
> --------------------------------------------------------------
>
>                 Key: TS-2824
>                 URL: https://issues.apache.org/jira/browse/TS-2824
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: Core
>            Reporter: Sudheer Vinukonda
>            Assignee: Phil Sorber
>             Fix For: 5.0.0
>
>
> During our production testing of ATS master, I noticed that ATS memory keeps 
> growing beyond ram cache size limits. Upon enabling the memory allocation 
> dump, it looks like the ioBufAllocator objects keep growing endlessly. 
> Talking to [~psudaemon] and [~amc] on irc, it looks like the issue might be 
> caused due to NOT in-use proxy allocator (local thread) objects accumulating 
> until they reach the per thread object count limit (250). This may be 
> significant memory for large sized objects (e.g 1MB or 2MB). [~psudaemon] 
> recommended to try reverting the changes in TS-2592 that force to use Proxy 
> allocator instead of global pool objects for ioBuffers. (Note that my 
> production host has ram cache set to 6G and that is completely used, but, the 
> ioBuffers just keep growing)
> Here's the dump of memory allocations:
> {code}
> -bash-4.1$ sudo grep "ioBufAllocator\[13\]" traffic.out
>                   0 |                  0 |    1048576 | 
> memory/ioBufAllocator[13]
>          1174405120 |         1151336448 |    1048576 | 
> memory/ioBufAllocator[13]
>          4194304000 |         4186963968 |    1048576 | 
> memory/ioBufAllocator[13]
>          1912602624 |         1908408320 |    1048576 | 
> memory/ioBufAllocator[13]
>           771751936 |          759169024 |    1048576 | 
> memory/ioBufAllocator[13]
>          1610612736 |         1608515584 |    1048576 | 
> memory/ioBufAllocator[13]
>          1509949440 |         1484783616 |    1048576 | 
> memory/ioBufAllocator[13]
>          3724541952 |         3697278976 |    1048576 | 
> memory/ioBufAllocator[13]
>          2046820352 |         2023751680 |    1048576 | 
> memory/ioBufAllocator[13]
>          2046820352 |         2036334592 |    1048576 | 
> memory/ioBufAllocator[13]
>          2147483648 |         2128609280 |    1048576 | 
> memory/ioBufAllocator[13]
>          2181038080 |         2172649472 |    1048576 | 
> memory/ioBufAllocator[13]
>          2214592512 |         2204106752 |    1048576 | 
> memory/ioBufAllocator[13]
>          2281701376 |         2253389824 |    1048576 | 
> memory/ioBufAllocator[13]
>          2315255808 |         2287992832 |    1048576 | 
> memory/ioBufAllocator[13]
>          2348810240 |         2316304384 |    1048576 | 
> memory/ioBufAllocator[13]
>          2348810240 |         2336227328 |    1048576 | 
> memory/ioBufAllocator[13]
>          2382364672 |         2380267520 |    1048576 | 
> memory/ioBufAllocator[13]
>          2449473536 |         2424307712 |    1048576 | 
> memory/ioBufAllocator[13]
>          2449473536 |         2447376384 |    1048576 | 
> memory/ioBufAllocator[13]
>          2483027968 |         2474639360 |    1048576 | 
> memory/ioBufAllocator[13]
>          2516582400 |         2507145216 |    1048576 | 
> memory/ioBufAllocator[13]
>          2550136832 |         2543845376 |    1048576 | 
> memory/ioBufAllocator[13]
>          2617245696 |         2599419904 |    1048576 | 
> memory/ioBufAllocator[13]
>          2650800128 |         2626682880 |    1048576 | 
> memory/ioBufAllocator[13]
>          2684354560 |         2659188736 |    1048576 | 
> memory/ioBufAllocator[13]
>          2684354560 |         2675965952 |    1048576 | 
> memory/ioBufAllocator[13]
>          2717908992 |         2690646016 |    1048576 | 
> memory/ioBufAllocator[13]
>          2717908992 |         2713714688 |    1048576 | 
> memory/ioBufAllocator[13]
>          2785017856 |         2758803456 |    1048576 | 
> memory/ioBufAllocator[13]
>          2818572288 |         2792357888 |    1048576 | 
> memory/ioBufAllocator[13]
>          2852126720 |         2823815168 |    1048576 | 
> memory/ioBufAllocator[13]
>          2885681152 |         2882535424 |    1048576 | 
> memory/ioBufAllocator[13]
>          2952790016 |         2921332736 |    1048576 | 
> memory/ioBufAllocator[13]
>          2986344448 |         2959081472 |    1048576 | 
> memory/ioBufAllocator[13]
>          2986344448 |         2985295872 |    1048576 | 
> memory/ioBufAllocator[13]
>          3019898880 |         3014656000 |    1048576 | 
> memory/ioBufAllocator[13]
>          3087007744 |         3067084800 |    1048576 | 
> memory/ioBufAllocator[13]
>          3120562176 |         3104833536 |    1048576 | 
> memory/ioBufAllocator[13]
>          3154116608 |         3146776576 |    1048576 | 
> memory/ioBufAllocator[13]
>          3187671040 |         3186622464 |    1048576 | 
> memory/ioBufAllocator[13]
>          3221225472 |         3220176896 |    1048576 | 
> memory/ioBufAllocator[13]
>          3288334336 |         3268411392 |    1048576 | 
> memory/ioBufAllocator[13]
>          3321888768 |         3292528640 |    1048576 | 
> memory/ioBufAllocator[13]
>          3355443200 |         3344957440 |    1048576 | 
> memory/ioBufAllocator[13]
>          3388997632 |         3364880384 |    1048576 | 
> memory/ioBufAllocator[13]
>          3388997632 |         3387949056 |    1048576 | 
> memory/ioBufAllocator[13]
>          3422552064 |         3404726272 |    1048576 | 
> memory/ioBufAllocator[13]
>          3456106496 |         3423600640 |    1048576 | 
> memory/ioBufAllocator[13]
> Complete memory dump at some point:
>     allocated      |        in-use      | type size  |   free list name
> --------------------|--------------------|------------|----------------------------------
>           201326592 |          174063616 |    2097152 | 
> memory/ioBufAllocator[14]
>          3623878656 |         3597664256 |    1048576 | 
> memory/ioBufAllocator[13]
>          1811939328 |         1811939328 |     524288 | 
> memory/ioBufAllocator[12]
>          1400897536 |         1400635392 |     262144 | 
> memory/ioBufAllocator[11]
>          1283457024 |         1281490944 |     131072 | 
> memory/ioBufAllocator[10]
>          1663041536 |         1542127616 |      65536 | 
> memory/ioBufAllocator[9]
>          1693450240 |         1058897920 |      32768 | 
> memory/ioBufAllocator[8]
>           725614592 |          635879424 |      16384 | 
> memory/ioBufAllocator[7]
>           398196736 |          357244928 |       8192 | 
> memory/ioBufAllocator[6]
>           856686592 |          833167360 |       4096 | 
> memory/ioBufAllocator[5]
>                   0 |                  0 |       2048 | 
> memory/ioBufAllocator[4]
>              131072 |              61440 |       1024 | 
> memory/ioBufAllocator[3]
>               65536 |              24576 |        512 | 
> memory/ioBufAllocator[2]
>             1638400 |            1135616 |        256 | 
> memory/ioBufAllocator[1]
>             1081344 |             643072 |        128 | 
> memory/ioBufAllocator[0]
>             4325376 |             250368 |        512 | 
> memory/FetchSMAllocator
>                   0 |                  0 |        592 | 
> memory/ICPRequestCont_allocator
>                   0 |                  0 |        112 | 
> memory/ICPPeerReadContAllocator
>                   0 |                  0 |        432 | 
> memory/PeerReadDataAllocator
>                4096 |                  0 |         32 | 
> memory/MIMEFieldSDKHandle
>                   0 |                  0 |        240 | 
> memory/INKVConnAllocator
>               12288 |               1248 |         96 | 
> memory/INKContAllocator
>                4096 |                 32 |         32 | 
> memory/apiHookAllocator
>                   0 |                  0 |         96 | 
> memory/prefetchLockHandlerAllocator
>                   0 |                  0 |        320 | 
> memory/PrefetchBlasterAllocator
>                   0 |                  0 |        208 | 
> memory/prefetchUrlBlaster
>                   0 |                  0 |        224 | memory/blasterUrlList
>                   0 |                  0 |        192 | 
> memory/prefetchUrlEntryAllocator
>                   0 |                  0 |        128 | 
> memory/socksProxyAllocator
>                   0 |                  0 |        144 | 
> memory/ObjectReloadCont
>            16625664 |           13732048 |        656 | 
> memory/httpClientSessionAllocator
>            56150016 |            1593072 |       7696 | memory/httpSMAllocator
>              200704 |              62720 |        224 | 
> memory/httpServerSessionAllocator
>                   0 |                  0 |         48 | 
> memory/CacheLookupHttpConfigAllocator
>                   0 |                  0 |       7744 | 
> memory/httpUpdateSMAllocator
>             1892352 |             109312 |        224 | 
> memory/spdyRequestAllocator
>             1794048 |            1698432 |        192 | 
> memory/spdyClientSessionAllocator
>                   0 |                  0 |        128 | 
> memory/RemapPluginsAlloc
>                   0 |                  0 |         48 | 
> memory/CongestRequestParamAllocator
>                   0 |                  0 |        144 | 
> memory/CongestionDBContAllocator
>              360448 |               1792 |        256 | 
> memory/httpCacheAltAllocator
>            41943040 |           20996096 |       2048 | memory/hdrStrHeap
>            58982400 |           23791616 |       2048 | memory/hdrHeap
>                   0 |                  0 |        112 | 
> memory/OneWayTunnelAllocator
>              589824 |               2304 |       2304 | 
> memory/hostDBContAllocator
>              203136 |              33856 |      33856 | memory/dnsBufAllocator
>              327680 |                  0 |       1280 | 
> memory/dnsEntryAllocator
>                   0 |                  0 |         16 | 
> memory/DNSRequestDataAllocator
>                   0 |                  0 |         48 | 
> memory/ClusterVConnectionCache::Entry
>                   0 |                  0 |        576 | 
> memory/cacheContAllocator
>                   0 |                  0 |        112 | 
> memory/inControlAllocator
>                   0 |                  0 |        112 | 
> memory/outControlAllocator
>                   0 |                  0 |         32 | 
> memory/byteBankAllocator
>                   0 |                  0 |        592 | 
> memory/clusterVCAllocator
>                   0 |                  0 |         48 | memory/evacuationKey
>                6144 |                  0 |         48 | memory/cacheRemoveCont
>              208896 |             207552 |         96 | memory/evacuationBlock
>             9621504 |            6307616 |        928 | 
> memory/cacheVConnection
>             1474560 |             941280 |        160 | memory/openDirEntry
>                   0 |                  0 |         96 | 
> memory/RamCacheCLFUSEntry
>             8986624 |            8785728 |         64 | 
> memory/RamCacheLRUEntry
>            69396480 |           68240160 |        720 | 
> memory/sslNetVCAllocator
>                   0 |                  0 |        128 | 
> memory/UDPIOEventAllocator
>            13473792 |           11788192 |        688 | memory/netVCAllocator
>                   0 |                  0 |        128 | 
> memory/udpReadContAllocator
>                   0 |                  0 |        160 | 
> memory/udpPacketAllocator
>                   0 |                  0 |        384 | memory/socksAllocator
>            14876672 |           12889408 |         64 | 
> memory/ioBlockAllocator
>            17006592 |           15877632 |         48 | memory/ioDataAllocator
>            34836480 |           27895920 |        240 | memory/ioAllocator
>            11970560 |           11386880 |         80 | memory/mutexAllocator
>             3170304 |            1586976 |         96 | memory/eventAllocator
>             4456448 |             159744 |       1024 | memory/ArenaBlock
> top command showing traffic_server taking 15g RES mem:
>   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND          
>                                                                               
>                             
>  6274 nobody    20   0 19.9g  15g 8428 S 480.3 65.2   1798:44 
> /home/y/bin/traffic_server -M --httpport 
> 80:fd=7,81:fd=8,82:fd=9,83:fd=10,84:fd=11,85:fd=12,90:fd=13,80:fd=14:ipv6,81:fd=15
> {code}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to