X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=CHANGELOG.md;h=56591cb7652b2f638181428cce753ae7171a1f02;hb=84de2e11c47b9c9c12f3b0ab6de4a0485374d0ef;hp=1c61fc49de631077b2b075f052dbce1944d02c25;hpb=5bb5be17a795c3061bdb0a7748b42b2ba2060db3;p=poolifier.git diff --git a/CHANGELOG.md b/CHANGELOG.md index 1c61fc49..56591cb7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Added + +- Add `queueMaxSize` option to tasks queue options. +- Add O(1) deque implementation implemented with doubly linked list and use it for tasks queueing. + +## [2.6.31] - 2023-08-20 + +### Fixed + +- Fix worker choice strategy retries mechanism in some edge cases. + +### Changed + +- Make orthogonal worker choice strategies tasks distribution and created dynamic worker usage. +- Remove the experimental status of the `LEAST_ELU` worker choice strategy. + +## [2.6.30] - 2023-08-19 + +### Fixed + +- Ensure pool event `backPressure` is emitted. +- Ensure pool event `full` is emitted only once. +- Ensure worker node cannot be instantiated without proper arguments. + +## [2.6.29] - 2023-08-18 + ### Fixed - Fix race condition between ready and task functions worker message handling at startup. @@ -16,7 +42,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- Add back pressure detection on the worker node queue. Event `backPressure` is emitted all worker node queues are full (worker node queue size >= poolMaxSize^2). +- Add back pressure detection on the worker node queue. Event `backPressure` is emitted when all worker node queues are full (worker node queue size >= poolMaxSize^2). - Use back pressure detection in worker choice strategies. - Add worker choice strategies retries mechanism if no worker is eligible. @@ -99,7 +125,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed - Fix queued tasks redistribution on error task execution starvation. -- Ensure task queueing per worker condition is untangled from the pool busyness semantic. +- Ensure tasks queueing per worker condition is untangled from the pool busyness semantic. ### Changed @@ -207,7 +233,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- Add safe helper `availableParallelism` to help sizing the pool. +- Add safe helper `availableParallelism()` to help sizing the pool. ### Fixed @@ -222,7 +248,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed - Artificial version bump to 2.6.5 to workaround publication issue. -- Ensure cluster pool destroy() gracefully shutdowns worker's server. +- Ensure cluster pool `destroy()` gracefully shutdowns worker's server. - Ensure pool event is emitted before task error promise rejection. - Fix queued tasks count computation. @@ -238,7 +264,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed -- Ensure cluster pool destroy() gracefully shutdowns worker's server. +- Ensure cluster pool `destroy()` gracefully shutdowns worker's server. - Ensure pool event is emitted before task error promise rejection. - Fix queued tasks count computation.