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

Address hdr_histogram issues #162

Merged
merged 6 commits into from
Feb 6, 2019
Merged

Commits on Jan 22, 2019

  1. Configuration menu
    Copy the full SHA
    179b156 View commit details
    Browse the repository at this point in the history

Commits on Feb 2, 2019

  1. Native erlang implementation of hdr_histogram

    - Ceil/floor compatibility with pre OTP 20 versions
    
    - No named table even for concurrent access
    
      The table id is stored in the #hist{} struct (which is shared with all
      updating processes) anyway, so no need for a registered name.  This is
      a minor optimisation to avoid name->tid lookup. (Working with tids was
      slightly optimised in OTP 20 when they became references instead of
      integers)
    
    - One table and one entry per histogram
    
      Create one table and one entry when initialising the histogram.
      Delete the whole table when deleting the histogram.
    
    Compatibility with hdr_histogram_erl NIF
    
    - Use erlang:make_tuple when reseting row
    
      This avoids creating a huge temporary list. Reset is called relatively
      infrequently, so this change does not have too big impact.
    
    - OPT: calculate bucket/subbucket index from index
    
    - Collect multiple stats in single iteration
    gomoripeti committed Feb 2, 2019
    Configuration menu
    Copy the full SHA
    ea359bd View commit details
    Browse the repository at this point in the history

Commits on Feb 5, 2019

  1. Configuration menu
    Copy the full SHA
    5f7600f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d290ece View commit details
    Browse the repository at this point in the history
  3. Add poor man's notifications

    Store pid/regname of event handler process in application env.
    
    A message in the form `{snapshost, NowTime}` is sent to the event
    handler when a snaphost is created.
    
    The testcases subscribe themselves as event handlers making them
    synchornous and bit less prone to timing issues.
    
    So far this is only used for tests but could be the start of a
    websocket-based notification system.
    gomoripeti committed Feb 5, 2019
    Configuration menu
    Copy the full SHA
    5947cb3 View commit details
    Browse the repository at this point in the history

Commits on Feb 6, 2019

  1. Configuration menu
    Copy the full SHA
    f55817d View commit details
    Browse the repository at this point in the history