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

Backport state pool leak fixes to 2.0 branch #6713

Merged
merged 4 commits into from
Dec 15, 2016

Commits on Dec 15, 2016

  1. Fix StatePool leaks

    Part of http://pad.lv/1641824 - the migration back doesn't work because
    the state references in the pool never get to 0, so they're marked for
    removal but not actually removed.
    
    Ensure that state references returned from
    httpContext.stateForRequestUnauthenticated get released back to the
    StatePool when they're finished with.
    
    In the logstream handler. since the state is created in the newSource
    closure and returned, the normal defer method doesn't work. Change
    newSource to also return a closer function that will release the state
    back to the pool and call that closer func from
    logStreamRequestHandler.close().
    babbageclunk committed Dec 15, 2016
    Configuration menu
    Copy the full SHA
    f44c15b View commit details
    Browse the repository at this point in the history
  2. Ensure resource HTTP handlers release state

    Thread the call to httpContext.release through so it can be called from
    the right place in the resource HTTP handler.
    babbageclunk committed Dec 15, 2016
    Configuration menu
    Copy the full SHA
    333d46f View commit details
    Browse the repository at this point in the history
  3. Close state leaks from the NewResourceOpener code

    This code path is a bit trickier to close than the other handler.
    babbageclunk committed Dec 15, 2016
    Configuration menu
    Copy the full SHA
    0f7db7e View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2efc381 View commit details
    Browse the repository at this point in the history