prometheus/scrape
Łukasz Mierzwa c013a3c1b5 Check of duplicated samples directly in scrapeCache.get()
Avoid extra map lookup by hooking check into cache get.

```
goos: linux
goarch: amd64
pkg: github.com/prometheus/prometheus/scrape
cpu: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz
                     │  main.txt   │              new.txt               │
                     │   sec/op    │   sec/op     vs base               │
ScrapeLoopAppend-8     66.72µ ± 0%   66.89µ ± 0%       ~ (p=0.879 n=50)
ScrapeLoopAppendOM-8   66.61µ ± 0%   66.89µ ± 1%       ~ (p=0.115 n=50)
geomean                66.66µ        66.89µ       +0.34%

                     │   main.txt    │               new.txt                │
                     │     B/op      │     B/op      vs base                │
ScrapeLoopAppend-8     20.17Ki ±  1%   20.12Ki ± 1%        ~ (p=0.343 n=50)
ScrapeLoopAppendOM-8   20.38Ki ± 10%   17.99Ki ± 2%  -11.69% (p=0.017 n=50)
geomean                20.27Ki         19.03Ki        -6.14%

                     │  main.txt  │               new.txt               │
                     │ allocs/op  │ allocs/op   vs base                 │
ScrapeLoopAppend-8     11.00 ± 0%   11.00 ± 0%       ~ (p=1.000 n=50) ¹
ScrapeLoopAppendOM-8   12.00 ± 0%   12.00 ± 0%       ~ (p=1.000 n=50) ¹
geomean                11.49        11.49       +0.00%
¹ all samples are equal
```

Signed-off-by: Łukasz Mierzwa <l.mierzwa@gmail.com>
2024-02-27 12:09:37 +00:00
..
testdata Re-generate test cert to fix test_windows test failures 2022-03-17 19:37:18 +01:00
clientprotobuf.go Update according to code review 2023-05-05 02:33:00 +08:00
helpers_test.go scrape tests: check NaN values directly 2024-02-08 19:30:20 +00:00
manager.go Merge pull request #13167 from bboreham/simplify-TargetsActive 2023-12-20 12:27:50 +00:00
manager_test.go scraping: reset symbol table periodically 2024-02-26 11:45:25 +00:00
metrics.go scrape: consistent function names for metadata 2023-11-23 09:08:02 +00:00
scrape.go Check of duplicated samples directly in scrapeCache.get() 2024-02-27 12:09:37 +00:00
scrape_test.go Move staleness tracking out of checkAddError() calls 2024-02-27 11:36:16 +00:00
target.go scraping: pass a Builder to get Target labels 2024-02-26 11:45:25 +00:00
target_test.go scraping: pass a Builder to get Target labels 2024-02-26 11:45:25 +00:00