Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HTTP/2 backports for 8.1.x (part 1) #6581

Merged
merged 19 commits into from
Mar 30, 2020
Merged

HTTP/2 backports for 8.1.x (part 1) #6581

merged 19 commits into from
Mar 30, 2020

Commits on Mar 27, 2020

  1. Reduce process duration of test_Http2FrequencyCounter

    (cherry picked from commit 0ad8519)
    masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    4deb7cd View commit details
    Browse the repository at this point in the history
  2. Add history to HTTP/2

    (cherry picked from commit 84d59dc)
    
    Conflicts:
    	proxy/http2/Http2ClientSession.cc
    	proxy/http2/Http2Stream.cc
    masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    ef63035 View commit details
    Browse the repository at this point in the history
  3. HTTP/2: increment write_vio.ndone by consumed size

    (cherry picked from commit d3639e0)
    masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    c7ea72c View commit details
    Browse the repository at this point in the history
  4. HTTP/2: cancel reading buffer when ATS received GOAWAY

    (cherry picked from commit 2047495)
    
    Conflicts:
    	proxy/http2/Http2ClientSession.cc
    masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    63a0ebe View commit details
    Browse the repository at this point in the history
  5. Separate out common header compression logic to hdrs directory

    (cherry picked from commit eb87569)
    
    Conflicts:
    	.gitignore
    	proxy/hdrs/Makefile.am
    	proxy/http2/HPACK.cc
    maskit authored and masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    1255a27 View commit details
    Browse the repository at this point in the history
  6. Log H2 errors with the codes

    (cherry picked from commit 8510a1c)
    maskit authored and masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    5e8f47d View commit details
    Browse the repository at this point in the history
  7. HTTP/2 - tweak for better field name handling.

    (cherry picked from commit 26c039d)
    SolidWallOfCode authored and masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    50db081 View commit details
    Browse the repository at this point in the history
  8. Convert regression tests for XPACK into Catch based unit tests

    (cherry picked from commit fd5c84a)
    
    Conflicts:
    	.gitignore
    	proxy/hdrs/Makefile.am
    	proxy/http2/RegressionHPACK.cc
    masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    ea4c7c9 View commit details
    Browse the repository at this point in the history
  9. Add slow logs for HTTP/2 Connection & Stream

    (cherry picked from commit 0d2ad23)
    
    Conflicts:
    	proxy/http2/HTTP2.cc
    	proxy/http2/HTTP2.h
    	proxy/http2/Http2Stream.cc
    	proxy/http2/Http2Stream.h
    masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    0eefa91 View commit details
    Browse the repository at this point in the history
  10. Allocate DependencyTree only if HTTP/2 stream priority is enabled

    (cherry picked from commit b2f6264)
    masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    7a41396 View commit details
    Browse the repository at this point in the history
  11. Record HttpSM Id on new transaction

    There is a path of Http2Stream::update_read_request() starts shutdown
    and make current_reader nullptr. Copying HttpSM Id from current_reader
    should be done before the update_read_request() call.
    
    (cherry picked from commit 296cf29)
    masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    055d125 View commit details
    Browse the repository at this point in the history
  12. Cleanup: Remove unused function & old comments

    (cherry picked from commit 59c4a58)
    masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    107d5d5 View commit details
    Browse the repository at this point in the history
  13. Cleanup: Signal READ_READY event only if the buffer is readable

    READ_READY event is always signaled itself when Http2ClientSession is started.
    But this could waste some CPU cycle if there no data to read.
    
    (cherry picked from commit 03ff337)
    masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    9d12a32 View commit details
    Browse the repository at this point in the history
  14. Doc: Add documentation for HTTP/2 statistics

    (cherry picked from commit 532fa0d)
    
    Conflicts:
    	doc/admin-guide/monitoring/statistics/core/http-connection.en.rst
    masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    91ec71a View commit details
    Browse the repository at this point in the history
  15. Provide stats for the recently introduced HTTP/2 rate limits

    Provide stats for the limits introduced by 9c09dbc
    
    (cherry picked from commit 5ec8112)
    jvgutierrez authored and masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    8b75473 View commit details
    Browse the repository at this point in the history
  16. Allow disabling HTTP/2 priority frames limit

    (cherry picked from commit f2ebbce)
    jvgutierrez authored and masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    777ba85 View commit details
    Browse the repository at this point in the history
  17. Add a config for internal HPACK header table size limit

    This introduces proxy.config.http2.header_table_size_limit that enables to
    configure internal HPACK header table size limit currently hard coded as 64KB.
    
    (cherry picked from commit 9c05e64)
    maskit authored and masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    6079998 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    c809466 View commit details
    Browse the repository at this point in the history
  19. Make sure shutdown_cont_event isn't holding any garbage references.

    As it seems like there could be a race condition because the handling of
    HTTP2_SESSION_EVENT_SHUTDOWN_INIT is going through the event loop again
    and therefore may come in after the Session and its
    associated contexts are already cleaned up thus causing an use-after-free possibility
    
    (cherry picked from commit b0685db)
    sudheerv authored and masaori335 committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    b12129d View commit details
    Browse the repository at this point in the history