This project is mirrored from https://github.com/prometheus/prometheus.git. Updated .
  1. 09 Sep, 2020 1 commit
  2. 27 Aug, 2020 1 commit
  3. 22 Aug, 2020 1 commit
  4. 11 Aug, 2020 1 commit
  5. 05 Aug, 2020 1 commit
  6. 25 Jul, 2020 1 commit
  7. 23 Jul, 2020 1 commit
  8. 22 Jul, 2020 1 commit
    • promql: Removed global and add ability to have better interval for subqueries if… · a0df8a38
      promql: Removed global and add ability to have better interval for subqueries if not specified (#7628)
      
      * promql: Removed global and add ability to have better interval for subqueries if not specified
      
      ## Changes
      * Refactored tests for better hints testing
      * Added various TODO in places to enhance.
      * Moved DefaultEvalInterval global to opts with func(rangeMillis int64) int64 function instead
      
      Motivation: At Thanos we would love to have better control over the subqueries step/interval.
      This is important to choose proper resolution. I think having proper step also does not harm for
      Prometheus and remote read users. Especially on stateless querier we do not know evaluation interval
      and in fact putting global can be wrong to assume for Prometheus even.
      
      I think ideally we could try to have at least 3 samples within the range, the same
      way Prometheus UI and Grafana assumes.
      
      Anyway this interfaces allows to decide on promQL user basis.
      
      Open question: Is taking parent interval a smart move?
      
      Motivation for removing global: I spent 1h fighting with:
      
      
      === RUN   TestEvaluations
          TestEvaluations: promql_test.go:31: unexpected error: error evaluating query "absent_over_time(rate(nonexistant[5m])[5m:])" (line 687): unexpected error: runtime error: integer divide by zero
      --- FAIL: TestEvaluations (0.32s)
      FAIL
      
      At the end I found that this fails on most of the versions including this master if you run this test alone. If run together with many
      other tests it passes. This is due to SetDefaultEvaluationInterval(1 * time.Minute)
      in test that is ran before TestEvaluations. Thanks to globals (:
      
      Let's fix it by dropping this global.
      Signed-off-by: 's avatarBartlomiej Plotka <bwplotka@gmail.com>
      
      * Added issue links for TODOs.
      Signed-off-by: 's avatarBartlomiej Plotka <bwplotka@gmail.com>
      
      * Removed irrelevant changes.
      Signed-off-by: 's avatarBartlomiej Plotka <bwplotka@gmail.com>
      Bartlomiej Plotka authored
  9. 13 Jul, 2020 1 commit
  10. 30 Jun, 2020 1 commit
  11. 09 Jun, 2020 1 commit
  12. 28 May, 2020 1 commit
  13. 12 May, 2020 1 commit
  14. 23 Apr, 2020 1 commit
  15. 11 Apr, 2020 1 commit
  16. 20 Mar, 2020 1 commit
  17. 14 Mar, 2020 1 commit
  18. 13 Mar, 2020 1 commit
  19. 11 Mar, 2020 1 commit
  20. 24 Feb, 2020 1 commit
  21. 17 Feb, 2020 11 commits
  22. 09 Feb, 2020 1 commit
  23. 08 Feb, 2020 2 commits
  24. 28 Jan, 2020 2 commits
    • Remove MaxConcurrent from the PromQL engine opts (#6712) · 9adad8ad
      Since we use ActiveQueryTracker to check for concurrency in
      d992c36b it does not make sense to keep
      the MaxConcurrent value as an option of the PromQL engine.
      
      This pull request removes it from the PromQL engine options, sets the
      max concurrent metric to -1 if there is no active query tracker, and use
      the value of the active query tracker otherwise.
      
      It removes dead code and also will inform people who import the promql
      package that we made that change, as it breaks the EngineOpts struct.
      Signed-off-by: 's avatarJulien Pivotto <roidelapluie@inuits.eu>
      Julien Pivotto authored
    • Don't sort postings if we only have one block. · 38d32e06
      Sorting the heads postings can be quite slow.
      We only need sorted series when merging with another
      querier, so only sort then.
      This will make big queries that only touch the head faster,
      though queries that touch both the head and a block will still
      be the same speed. This probably won't help much with graphing
      unless the range is under an hour, however it should make most
      recording rules faster.
      
      Add gaurantee that remote read streaming produces sorted series.
      
      PromQL benchmarks for histograms show only 2-3% improvement, but
      they're only over 1k series.
      
      benchmark                                                old ns/op      new ns/op      delta
      BenchmarkQuerierSelect/Head/1of1000000-4                 1375486282     507657736      -63.09%
      BenchmarkQuerierSelect/Head/10of1000000-4                1387859004     507769850      -63.41%
      BenchmarkQuerierSelect/Head/100of1000000-4               1387087935     506029110      -63.52%
      BenchmarkQuerierSelect/Head/1000of1000000-4              1386869064     504521986      -63.62%
      BenchmarkQuerierSelect/Head/10000of1000000-4             1386213685     505210422      -63.55%
      BenchmarkQuerierSelect/Head/100000of1000000-4            1392754988     529842406      -61.96%
      BenchmarkQuerierSelect/Head/1000000of1000000-4           1569414722     725059506      -53.80%
      BenchmarkQuerierSelect/SortedHead/1of1000000-4           1381019902     1370495863     -0.76%
      BenchmarkQuerierSelect/SortedHead/10of1000000-4          1375696209     1366789468     -0.65%
      BenchmarkQuerierSelect/SortedHead/100of1000000-4         1386009422     1364519297     -1.55%
      BenchmarkQuerierSelect/SortedHead/1000of1000000-4        1377700532     1364486191     -0.96%
      BenchmarkQuerierSelect/SortedHead/10000of1000000-4       1383539536     1369545314     -1.01%
      BenchmarkQuerierSelect/SortedHead/100000of1000000-4      1410089163     1394731339     -1.09%
      BenchmarkQuerierSelect/SortedHead/1000000of1000000-4     1634744148     1581554956     -3.25%
      BenchmarkQuerierSelect/Block/1of1000000-4                881741242      879839470      -0.22%
      BenchmarkQuerierSelect/Block/10of1000000-4               880381562      882846038      +0.28%
      BenchmarkQuerierSelect/Block/100of1000000-4              887519357      881016916      -0.73%
      BenchmarkQuerierSelect/Block/1000of1000000-4             902194205      883433524      -2.08%
      BenchmarkQuerierSelect/Block/10000of1000000-4            892321964      885130170      -0.81%
      BenchmarkQuerierSelect/Block/100000of1000000-4           938604466      933527150      -0.54%
      BenchmarkQuerierSelect/Block/1000000of1000000-4          1313510845     1295881124     -1.34%
      
      benchmark                                                old allocs     new allocs     delta
      BenchmarkQuerierSelect/Head/1of1000000-4                 4000056        4000018        -0.00%
      BenchmarkQuerierSelect/Head/10of1000000-4                4000074        4000036        -0.00%
      BenchmarkQuerierSelect/Head/100of1000000-4               4000254        4000216        -0.00%
      BenchmarkQuerierSelect/Head/1000of1000000-4              4002054        4002016        -0.00%
      BenchmarkQuerierSelect/Head/10000of1000000-4             4020054        4020016        -0.00%
      BenchmarkQuerierSelect/Head/100000of1000000-4            4200054        4200016        -0.00%
      BenchmarkQuerierSelect/Head/1000000of1000000-4           6000054        6000016        -0.00%
      BenchmarkQuerierSelect/SortedHead/1of1000000-4           4000071        4000071        +0.00%
      BenchmarkQuerierSelect/SortedHead/10of1000000-4          4000089        4000089        +0.00%
      BenchmarkQuerierSelect/SortedHead/100of1000000-4         4000269        4000269        +0.00%
      BenchmarkQuerierSelect/SortedHead/1000of1000000-4        4002069        4002069        +0.00%
      BenchmarkQuerierSelect/SortedHead/10000of1000000-4       4020069        4020069        +0.00%
      BenchmarkQuerierSelect/SortedHead/100000of1000000-4      4200069        4200069        +0.00%
      BenchmarkQuerierSelect/SortedHead/1000000of1000000-4     6000069        6000069        +0.00%
      BenchmarkQuerierSelect/Block/1of1000000-4                6000023        6000022        -0.00%
      BenchmarkQuerierSelect/Block/10of1000000-4               6000059        6000058        -0.00%
      BenchmarkQuerierSelect/Block/100of1000000-4              6000419        6000418        -0.00%
      BenchmarkQuerierSelect/Block/1000of1000000-4             6004019        6004018        -0.00%
      BenchmarkQuerierSelect/Block/10000of1000000-4            6040019        6040018        -0.00%
      BenchmarkQuerierSelect/Block/100000of1000000-4           6400019        6400018        -0.00%
      BenchmarkQuerierSelect/Block/1000000of1000000-4          10000020       10000019       -0.00%
      
      benchmark                                                old bytes     new bytes     delta
      BenchmarkQuerierSelect/Head/1of1000000-4                 229192200     176001176     -23.21%
      BenchmarkQuerierSelect/Head/10of1000000-4                229193352     176002328     -23.21%
      BenchmarkQuerierSelect/Head/100of1000000-4               229204872     176013848     -23.21%
      BenchmarkQuerierSelect/Head/1000of1000000-4              229320072     176129048     -23.20%
      BenchmarkQuerierSelect/Head/10000of1000000-4             230472072     177281048     -23.08%
      BenchmarkQuerierSelect/Head/100000of1000000-4            241992072     188801048     -21.98%
      BenchmarkQuerierSelect/Head/1000000of1000000-4           357192072     304001048     -14.89%
      BenchmarkQuerierSelect/SortedHead/1of1000000-4           229193928     229193928     +0.00%
      BenchmarkQuerierSelect/SortedHead/10of1000000-4          229195080     229195080     +0.00%
      BenchmarkQuerierSelect/SortedHead/100of1000000-4         229206600     229206600     +0.00%
      BenchmarkQuerierSelect/SortedHead/1000of1000000-4        229321800     229321800     +0.00%
      BenchmarkQuerierSelect/SortedHead/10000of1000000-4       230473800     230473800     +0.00%
      BenchmarkQuerierSelect/SortedHead/100000of1000000-4      241993800     241993800     +0.00%
      BenchmarkQuerierSelect/SortedHead/1000000of1000000-4     357193800     357193800     +0.00%
      BenchmarkQuerierSelect/Block/1of1000000-4                227201516     227201500     -0.00%
      BenchmarkQuerierSelect/Block/10of1000000-4               227202924     227202908     -0.00%
      BenchmarkQuerierSelect/Block/100of1000000-4              227217036     227217020     -0.00%
      BenchmarkQuerierSelect/Block/1000of1000000-4             227358156     227358140     -0.00%
      BenchmarkQuerierSelect/Block/10000of1000000-4            228769356     228769340     -0.00%
      BenchmarkQuerierSelect/Block/100000of1000000-4           242881356     242881340     -0.00%
      BenchmarkQuerierSelect/Block/1000000of1000000-4          384001616     384001600     -0.00%
      Signed-off-by: 's avatarBrian Brazil <brian.brazil@robustperception.io>
      Brian Brazil authored
  25. 27 Jan, 2020 2 commits
  26. 17 Jan, 2020 1 commit
  27. 15 Jan, 2020 1 commit