Skip to content

v1.25.0

Compare
Choose a tag to compare
@github-actions github-actions released this 15 Aug 22:40
· 24 commits to master since this release
7229a45

Highlights

Slot Auto-Tuning (Preview)

Added WorkerTuner - this wraps the previously added SlotSupplier classes to bring worker tuning options together under one class passed to the WorkerOptions
* Added ResourceBasedTuner and ResourceBasedSlotSupplier - these classes can be used to tune the workers slot count based on available memory and cpu resources.
Set a memory/cpu target and the worker will automatically try to reach those target usage levels.
* Added CompositeTuner - this allows you to combine different kinds of SlotSuppliers to implement WorkerTuner.

Please give the resource based tuning a try and let us know how it works for you (feedback on community slack is welcome)!
The easiest thing to do is instantiate and pass a ResourceBasedTuner to WorkerOptions.
It'll work best if the worker is the only thing on your host using significant resources.
Try setting the thresholds to a reasonable value like 0.8, and make sure that your JVM -Xmx value is set appropriately.

Note: Custom Slot Supplier is currently considered experimental and not intended for production use.

Handler Warnings

Previously if you had a signal handler or update handler that was not complete when the workflow was marked complete,
it'd silently be ignored/abandoned. Now you will get a warning. Users are encouraged to add
Workflow.await(() -> Workflow.isAllHandlersFinished()) to the bottom of their workflow to ensure they
have no outstanding handlers. If the previous no-warn situation is preferred, the signal/update annotation has a setting
to just abandon.

Changeset

2024-06-25 - 659fee5 - Switch checkout in prepare-release.yml to v3 (#2126)
2024-06-27 - abd9f2d - Point feature repo back to main (#2130)
2024-07-08 - 0f90334 - Release v1.24.1 (#2140)
2024-07-08 - 46b239d - Revert configurable slot provider (#2134)
2024-07-08 - 99585c1 - Change build_native_images mac runner to macos-13 (#2135)
2024-07-09 - 3b26db7 - Make sure workflow_failed is incremented on NonDeterministicException (#2141)
2024-07-17 - eb7d9ee - Release v1.24.2 (#2147)
2024-07-19 - 0ba6188 - Experimental cloud operations client (#2146)
2024-07-23 - b95322f - Reintroduce slot supplier & add many tests (#2143)
2024-07-24 - eabd51f - Ensure identity copied to Builder from source WorkerOptions (#2151)
2024-07-30 - 1acafa3 - Ensure shutdown of LA slot queue isn't swallowed (#2161)
2024-07-30 - 6b39e44 - Align Update API across test server and real server (#2153)
2024-07-30 - b92c97d - Workflow-friendly concurrency primitives (#2133)
2024-07-30 - bbf2de7 - Move workflow update polling inside of interceptor (#2159)
2024-07-30 - e5c08a1 - Enable next retry delay test for server (#2129)
2024-07-30 - f7c7341 - Fix transition in LA when handling canceled child wf (#2156)
2024-07-31 - 27a1fc2 - Add support for query in listSchedules (#2163)
2024-08-01 - 5d22bb5 - Add getCurrentUpdateInfo (#2158)
2024-08-05 - 4871168 - Test server Nexus endpoint operator apis (#2162)
2024-08-06 - 531d3cb - Wrap GRPC::CANCELED and DEADLINE_EXCEEDED in new exception type (#2172)
2024-08-06 - 98b2e78 - Disallow continue as new in update handlers (#2167)
2024-08-08 - 59c485e - Filter out third party protos (#2174)
2024-08-08 - e0851f0 - Build omes worker image in CI (#2171)
2024-08-11 - e2d2608 - Warn on dangling handlers and add method to help await on all handlers. (#2144)
2024-08-12 - a885812 - Ad support for updating schedule search attributes (#2168)
2024-08-14 - a5d6e60 - Fix isEveryHandlerFinished doc string (#2182)
2024-08-15 - 1d668c6 - Activity slot test flake (#2186)
2024-08-15 - 33bfef0 - Add to graal bindings (#2185)
2024-08-15 - abc5323 - Implement test server support for sync Nexus operation commands (#2176)
2024-08-15 - b9eeda0 - Improve test time and flaky schedule test (#2183)
2024-08-15 - ccfb368 - Concurrent poll request lock test fix (#2187)