v0.25.0
Important Notice: If you're experiencing OOM after deploying this version, please update this dynamic property to disable replication cache.
history.replicatorCacheCapacity:
- value: 0
Per-domain metrics
- 483a149 Introduce per domain metrics (#5012)
- e87bd74 Added logs for domainName empty situation (#4987)
- c8783f0 Addition of domainName tag to Replication task (#4975)
- 88991f2 Addition of domain tag for Replication task metric (#4974)
- e69dbd6 Added changes to readHistoryBranchRequest (#4972)
- 76a025a Added domainName change to remaining functions of appendHistoryNodeRequest and RecordWorkflowExecutionUninitializedRequest (#4968)
- 0f59042 Added changes to archival client (#4958)
- d1965b1 Added domain Tag to UpdateTaskList,DeleteTaskList,LeaseTaskList,CompleteTask and CompleteTaskLessThan (#4950)
- 4c8013d Added changes to GetTask and CreateTask (#4947)
- e88a9c7 Added changes to PutReplicationTaskToDLQ and IsWorkflowExecutionExists (#4946)
- b9b8b42 Added changes to DeleteCurrentWorkflowExecution and GetCurrentExecution (#4944)
- 8c5f2ff Added changes to ConflictWorkflowExecution and DeleteWorkflowExecution (#4943)
- 13a130b Added changes to GetWorkflowExecution and UpdateWorkflowExecution (#4938)
- 2bb13a1 Added DomainTag changes to ReadHistory branch for readHistoryRequest, CreateWorkflowRequest + added DomainCacheNoOp file (#4930)
- c091a49 Changed DeleteHistoryBranch and GetHistoryTree by adding Domain Tag with mocks (#4928)
- b34f4e4 Adding DomainTag to the ForkHistoryBranch, ReadRawHistoryBranch and ReadHistoryBranchByBatch (#4926)
- 6cf4252 Adding DomainTag to the Persistence metrics client (#4922)
- c3f7bd3 Addition of DomainTag to required functions for the creation of metrics required for Domain Cost Attribution (#4908)
Replication improvement
- 6242854 Immediate replication task hydration after successful transaction (#4980)
- beaf670 Return early when there are not replication tasks (#4982)
- d38b08e Add Metric Emitter, which emits a metric once a minute for true replication lag in nanoseconds. (#4979)
- 1a2804d Reduce metrics cardinality for replication.TaskStore (#4981)
- 93a6f23 Return persisted history events blob (#4953)
- 1be9b6d Replication cache for sharing hydrated messages (#4952)
- 457c35e Partial response of GetReplicationMessages on history service (#4935)
- d739bf5 Helpers for getting enabled and remote cluster info (#4951)
- 385c1c3 Adds more pertinent information about replication (#4931)
- fe3bf0b Refactor task ack manager (#4894)
- 83aa193 Removed TaskID from types.HistoryTaskV2Attributes (#4876)
Observability improvement
- 1e788db Add domain_type and cluster_groups tags (#4990)
- ff11392 Improve logs for task executor (#4989)
- e597b87 Add logs to debug transfer task (#4970)
- 177f087 Improve log for transfer task validator (#4961)
- b0d1f06 Capture CassandraLWT error and log/bump metrics for it. (#4888)
- 50d331a add activity info logging (#4867)
- 93bda8f \adence-history does not emit continue-as-new metrics (#4866)
- 7854f81 Add empty response metrics for read operations (#4855)
- 471e6d1 Log replication messages that did not fit (#4844)
- b03d03e add metric tags for activity task disaptch (#4821)
- d21162d Add logs for domain failover (#4810)
- 400bbe4 Improve failover coordinator error logging (#4811)
- a51b613 Log error fields as tags (#4801)
- c598654 Improve task re-dispatch error logging (#4809)
- 22f97c8 Log error when fetchHistoryFromRemote fails (#4807)
- 33edece Add source_cluster tag when emitting DLQ size (#4782)
Activity dispatch optimization
- 52203ab count local and server optimized activity dispatches as started (#4901)
- bafdf15 do not wait for activity task channel if sync match from history (#4860)
- 361edb6 add activity dispatch configs to matching (#4818)
- e77b43d add activity dispatch configs (#4816)
- 2b0b03f updated idl for activity task dispatch (#4815)
- 2890600 add data contract for activity task dispatch (#4813)
- cda6c53 set EnableActivityLocalDispatchByDomain default value to true (#4788)
Restart workflow
Cross Cluster operations
- e5ed7f7 Feature/adding canary for cross cluster -> readme patch (#4870)
- 68fb2e6 Adds cross-cluster canary (#4868)
Corrupted workflows
- 79437b3 Introduce a dynamic config for cassandra all consistency level delete (#5000)
- 052d77c Update Cassandra deletes to use ALL consistency level (#4984)
Cancel workflow
- add4b39 Standardizing cancellation behavior: a canceled workflow never starts a new run (#4898)
- f1c5578 adding reason to cancel workflow. (#4934)
Failover lockdown
Bug fixes
- c2ffb71 Adds fix for domain ack level issue (#5001)
- 3985fec Fix history corruption check for workflow signaling (#4998)
- 1375e49 Revert "Fix error conversion for WorkflowExecutionAlreadyStartedError (#4838)" (#4999)
- 494f202 Fix status check for visibility and archival (#4864)
- a727049 Bugfix/correct failover issue target domain not active ii (#4840)
Misc improvements & updates
- 78a755c Add new unit test (#5008)
- 278a3b8 Re-enable workflow test (#5007)
- 43c9ebc Fix Cadence CLI (#5005)
- 146bc31 Update idls (#4997)
- 6da9676 Convert client peer resolving errors to service transient errors (#4993)
- a91a250 Adding first scheduled time metadata field for cron workflows. (#4969)
- 5eb67d1 Make test now passes locally (#4915)
- 3aaa1e8 Allow docker compose to work with docker-compose-mysql.yml on M1 (#4983)
- 854fc59 Run docker build on commits, to prevent docker build from breaking in the future (#4978)
- 172abd6 Fix docker build. (#4977)
- 701fb70 Adding limit for amount of pending activties in mutable state. (#4959)
- 6ecd1e4 Fixing test. (#4941)
- d8cb61e Upgrade Golang base images to remediate CVEs (#4957)
- f2b2108 Simplify shard write operations (#4955)
- 9949a22 Simplify history engine task read ID logic (#4949)
- 7566018 fix funcorder linter (#4942)
- b21f34f add funcorder linter (#4939)
- e3496a3 Add List*Execution (ElasticSearch) API ratelimiters (#4925)
- 85e0fee Fix flacky QueryWorkflow tests (#4932)
- 341d9f0 Improve decode_thrift output (#4929)
- a4d77f5 Fix query workflow high latency after a long inactive time (#4871)
- 43a17d2 downgrade testify to fix monorepo (#4918)
- ef8d11e Update revive to catch more defer/recover badness (#4917)
- 82544de Replace unsafe usage of recover() in helper functions (#4913)
- c06649e Fix remaining server lint warnings and make lint error by default. (#4911)
- 8b42a6d Start fixing server lint warnings (#4909)
- d2f72d8 Fix flaky retrypolicy tests. (#4905)
- 25e221b Add new CI step for lint validation (#4903)
- 64cb46f Add new es record for uninitialized workflow execution (#4899)
- 8c449b3 Add JitterDelay option when creating workflows. (#4886)
- 1f8c93a reduce MatchingActivityTaskSyncMatchWaitTime default value (#4897)
- 7da6bc0 [codegen] introduce gowrap for generating retryableClient (#4879)
- ed2beb2 Separating tools dependencies from main dependencies (#4895)
- de09926 Minor makefile cleanup, verbose CI, fmt with a recent Go version (#4896)
- cfd637e add mockery to go generate (#4887)
- 6f9e2d9 upgrade go version to 1.17 in go mod and Buildkite dockerfile (#4889)
- 663a041 Added support for network topology strategy (#4875)
- ac10760 Move visibility operation from search attributes to indexer message (#4881)
- 691bf3f Magically speed up integration tests by nearly 10x (#4892)
- e9915ae Rename dockers default cluster name to match the other config files. (#4885)
- aff5ecf Simplified FindFirstVersionHistoryByItem (#4882)
- 4cfb741 fix flaky TestDelayStartWorkflow (#4884)
- 9f21900 update generated code (#4880)
- 6009044 Support allowed authenticators in tool (#4873)
- f133d3c Add support for changing the gocql connect timeout (#4874)
- dc5230f Update idl for StickyWorkerUnavailableError (#4869)
- 9e6d122 Used exposed admin proto IDLs (#4865)
- 0930305 Add visibility operation types to Kafka message (#4828)
- ae14412 Move some proto definitions to admin package (#4861)
- af932bd Fix CLI rendering long workflow types (#4853)
- b457b55 Make cluster.Metadata a struct and stop using mocks for it (#4851)
- 12d8c54 Add UpdateFromConfig function to schema tool library (#4848)
- d6ae278 Decouple domain cache entry from cluster metadata (#4847)
- 15267b9 Separate buildkite pipeline for PRs (#4850)
- 0582a58 Update SQL implementation of UpdateExecution to support async transaction (#4792)
- 535cda8 Remove unused loggers from history (#4822)
- 915a777 Simplify history builder (#4837)
- beab75c Removing target-domain-not-active special-case handling (#4835)
- a575908 Extract Engine from matching handler (#4833)
- 20329a2 Forward activity responses and heartbeats on failover as well (#4823)
- fbfafb9 Update PROPOSALS.md (#4831)
- 94fd0a6 Update roadmap.md (#4829)
- 0a37a8b remove redundant type conversions for activity task dispatch (#4820)
- ee5461b Check for resurrected activities during RecordActivityTaskStarted (#4806)
- 4194b29 Remove unused PayloadSerializer param (#4827)
- 45770c2 Add CustomDomain and Operator as default indexed keys (#4825)
- eede466 Fill domainID for backwards compatibility (#4819)
- 8b10063 Fix error type returned from GetWorkflowExecution and DeleteWorkflowExecution (#4817)
- fc9d5fa Change access dienied error type (#4808)
- e91a5a7 Allow decoding thrift from base64 string via CLI (#4805)
- 5be511b Update base image to Alpine 3.15 (#4804)
- e1aaeb7 fix WriteFile fail err hidden by Close invaildargment (#4744)
- 2153769 Minor makefile cleanup, gofmt (#4802)
- 6ea8658 Only update maxReadLevel after successful re-acquire of shard (#4799)
- b49002d Add jittered workflow deletion configuration (#4789)
- 91579a1 Fix docker prometheus config for linux docker (#4793)
- 7a1fe53 Wrap underlying cause for conditional update error (#4797)
- 480c733 Double inline archival time limit defaults (#4796)
- 8c61641 Use errgroup.Group for fanout style workfloads (#4784)
- 8845d97 Update EnableRecordWorkflowExecutionUninitialized flag to filter by domain name (#4904)
- 807a0e2 Added API for retrieving DLQ message count (#4787)
- ba4a5d9 Support refreshing long running workflows based on user config (#4770)
Cleanup & Refactoring
- cb79876 Drop dynamic config for gRPC message size (#5002)
- 354e6b0 Removed replication mocks (#4883)
- 608bcb5 Remove unused functions from TaskAckManager (#4872)
- 9d45241 Add helper function to list all dynamic config keys used in production (#4891)
- 650cf8a Refactor dynamic config (#4863)
- e8a06cc Update the default values of dynamic config to not depend on static config (#4858)
- 2408f9d Removed unused internal type getters (#4852)
- c6ce732 Removed global domain enabled config (#4845)
- 3a813e8 Remove domain cache from history/workflow (#4846)
- 3cfcaea Remove no-longer used dynamic configs (#4843)
- 856d33f Shard tag not needed in shard.Context (#4842)