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

Sorted key/value store (badger) backed storage plugin #760

Merged
merged 32 commits into from
Apr 3, 2019

Commits on Jan 28, 2019

  1. Implementation of sorted key/value store backed storage plugin for Ja…

    …eger. Implemented against badger for now.
    
    Implement Services() and Operations(service) using memory cached map which is filled from the K/V store on the startup. Also, move entry creation outside the Update() transaction to reduce blocking in the badger processing as well as implement correct TTL writing and reading.
    
    Fix ASC ordering of return set if only a single index seek was used
    
    Implement range index scanning for duration index, use common initialize and tear down for tests and benchmarks, implement a small write benchmark and do Span fetching in a single transaction.
    
    Duration only test
    
    Create configuration options and modify tests to use them. Rebased from master.
    
    Fixtures should use internal model and not domain model for comparison
    
    Fix badger storage to pass all the integration tests and enable integration tests for badger
    
    Add license headers
    
    Update dependencies
    
    Make lint happy
    
    Addressing review comments, replacing magic numbers with a sizeOf constant, using logger to indicate initialization is completed and io.Closer is used. Added maintenance thread that cleans up value log as well as exposes the size of data directories. Added some comments for multiple internal functions as well as refactored FindTraces to use more functions for easier reading.
    
    Default data directory (when ephmeral is not used) is now starting directory + data/keys and data/values.
    
    Fix domain_trace_compare to check for differences between data and not pointers
    
    Add support for protoBuf encoding/decoding and make it as a default instead of json encoding in the storage
    
    Fix merge error
    
    disk statistics are only built on a Linux platform, fixes darwin compilation issues
    
    Signed-off-by: Michael Burman <miburman@redhat.com>
    burmanm authored and Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    d095edb View commit details
    Browse the repository at this point in the history
  2. Add stuff (and some tests also) to satisfy Codecov

    Signed-off-by: Michael Burman <miburman@redhat.com>
    Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    82d163a View commit details
    Browse the repository at this point in the history
  3. Add LastMaintenanceRun expvar for test purposes and remove error chec…

    …ks from stats_linux.go for codecov satisfaction
    
    Signed-off-by: Michael Burman <miburman@redhat.com>
    Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    181e044 View commit details
    Browse the repository at this point in the history
  4. Add more testing purposes timers

    Signed-off-by: Michael Burman <miburman@redhat.com>
    Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    3aff0cf View commit details
    Browse the repository at this point in the history
  5. Add dependency reader, address comments

    Signed-off-by: Michael Burman <miburman@redhat.com>
    Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    7b9eecd View commit details
    Browse the repository at this point in the history
  6. Replace expvar with metrics.Factory, rebase to new TraceReader API, r…

    …emove unused code / comments, rename MaintenanceTimer, change visibility of the ticker, make Close() remove the temp files in most cases, update dependencies to Gopkg.toml
    
    Signed-off-by: Michael Burman <miburman@redhat.com>
    Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    2e11181 View commit details
    Browse the repository at this point in the history
  7. Revert changes to the fixtures, outdated

    Signed-off-by: Michael Burman <miburman@redhat.com>
    Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    2b43039 View commit details
    Browse the repository at this point in the history
  8. Satisfy gosimple by using Equal instead of Compare

    Signed-off-by: Michael Burman <miburman@redhat.com>
    Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    d8471de View commit details
    Browse the repository at this point in the history
  9. Make factory_test check for io.Closer implementation

    Signed-off-by: Michael Burman <miburman@redhat.com>
    Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    d463076 View commit details
    Browse the repository at this point in the history
  10. Make metrics vars private to fix the liner

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro authored and Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    a8ecc16 View commit details
    Browse the repository at this point in the history
  11. Fix compile error in linux-only test

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro authored and Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    c7a86e6 View commit details
    Browse the repository at this point in the history
  12. Create artificial test to hopefully cheat Codecov

    Signed-off-by: Michael Burman <miburman@redhat.com>
    Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    663c5a6 View commit details
    Browse the repository at this point in the history
  13. Add sign-off to empty_tests

    Signed-off-by: Michael Burman <miburman@redhat.com>
    Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    fe8e652 View commit details
    Browse the repository at this point in the history
  14. Rebased and changed to metricstest

    Signed-off-by: Michael Burman <miburman@redhat.com>
    Michael Burman committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    2955789 View commit details
    Browse the repository at this point in the history

