Changes with Apache Traffic Server 6.1.1

Bug:
  *) [TS-4142] Compile errors on OmniOS
  *) [TS-4165] Logging breaks if changing log format
  *) [TS-4168] Only close inactive and active connections that have a non-zero timeout
  *) [TS-4170] Error receiving data frame on closed connection for HTTP/2


Changes with Apache Traffic Server 6.1.0

Bug:
  *) [TS-3234] "crc" field shows "TCP_REFRESH_HIT" though ATS dosen't cache
  *) [TS-3490] mysql_remap Plugin compile fails on Mac OS X 10.10
  *) [TS-3710] Crash in TLS with 6.0.0, related to the session cleanup additions
  *) [TS-3740] header_rewrite plugin: set-redirect doesn't work with SEND_RESPONSE_HDR_HOOK
  *) [TS-3777] TSHttpConnect and POST request does not fire TS_VCONN_READ_COMPLETE nor TS_VCONN_EOS
  *) [TS-3792] Pointing proxy.config.dns.resolv_conf at an empty (or nonexistant) file causes segmentation faults on first DNS q...
  *) [TS-3797] Crashes due to cross-thread race conditions
  *) [TS-3813] Correct responses when half-closed stream receive frames
  *) [TS-3815] traffic_ctl should filter record searches
  *) [TS-3841] LogAccess.cc assert failed when enabling custom log and stats_over_http plugin
  *) [TS-3847] Rejects Dynamic Table Size if it does not appear at the beginning of the first header block
  *) [TS-3848] ATS runs without cache or partial cache on disk errors
  *) [TS-3859] regex_remap can have pcre_study() fail on some platforms for simple regex
  *) [TS-3865] CID 1317247 and 1317248: Null pointer dereference
  *) [TS-3867] traffic_server seg faults in qsort call inside SSLContextStorage destructor
  *) [TS-3871] VC Migration Can Lose Events
  *) [TS-3873] CID 1320627 Uninitialized variables in TSControlMain.c
  *) [TS-3878] icp.config is not reloadable
  *) [TS-3883] ats_madvise() has no effect on Linux (including MADV_DONTDUMP)
  *) [TS-3885] Regression tests SDK_API_TSNetVConn and SDK_API_TSPortDescriptor run forever
  *) [TS-3888] Initialize memory if our buffer is big enough
  *) [TS-3894] Missing NULL checks in HttpSM::handle_server_setup_error
  *) [TS-3901] Leaking connections from HttpSessionManager
  *) [TS-3908] Build warning in WCCP
  *) [TS-3912] 200 OK returned on successful conditional request if Last-Modified header not present in stored response
  *) [TS-3916] garbled configure output in OpenSSL checks
  *) [TS-3921] HTTP/2 send protocol error on invalid data frame
  *) [TS-3927] Open Write retries not working and make the setting overridable.
  *) [TS-3932] TCP TOS not working
  *) [TS-3934] Missing include file in s3_auth plugin
  *) [TS-3935] Compile errors (warnings) with modern clang
  *) [TS-3942] Crash when enumerating HostDB records in HostDB UI
  *) [TS-3944] port is not used in TSHttpTxnServerAddrSet
  *) [TS-3945] ASAN error in HTTP/2 when trying to decode 0 length buffer
  *) [TS-3951] Support cache generation overridable setting in ts_lua
  *) [TS-3952] SSLNetVConnection::free crashes when "nh" is not initialized
  *) [TS-3953] When closing a connection from the active queue it uses the keep-alive queue
  *) [TS-3954] Latency with SPDY/HTTP/2 when chunking disabled (not default setting)
  *) [TS-3956] header_rewrite applies strange logic with = operator and whitespace
  *) [TS-3957] core dump from SpdyClientSession::state_session_start
  *) [TS-3958] HTTP/2 core dump with NULL FetchSM
  *) [TS-3960] traffic_line -x doesn't reload SSL certs content
  *) [TS-3962] CID 1325824:    (USE_AFTER_FREE) in malloc_bulkfree()
  *) [TS-3963] Response headers are not completely transferred when over 4KB
  *) [TS-3964] Stat for total time spent for HTTP/2 is 0
  *) [TS-3969] NetHandler::mainNetEvent always output DEBUG info "Unhandled epoll event" for EVENTIO_READ
  *) [TS-3975] ESI plugin missing TSPluginRegister
  *) [TS-3982] ESI logs debug output using TSError
  *) [TS-3984] CID 1328817:  Resource leaks  (CTOR_DTOR_LEAK) in multiplexer plugin
  *) [TS-3989] ET_NET 0 did not set CPU affinity
  *) [TS-3990] CID 1332248:    (NEGATIVE_RETURNS) in lib/ts/ink_queue.cc (freelist)
  *) [TS-3991] Coredump seen on plugins written using CPP API
  *) [TS-4003] CID 1338381 & 1022062: in traffic_cop
  *) [TS-4004] ASAN crash while running regression test Cache_vol
  *) [TS-4005] Disable freelist command line option fails under ASAN
  *) [TS-4007] ClassAllocator: don't attempt to destruct the prototype object when ClassAllocator goes out of scope.
  *) [TS-4008] Cleanup SPDY ClientSessionSession / SpdyRequest Allocate and Deallocate code
  *) [TS-4009] stale_while_revalidate crash
  *) [TS-4011] HTTP/2 coredump with NULL FetchSM, another one
  *) [TS-4013] coredump in diag debug
  *) [TS-4019] Headers passed via HTTP/2 should be validated before passing to FetchSM
  *) [TS-4028] Does not delete old TrackerContinuation while re-setting proxy.config.dump_mem_info_frequency
  *) [TS-4035] Simple plugin code is wrong
  *) [TS-4040] Few variadic functions in Diags.cc and wccp-test-router.cc omit calling va_end(..)
  *) [TS-4047] Multiple -rpath options are not handled correctly
  *) [TS-4050] Crash when buckets=0 is configured in cache_promote plugin
  *) [TS-4054] Incorrect ink_assert behavior in Diags.cc
  *) [TS-4055] Coredump when closing a transaction with a stalled connection to the origin
  *) [TS-4057] Missing check for system call error
  *) [TS-4059] Default value for proxy.config.bin_path does not use value from config.layout
  *) [TS-4062] CID 1341764, 1341763 Control flow issues and resource leak in H2
  *) [TS-4063] Regression Test for HPACK Encoder is failed
  *) [TS-4070] RemapProcessor Forward Mapping with Recv Port failing with TS-2157 changes
  *) [TS-4071] Unused mutex Diags::rotate_lock
  *) [TS-4078] CID 1343334:  Uninitialized members in Rollback.cc
  *) [TS-4082] Huffman Encoder can not encode "0"
  *) [TS-4084] Empty README.md file
  *) [TS-4089] CID 1343608, 1343607: Parent selection Coverity issues
  *) [TS-4091] [ats-multiplexer] multiplexer breaks in the presence of internal headers
  *) [TS-4097] HPACK encoder doesn't handle empty value
  *) [TS-4106] Cache Inspector fails to split multiline URLs
  *) [TS-4118] CID 1347871:  Memory - illegal accesses in RegressionHPACK.cc
  *) [TS-4125] Wrong non-active conditions check
  *) [TS-4130] Wrong LRU pool used when managing queue
  *) [TS-4131] InactivityCop doesn't close active connections that have timed out
  *) [TS-4134] Traffic Manager aborts on attempted privilege escalation when non-root.
  *) [TS-4139] CID 1348542: Unchecked return value in Http2ConnectionState
  *) [TS-4140] CID 1348541:  Control flow issues  (DEADCODE)
  *) [TS-4141] CID 1348540:  Null pointer dereferences
  *) [TS-4142] Compile errors on OmniOS

