🛠 What was Fixed?
- ⚡️ Go 1.7's race detector got even better and found a potential race that was not detected in Go 1.6.x and so this fixes that; no breaking changes, just update.
- ➕ Added WaitAll() function to the batch, for when you need to wait for all work to be processed, but don't need to know the results.
🌲 eg. If the Work Unit's handle their own errors, logging etc... and it doesn't need to be reported back to the calling program.
🛠 Fix gopkg.in pointing to v2.
🚀 Hi all, please update v3 by running
go get -u gopkg.in/go-playground/pool.v3, I must have selected the wrong branch while cutting the v3 release initially and it was pointing to v2, appologies for any inconvenience.
- ⚡️ updated sync.RWMutex to be non pointer; no functional changes.
- 🛠 fixed batch not unlocking mutex before return in rare case.
- 🛠 fixed race condition found in the tests, not the pool logic, but the actual test logic.
- ➕ Added race detection testing in CI tests
🛠 What was Fixed
- 👷 corrected race condition when using hook param; some workers could have had nil.
➕ Added Consumer Hook
- 👷 now can register ConsumerHook function that will be run while firing up the consumer routines and that return value will be set/passed to each job. This is particularity useful when creating a saving pool so a the consumer hook would create a database connection for each job to reuse instead of creating an additional one for each job.