Commits on Feb 2, 2019

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

Commits on Feb 10, 2019

  1. Merge branch 'master' into local_storage

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Feb 10, 2019
    Configuration menu
    Copy the full SHA
    c1a76c3 View commit details
    Browse the repository at this point in the history
  2. dep ensure --update

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Feb 10, 2019
    Configuration menu
    Copy the full SHA
    47fdc93 View commit details
    Browse the repository at this point in the history
  3. Refactor tests int sub-packages

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Feb 10, 2019
    Configuration menu
    Copy the full SHA
    3d2fdde View commit details
    Browse the repository at this point in the history

Commits on Feb 11, 2019

  1. Merge branch 'master' into local_storage

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Feb 11, 2019
    Configuration menu
    Copy the full SHA
    c35d10e View commit details
    Browse the repository at this point in the history
  2. dep ensure --update

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Feb 11, 2019
    Configuration menu
    Copy the full SHA
    1af4a5c View commit details
    Browse the repository at this point in the history

Commits on Feb 12, 2019

  1. Change cache interfaces and add new tests to reach higher coverage

    Signed-off-by: Michael Burman <yak@iki.fi>
    burmanm committed Feb 12, 2019
    Configuration menu
    Copy the full SHA
    24ec9c2 View commit details
    Browse the repository at this point in the history
  2. Add more tests, including validation and encoding parsing tests

    Signed-off-by: Michael Burman <yak@iki.fi>
    burmanm committed Feb 12, 2019
    Configuration menu
    Copy the full SHA
    8d3408d View commit details
    Browse the repository at this point in the history
  3. Fix test refactoring to get factory coverage back to 100%

    Signed-off-by: Michael Burman <yak@iki.fi>
    burmanm committed Feb 12, 2019
    Configuration menu
    Copy the full SHA
    7b81610 View commit details
    Browse the repository at this point in the history

Commits on Feb 13, 2019

  1. Change dependencyreader to use spanstore

    Signed-off-by: Michael Burman <yak@iki.fi>
    burmanm committed Feb 13, 2019
    Configuration menu
    Copy the full SHA
    8606253 View commit details
    Browse the repository at this point in the history
  2. Remove redundant consts

    Signed-off-by: Michael Burman <yak@iki.fi>
    burmanm committed Feb 13, 2019
    Configuration menu
    Copy the full SHA
    e575e4c View commit details
    Browse the repository at this point in the history

Commits on Apr 2, 2019

  1. Merge branch 'master' into local_storage

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Apr 2, 2019
    Configuration menu
    Copy the full SHA
    bfb1b7d View commit details
    Browse the repository at this point in the history
  2. dep update

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Apr 2, 2019
    Configuration menu
    Copy the full SHA
    10705ba View commit details
    Browse the repository at this point in the history
  3. make fmt

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Apr 2, 2019
    Configuration menu
    Copy the full SHA
    8bf30ad View commit details
    Browse the repository at this point in the history
  4. regen proto files

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Apr 2, 2019
    Configuration menu
    Copy the full SHA
    10b4b57 View commit details
    Browse the repository at this point in the history

Commits on Apr 3, 2019

  1. Merge branch 'master' into local_storage

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Apr 3, 2019
    Configuration menu
    Copy the full SHA
    e053151 View commit details
    Browse the repository at this point in the history
  2. dep --update

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Apr 3, 2019
    Configuration menu
    Copy the full SHA
    25d27cb View commit details
    Browse the repository at this point in the history
  3. make proto

    Signed-off-by: Yuri Shkuro <ys@uber.com>
    Yuri Shkuro committed Apr 3, 2019
    Configuration menu
    Copy the full SHA
    89e8522 View commit details
    Browse the repository at this point in the history