Improvement:
  *) [TS-306] Enable log rotation for diags.log
  *) [TS-315] Add switch to disable config file generation/runtime behavior changing
  *) [TS-2118] memcached plugin is in the source tree but does not build
  *) [TS-2427] xdebug: Trigger should be configurable
  *) [TS-2523] Automatically max out the listen backlog
  *) [TS-2861] traffic_ctl option to find differences from defaults
  *) [TS-3072] Debug logging for a single connection in production traffic.
  *) [TS-3478] Indexing header representations on HPACK encoder
  *) [TS-3827] Cleanup code only depends on drafts of HTTP/2
  *) [TS-3833] healthecks plugin should use PATH_NAME_MAX
  *) [TS-3835] Make open_write_fail_action setting overridable and do not apply the setting for 3xx redirect follow.
  *) [TS-3843] Strange framing should be handled as usual
  *) [TS-3852] Add Huffman Encoder in HPACK
  *) [TS-3856] Add more APIs for ts_lua plugin
  *) [TS-3858] Remove xfree cruft
  *) [TS-3872] Enhance open_write_fail_action feature to support returning error on revalidation.
  *) [TS-3875] Have SPDY allocate the MIOBuffers directly so we can track memory usage better
  *) [TS-3877] Add a tracking ClassAllocator to keep track of where the allocation happened
  *) [TS-3879] Update headers for Google Profiler and add support for the heap profiler
  *) [TS-3880] Remove MEMPROTECT cruft
  *) [TS-3891] Allow "make clang-format" to be parallelized
  *) [TS-3893] Make redirect follow setting overridable.
  *) [TS-3903] Add a "Diags" header option to xdebug plugin
  *) [TS-3918] Runtime option to disable freelists
  *) [TS-3924] Simplify debugging macros in cache_range_requests plugin
  *) [TS-3928] TSRemapNewInstance should not be required
  *) [TS-3966] header_rewrite does not allow to deny requests in remap / read-request-her hook
  *) [TS-3967] Set stream state to close after a RST_STEAM has been sent
  *) [TS-3968] Remove dead ink_auth_api code
  *) [TS-3972] Supporting get incoming port of the client request in ts_lua
  *) [TS-3983] traffic_ctl should not exit if manager is not running
  *) [TS-3985] TSHttpTxnCacheLookupStatusSet(HIT_STALE) calls cause a crash
  *) [TS-3986] Restore validations for flags of HTTP/2 Frame
  *) [TS-3994] Internal Redirect follow should allow to use API set cache key.
  *) [TS-3998] Disable h2c upgrades (for now)
  *) [TS-4001] Cleanup HTTP/2 components
  *) [TS-4006] Promote the healthchecks plugin out of the experimental plugins
  *) [TS-4010] Add cached request/response to the CPP API transaction object
  *) [TS-4016] Add the ability to skip the remap phase of the SM
  *) [TS-4018] Use the huffman encode in HPACK
  *) [TS-4029] Remove _strlen() and _memcpy()
  *) [TS-4030] Add option to remove query string from URL hashing in consistent hash parent selection method.
  *) [TS-4034] Minor atscppapi cleanup
  *) [TS-4036] Make Lua build flags consistent
  *) [TS-4038] Redundant `isdigit(b)` in `LogFormat::parse_escape_string(const char*, int)`
  *) [TS-4039] StreamHashTable::deleteStaleStreams doesn't initialize the value of "int i" that it iterates on
  *) [TS-4045] Improvement for ts_lua plugin
  *) [TS-4051] header_rewrite: Add a debug statement for the set-conn-dscp action
  *) [TS-4052] auto_ptr is deprecated and should not be used in our code
  *) [TS-4053] Add hit rate and memory usage regressions for RAM cache, tune CLFUS.
  *) [TS-4060] traffic_layout JSON option does't always work
  *) [TS-4073] Remove duplicated diagnostics
  *) [TS-4088] Add support for BoringSSL

New Feature:
  *) [TS-2520] Add TCP fastopen support for incoming TCP connections
  *) [TS-3418] Second hash ring for consistently hashed parent selection
  *) [TS-3648] Desire support for client TLS cipher in custom log format
  *) [TS-3818] traffic_ctl subcommand to show default configuration values
  *) [TS-3831] Overridable error response type
  *) [TS-3876] Add unit test framework for scripts for lua plugin
  *) [TS-3881] New TS API TSHttpTxnInfoIntGet.
  *) [TS-3900] Create log tag for server connection reuse
  *) [TS-3911] New log tag for proxy connection being over SSL, pqssl
  *) [TS-3940] Add turning on transaction debug from header_rewrite
  *) [TS-3961] Open source Yahoo's ats-multiplexer plug-in
  *) [TS-4021] Lua Plugin - Expose API Call TSHttpTxnFollowRedirect()
  *) [TS-4023] cachekey plugin
  *) [TS-4079] Support for arbitrary esi vars through HTTP request headers
  *) [TS-4081] Allow escalate plugin to use the pristine URL when retrying

Test:
  *) [TS-3782] Add tests for HTTP/2 in TSQA
