|
| 1 | +# Highlights |
| 2 | + |
| 3 | +## Slot Auto-Tuning (Preview) |
| 4 | + |
| 5 | +Added `WorkerTuner` - this wraps the previously added `SlotSupplier` classes to bring worker tuning options together under one class passed to the WorkerOptions |
| 6 | + * Added `ResourceBasedTuner` and `ResourceBasedSlotSupplier` - these classes can be used to tune the workers slot count based on available memory and cpu resources. |
| 7 | + Set a memory/cpu target and the worker will automatically try to reach those target usage levels. |
| 8 | + * Added `CompositeTuner` - this allows you to combine different kinds of `SlotSuppliers` to implement `WorkerTuner`. |
| 9 | + |
| 10 | +Please give the resource based tuning a try and let us know how it works for you (feedback on community slack is welcome)! |
| 11 | +The easiest thing to do is instantiate and pass a `ResourceBasedTuner` to `WorkerOptions`. |
| 12 | +It'll work best if the worker is the only thing on your host using significant resources. |
| 13 | +Try setting the thresholds to a reasonable value like 0.8, and make sure that your `JVM -Xmx` value is set appropriately. |
| 14 | + |
| 15 | +Note: Custom Slot Supplier is currently considered experimental and not intended for production use. |
| 16 | + |
| 17 | +## Breaking Changes |
| 18 | + |
| 19 | +### Workflow Update (Preview) |
| 20 | + |
| 21 | +This release includes some breaking changes to the Workflow Update client API. |
| 22 | + |
| 23 | +* `temporal.client.UpdateOptions.setWaitPolicy` has been changed to `temporal.client.UpdateOptions.setWaitForStage` |
| 24 | +* `WaitForStage` is now a required option in `temporal.client.UpdateOptions` and no longer defaults to `Accepted` |
| 25 | +* `io.temporal.client.WorkflowStub.startUpdate` now requires a `WorkflowUpdateStage`. |
| 26 | +* `io.temporal.client.WorkflowStub.startUpdate` now respects the `WorkflowUpdateStage`. |
| 27 | + * Previously `startUpdate` may have returned a handle before the desired `WaitForStage` was reached. |
| 28 | + |
| 29 | +### SpringBoot Integration (Preview) |
| 30 | + |
| 31 | +As part of preparation for Spring Boot Integration GA we have renamed our Spring Boot packages to remove the alpha tag: |
| 32 | + * `temporal-spring-boot-starter-alpha` -> `temporal-spring-boot-starter` |
| 33 | + * `temporal-spring-boot-autoconfigure-alpha` -> `temporal-spring-boot-autoconfigure` |
| 34 | + |
| 35 | +Users should update their package names when upgrading the Java SDK. |
| 36 | + |
| 37 | +Stay tuned for future news about SpringBoot integration GA. |
| 38 | + |
| 39 | +# Changeset |
| 40 | + |
| 41 | +2024-04-02 - e603fd85 - Fix environment variables in CI github action (#2024) |
| 42 | +2024-04-04 - 26a85957 - SpringBoot - add workflow and activity metadata to RegisteredInfo (#1995) |
| 43 | +2024-04-08 - 35689706 - Update github actions (#2027) |
| 44 | +2024-04-08 - 779d90c4 - Make StickyQueueBalancer synchronized (#2025) |
| 45 | +2024-04-10 - 920a3617 - Add note on using snapshot releases (#2032) |
| 46 | +2024-04-10 - d2a06fc6 - Slot supplier interface & fixed-size implementation (#2014) |
| 47 | +2024-04-15 - 81cc6e03 - Update proto API to 1.32.0 (#2039) |
| 48 | +2024-04-15 - c6cceca2 - Fix recursion in TracingWorkerInterceptor (#2040) |
| 49 | +2024-04-17 - ed211fa6 - Fix exception in GrpcRetryer. (#2021) |
| 50 | +2024-05-03 - 00136756 - Add ScheduleClientInterceptor APIs (fixes #2048) (#2050) |
| 51 | +2024-05-08 - a41c64ec - Add support for update admitted event (#2041) |
| 52 | +2024-05-10 - 9cdff7ae - Fix UnsupportedOperationException in handleSingleEventLookahead (#2061) |
| 53 | +2024-05-21 - 5ccb8592 - Send original update request back in accept/reject response (#2074) |
| 54 | +2024-05-21 - 82d5a885 - Don't return update handles until desired stage reached (#2066) |
| 55 | +2024-05-21 - 9a856f30 - Send unset catchupWindow in schedules if not specified (#2067) |
| 56 | +2024-05-23 - 5e5cf0bf - Add shortcut to set API key (#2052) |
| 57 | +2024-05-29 - 0d7ae22f - Add support for nextRetryDelay (#2081) |
| 58 | +2024-05-29 - 0d847a65 - Add identity to WorkflowOptions (#2080) |
| 59 | +2024-05-29 - ae6597ff - Fix schedule workflow action retry policy (#2082) |
| 60 | +2024-05-30 - 0c8073ee - Fix a few issues with the describeSchedules test (#2085) |
| 61 | +2024-05-31 - 08b220c9 - Bump some GH action dependencies (#2083) |
| 62 | +2024-05-31 - 5c464e8f - Fix issue with isReplaying causing direct query to spam logs (#2087) |
| 63 | +2024-05-31 - cde114cf - Fix signal CAN non determinism test (#2084) |
| 64 | +2024-06-03 - 1ad1c04e - Require WaitForStage in StartUpdate (#2088) |
| 65 | +2024-06-03 - 4eda239a - Add setWorkflowIdConflictPolicy (#2055) |
| 66 | +2024-06-04 - 1e795927 - Add exception for calling an update method on a stub (#2095) |
| 67 | +2024-06-05 - 265590d1 - Add toString to ServiceStubOptions (#2089) |
| 68 | +2024-06-06 - 42b98035 - Fix caching in LazyUpdateHandleImpl (#2098) |
| 69 | +2024-06-06 - bf392f5b - Bump some GHA actions back due to glibc compatibility (#2096) |
| 70 | +2024-06-10 - 4f781b3c - Allow SDK to handle speculative workflow task with command events (#2099) |
| 71 | +2024-06-10 - f0a30a67 - Fix flake in resetWorkflowIdFromWorkflowTaskTest (#2105) |
| 72 | +2024-06-11 - 6da11b96 - Add integration test for reset with update (#2104) |
| 73 | +2024-06-13 - ddda99ba - Fix ConcurrentModificationException in LocalActivityMeteringHelper (#2108) |
| 74 | +2024-06-21 - 69769cb2 - Fix empty-string fields on CaN not working (#2120) |
| 75 | +2024-06-21 - 8a2d5cdc - Resource based tuner (#2110) |
| 76 | +2024-06-25 - 43a4aa0d - Remove Spring Boot alpha tag (#2115) |
| 77 | +2024-06-25 - 8872e33e - Update dependencies to address some CVE scans (#2123) |
0 commit comments