Jérôme Benoit [Thu, 6 Apr 2023 06:53:39 +0000 (08:53 +0200)]
perf: remove unneeded nullish checks in hot code paths
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Thu, 6 Apr 2023 06:40:41 +0000 (08:40 +0200)]
perf: pre-instantiate worker choice strategies
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 22:35:53 +0000 (00:35 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 5 Apr 2023 22:17:24 +0000 (00:17 +0200)]
docs: refine changelog entries
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 22:14:49 +0000 (00:14 +0200)]
fix: ensure worker key can't be negative in worker choice strategies
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 21:32:13 +0000 (23:32 +0200)]
docs: refine documentation
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 21:12:28 +0000 (23:12 +0200)]
feat: cache in a map worker choice strategy to allow conditionnal reuse
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 19:24:58 +0000 (21:24 +0200)]
refactor: move worker choice instance helper into the context class
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 17:40:46 +0000 (19:40 +0200)]
refactor: use class property if appropriate
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 17:36:58 +0000 (19:36 +0200)]
refactor: conditionally reset strategy internals
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 16:25:11 +0000 (18:25 +0200)]
build: refine editorconfig configuration
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 15:49:50 +0000 (17:49 +0200)]
feat: add 'full' event on dynamic pool emitter
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 15:06:56 +0000 (17:06 +0200)]
refactor: apply stricter strategy design pattern requirements on worker
choice code
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 13:51:41 +0000 (15:51 +0200)]
docs: update benchmarks vs. external pools
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 5 Apr 2023 13:36:11 +0000 (15:36 +0200)]
test: cleanup worker function
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 12:54:41 +0000 (14:54 +0200)]
refactor: cleanup type import
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 12:10:44 +0000 (14:10 +0200)]
chore: v2.4.1
Jérôme Benoit [Wed, 5 Apr 2023 12:03:41 +0000 (14:03 +0200)]
perf: optimize a pool type test
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 11:53:40 +0000 (13:53 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Wed, 5 Apr 2023 11:34:34 +0000 (11:34 +0000)]
chore: generate documentation
Jérôme Benoit [Wed, 5 Apr 2023 11:28:24 +0000 (13:28 +0200)]
docs: fix pool internal interface documentation
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 10:49:29 +0000 (12:49 +0200)]
refactor: propagate generics type
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 10:40:40 +0000 (12:40 +0200)]
perf: remove unneeded class indirection for dynamic pool in worker
selection code
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Wed, 5 Apr 2023 09:16:00 +0000 (09:16 +0000)]
chore: generate documentation
Jérôme Benoit [Wed, 5 Apr 2023 08:44:05 +0000 (10:44 +0200)]
fix: fix dynamic pool busy semantic
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 00:21:50 +0000 (02:21 +0200)]
fix: check worker aliveness in all case
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 23:25:18 +0000 (01:25 +0200)]
docs: refine README.md
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 22:47:47 +0000 (00:47 +0200)]
fix: only pickup a free worker with dynamic pool if the worker selection
strategy says so
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 21:57:55 +0000 (23:57 +0200)]
docs: fix code example
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 21:54:17 +0000 (23:54 +0200)]
perf: bind to this some methods in the tasks execution code path
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 17:14:26 +0000 (19:14 +0200)]
Merge branch 'master' of github.com:poolifier/poolifier
Jérôme Benoit [Tue, 4 Apr 2023 17:13:36 +0000 (19:13 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Tue, 4 Apr 2023 17:11:28 +0000 (17:11 +0000)]
chore: generate documentation
Jérôme Benoit [Tue, 4 Apr 2023 16:51:13 +0000 (18:51 +0200)]
chore: v2.4.0
Jérôme Benoit [Tue, 4 Apr 2023 14:27:59 +0000 (16:27 +0200)]
docs: update benchmarks vs. external pools
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 4 Apr 2023 12:36:34 +0000 (14:36 +0200)]
perf: allow finer grained control over tasks usage computation
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 08:19:45 +0000 (10:19 +0200)]
chore: v2.4.0-3
github-actions[bot] [Tue, 4 Apr 2023 08:09:03 +0000 (08:09 +0000)]
chore: generate documentation
Jérôme Benoit [Tue, 4 Apr 2023 08:07:18 +0000 (10:07 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 00:20:42 +0000 (02:20 +0200)]
refactor: align findFreeWorkerKey() return type with findIndex()
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 23:32:38 +0000 (01:32 +0200)]
perf: pickup free worker in the less busy and used strategies for fixed
pool
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 22:53:37 +0000 (00:53 +0200)]
test: update benchmarks vs. external pool results
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 3 Apr 2023 22:45:59 +0000 (00:45 +0200)]
test: fix FAIR_SHARE strategy in dynamic pool (take 7)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 22:37:41 +0000 (00:37 +0200)]
test: fix FAIR_SHARE strategy in dynamic pool (take 5)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 22:34:25 +0000 (00:34 +0200)]
test: fix FAIR_SHARE strategy in dynamic pool (take 4)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 22:28:24 +0000 (00:28 +0200)]
test: fix FAIR_SHARE strategy in dynamic pool (take 3)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 22:17:19 +0000 (00:17 +0200)]
test: test: fix FAIR_SHARE strategy in dynamic pool (take 2)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 22:13:27 +0000 (00:13 +0200)]
test: fix FAIR_SHARE strategy in dynamic pool
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 22:04:09 +0000 (00:04 +0200)]
refactor: remove deprecated getter in worker selection strategies code
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 21:38:29 +0000 (23:38 +0200)]
fix: ensure tasks are distributed equally at less used and less busy
strategy startup
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 21:20:17 +0000 (23:20 +0200)]
docs: enhance some methods documentation
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 20:37:09 +0000 (22:37 +0200)]
docs: update changelogs entries
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 20:29:04 +0000 (22:29 +0200)]
Merge branch 'master' of github.com:jerome-benoit/poolifier
Jérôme Benoit [Mon, 3 Apr 2023 20:27:16 +0000 (22:27 +0200)]
docs: add benchmarks vs. external threads pools on latest versions
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 3 Apr 2023 19:34:12 +0000 (21:34 +0200)]
docs: update README.md
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 18:50:00 +0000 (20:50 +0200)]
build: switch benchmarks to pnpm
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 18:23:00 +0000 (20:23 +0200)]
chore: v2.4.0-2
Jérôme Benoit [Mon, 3 Apr 2023 18:22:13 +0000 (20:22 +0200)]
docs: update changelog entries
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 18:19:04 +0000 (20:19 +0200)]
build: add --no-git-checks everywhere for pnpm publication
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 18:17:25 +0000 (20:17 +0200)]
build: ensure pnpm will publish in CI even with uncommited changes
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 18:09:13 +0000 (20:09 +0200)]
chore: v2.4.0-1
Jérôme Benoit [Mon, 3 Apr 2023 18:07:24 +0000 (20:07 +0200)]
build: fix npm registry publication with pnpm
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 17:59:59 +0000 (19:59 +0200)]
chore: v2.4.0-0
github-actions[bot] [Mon, 3 Apr 2023 17:54:10 +0000 (17:54 +0000)]
chore: generate documentation
Jérôme Benoit [Mon, 3 Apr 2023 17:49:22 +0000 (19:49 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 17:29:14 +0000 (19:29 +0200)]
docs: add missing type param
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 17:09:06 +0000 (19:09 +0200)]
fix: ensure worker removal impact is propated to worker choice strategy
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 15:13:07 +0000 (17:13 +0200)]
perf: use worker key as much as possible instead of a reference to the
worker instance
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 11:42:14 +0000 (13:42 +0200)]
perf: use worker key instead of worker instance
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 10:04:06 +0000 (12:04 +0200)]
perf: remove unneeded nullish check in hot code paths
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 09:57:46 +0000 (11:57 +0200)]
build(deps-dev): apply update
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 09:55:36 +0000 (11:55 +0200)]
refactor: condition style
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 2 Apr 2023 20:10:47 +0000 (22:10 +0200)]
perf: use a single array to store pool workers and their related data
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 2 Apr 2023 19:07:39 +0000 (21:07 +0200)]
feat: add less busy worker choice strategy to internal benchmarks
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 2 Apr 2023 18:20:37 +0000 (20:20 +0200)]
docs: highlight breaking changes
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 2 Apr 2023 17:59:21 +0000 (19:59 +0200)]
feat: add less busy worker choice strategy
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 2 Apr 2023 17:13:10 +0000 (19:13 +0200)]
refactor: rename a worker choice strategy
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 2 Apr 2023 15:52:35 +0000 (17:52 +0200)]
refactor: remove unneeded intermediate variable
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 2 Apr 2023 15:06:57 +0000 (17:06 +0200)]
refactor: remove unneeded encapsulation around tasks usage handling
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 2 Apr 2023 14:30:02 +0000 (16:30 +0200)]
perf: take into account the number of run tasks in LRU worker choice
strategy
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 2 Apr 2023 13:37:39 +0000 (15:37 +0200)]
fix: add missing crypto import
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 2 Apr 2023 13:27:54 +0000 (15:27 +0200)]
fix: use UUIDv4 for message id to avoid integer overflow
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 2 Apr 2023 11:57:30 +0000 (13:57 +0200)]
Merge branch 'master' of github.com:poolifier/poolifier
Jérôme Benoit [Sun, 2 Apr 2023 11:55:59 +0000 (13:55 +0200)]
perf: use a single map to store pool workers and their related data
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Sat, 1 Apr 2023 20:26:35 +0000 (20:26 +0000)]
chore: generate documentation
Jérôme Benoit [Sat, 1 Apr 2023 20:24:01 +0000 (22:24 +0200)]
chore: add changelog entry
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 1 Apr 2023 20:16:31 +0000 (22:16 +0200)]
perf: only check worker status when necessary
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 1 Apr 2023 12:02:37 +0000 (14:02 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 1 Apr 2023 11:51:16 +0000 (13:51 +0200)]
chore: add github funding option
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Thu, 30 Mar 2023 22:18:12 +0000 (00:18 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 29 Mar 2023 18:37:33 +0000 (20:37 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 29 Mar 2023 07:51:35 +0000 (09:51 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 28 Mar 2023 15:15:34 +0000 (17:15 +0200)]
build(ci): install latest pnpm version at documentation generation
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 28 Mar 2023 11:13:16 +0000 (13:13 +0200)]
build: use latest pnpm version and related version formats
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 28 Mar 2023 11:01:35 +0000 (13:01 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 27 Mar 2023 19:15:17 +0000 (21:15 +0200)]
build: refine coverage thresholds
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 27 Mar 2023 19:09:51 +0000 (21:09 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 26 Mar 2023 20:20:17 +0000 (22:20 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 26 Mar 2023 10:40:31 +0000 (12:40 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 25 Mar 2023 07:11:48 +0000 (08:11 +0100)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>