Skip to content
Snippets Groups Projects
Commit 60ef2016 authored by Krasi Georgiev's avatar Krasi Georgiev
Browse files

add a cancel func to the scrape pool as it is needed in the scrape loop select block

parent 80182a5d
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -126,6 +126,7 @@ type scrapePool struct {
targets map[uint64]*Target
droppedTargets []*Target
loops map[uint64]loop
cancel context.CancelFunc
 
// Constructor for new scrape loops. This is settable for testing convenience.
newLoop func(*Target, scraper) loop
Loading
Loading
@@ -148,7 +149,9 @@ func newScrapePool(cfg *config.ScrapeConfig, app Appendable, logger log.Logger)
 
buffers := pool.NewBytesPool(163, 100e6, 3)
 
ctx, cancel := context.WithCancel(context.Background())
sp := &scrapePool{
cancel: cancel,
appendable: app,
config: cfg,
client: client,
Loading
Loading
@@ -158,7 +161,7 @@ func newScrapePool(cfg *config.ScrapeConfig, app Appendable, logger log.Logger)
}
sp.newLoop = func(t *Target, s scraper) loop {
return newScrapeLoop(
context.Background(),
ctx,
s,
log.With(logger, "target", t),
buffers,
Loading
Loading
@@ -173,6 +176,7 @@ func newScrapePool(cfg *config.ScrapeConfig, app Appendable, logger log.Logger)
 
// stop terminates all scrape loops and returns after they all terminated.
func (sp *scrapePool) stop() {
sp.cancel()
var wg sync.WaitGroup
 
sp.mtx.Lock()
Loading
Loading
Loading
Loading
@@ -75,6 +75,7 @@ func TestScrapePoolStop(t *testing.T) {
sp := &scrapePool{
targets: map[uint64]*Target{},
loops: map[uint64]loop{},
cancel: func() {},
}
var mtx sync.Mutex
stopped := map[uint64]bool{}
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment