Comments (4)
Ok so I'm pretty sure it happens here:
broker.StartConsuming()
inside Launch()
from machinery.
This fixes it:
func (worker *Worker) Launch() error {
cnf := worker.server.GetConfig()
broker := worker.server.GetBroker()
log.Printf("Launching a worker with the following settings:")
log.Printf("- Broker: %s", cnf.Broker)
log.Printf("- ResultBackend: %s", cnf.ResultBackend)
log.Printf("- Exchange: %s", cnf.Exchange)
log.Printf("- ExchangeType: %s", cnf.ExchangeType)
log.Printf("- DefaultQueue: %s", cnf.DefaultQueue)
log.Printf("- BindingKey: %s", cnf.BindingKey)
errorsChan := make(chan error)
go func() {
for {
retry, err := broker.StartConsuming(worker.ConsumerTag, worker)
if err != nil {
errorsChan <- err
}
if retry {
log.Printf("Going to retry launching the worker. Error: %v", err)
}
}
}()
return <-errorsChan
}
from machinery.
@randomandy HI Andy. Thanks for catching this bug!
I'm quite busy at the moment so it might take me few days to take a look. If you want, create a PR with a fix and I will try to look at it and merge it this weekend if time allows.
from machinery.
@RichardKnop Hey Richard. Sure thing, happy to help. Fix is in #76
from machinery.
Related Issues (20)
- Log ouput Issues HOT 1
- loop forever to get tasks
- (monitoring) How to check if consumers are working well? HOT 1
- If the number of periodic tasks is too dense, the concurrent map reading fails HOT 1
- Result expiration for groups and chords
- Help with Periodic Task Run on v1 HOT 2
- why not support custom arg type?
- redis.Lock bug
- Configuration with Redis Sentinel
- goredis should add IgnoreWhenTaskNotRegistered
- Prevent more than one instance of task running at the same time
- Receiving message will not be processed until visibility timeout when worker starts to quit HOT 1
- Failed delivery of delivery tag: 0 HOT 1
- compile error: impossible type assertion HOT 2
- The result is lost before task execution
- Is this project still maintained? HOT 5
- How to bind processing functions for Period Tasks?
- Does Machinery V1 support Redis TLS connection (rediss://) HOT 1
- Periodic tasks cannot be canceled
- The pubsub version is outdated and has a vulnerability.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from machinery.