bdoyle0182 opened a new pull request, #5323: URL: https://github.com/apache/openwhisk/pull/5323
## Description I don't think this is the root of my issue with the scheduler not learning that a container has been removed, but nevertheless this is a valuable refactor to make sure everything is thread safe in this actor. There should be no behavior change to the actor at all, should be 100% refactor. This pr does a couple things: 1. Move etcd worker to its own file under the etcd folder in commons 2. Clean up the error handling to remove duplicate code 3. Make the retry handling more thread safe by first forwarding the retry message and using the actor's internal timers scheduler rather than the system scheduler 4. Fix non-thread safe access to actor member variable `lease` from future callbacks through 3. 5. Add unit tests for EtcdWorker which previously wasn't covered. ## Related issue and scope <!--- Please include a link to a related issue if there is one. --> - [ ] I opened an issue to propose and discuss this change (#????) ## My changes affect the following components - [ ] API - [ ] Controller - [ ] Message Bus (e.g., Kafka) - [ ] Loadbalancer - [X] Scheduler - [X] Invoker - [ ] Intrinsic actions (e.g., sequences, conductors) - [ ] Data stores (e.g., CouchDB) - [ ] Tests - [ ] Deployment - [ ] CLI - [ ] General tooling - [ ] Documentation ## Types of changes - [X] Bug fix (generally a non-breaking change which closes an issue). - [ ] Enhancement or new feature (adds new functionality). - [ ] Breaking change (a bug fix or enhancement which changes existing behavior). ## Checklist: - [X] I signed an [Apache CLA](https://github.com/apache/openwhisk/blob/master/CONTRIBUTING.md). - [X] I reviewed the [style guides](https://github.com/apache/openwhisk/blob/master/CONTRIBUTING.md#coding-standards) and followed the recommendations (Travis CI will check :). - [X] I added tests to cover my changes. - [ ] My changes require further changes to the documentation. - [ ] I updated the documentation where necessary. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@openwhisk.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org