Skip to content

Releases: temporalio/temporal

v1.14.0

14 Dec 04:54
Compare
Choose a tag to compare

Schema changes

This release contains a bug that could potentially lose tasks in failure scenario when history pods are not stable and keep bouncing between multiple nodes. Please upgrade to latest patch release 1.14.3 or later.

Before upgrading to your Temporal Cluster to this release 1.14, you must upgrade your storage schema version to the following:

  • MySQL schema version 1.7
  • PostgreSQL schema version 1.7
  • Cassandra schema version 1.6

Use the Schema Upgrade Tool to upgrade your schema version.
How to use the Schema Upgrade Tool: https://docs.temporal.io/docs/server/versions-and-dependencies/#upgrade-your-version-of-temporal.

Note that schema version is NOT the same as the storage type (database) version, see β€œLatest SQL database support” below.

tctl

  • tctl batch - Added a flag to limit amount of goroutines: --concurrency.
  • tctl admin - Removed direct database connection and switched to Admin API. Removed flags related to database connection.
  • Added a cluster command to upsert or remove remote cluster. This feature is still in development and may change in future release.
  • Renamed --min/max_read_level flag to --min/max_task_id when listing cluster tasks.
  • tctl namespace - Added a flag to promote a local namespace to a global namespace: --promote-namespace.
  • Removed commands related to Elasticsearch.
  • Removed cluster metadata command.

Metrics

  • Added option to configure histogram buckets per unit type (milliseconds, bytes, dimensionless). Existing metrics now have assigned relevant unit types. Example.
  • Added config option to exclude reported metric tags. Example.
  • Upgraded uber-go/Tally to v4.0.1.
  • Upgraded opentelemetry version to v1.1.0.

Latest SQL database support

  • Latest version of MySQL and PostgreSQL were tested. Temporal now officially supports MySQL 8 starting from version 8.0.19 and PostgreSQL 13 starting from version 13.5.

Multi-Cluster

  • Cluster metadata definition is migrating from application static config file to a new DB table. Cluster metadata will be initialized once when the service first starts up. Future remote cluster metadata modifications need to be done via tctl admin cluster tool. Example.

Other

  • Server will fail to start if dynamic config is malformed. Previously, default config was used if errors occurred.
  • Upgraded golang to 1.17.
  • Added safety check for empty JWT source URIs.
  • Added Handover ReplicationState for graceful failover. This feature is still in development and will change in a future release.

Improvements/Fixes

  • Fix unexpected matching GetTasks call growth on low-traffic task queues.
  • Reduced overhead due to unloading history shards during short database unavailability.
  • Limited Elasticsearch document _id to 512 bytes (#2112).

Internal refactoring

  • Adopted uber/fx for server initialization and dependency injection.

All changes

2021-12-13 - 074d8ebb1 - Fix rollup metrics aggregation (#2298)
2021-12-10 - 29e81571b - New future implementation (#2265)
2021-12-09 - f684386fe - Rename simpleStore to standardStore (#2278)
2021-12-09 - 7feb6b3a5 - Replication handover state (#2280)
2021-12-09 - 2eaadeaad - Move ackLevel past gaps in task ids (#2281)
2021-12-08 - c4976c9ea - Only update maxReadLevel after successful re-acquire of shard (#2272)
2021-12-08 - 0e844bc3b - Add additional UTF-8 validation (#2276)
2021-12-07 - 88c6eb5d7 - patch tally histogram (#2270)
2021-12-06 - f430f8573 - Stop server start up on malformed dynamic config (#2268)
2021-12-06 - be0df0d3e - Use correct histogram type for dimensionless (#2264)
2021-12-06 - 93de50aa4 - Add custom buckets to rollup metrics (#2266)
2021-12-06 - 3f4de5243 - Fix Elasticsearch bulk processor metrics units (#2267)
2021-12-03 - beb9a5a15 - Remove namespace APIs from adminservice (#2261)
2021-12-03 - 8a409cd25 - Add option to configure per metric unit histogram buckets. (#2251)
2021-12-03 - 827c92225 - Fix flaky TestVisibility (#2259)
2021-12-03 - 3e19fff5c - Fix batcher (#2260)
2021-12-02 - f338d10d1 - Remove DB record version config (#2253)
2021-12-02 - afc775a7b - Fix onebox worker shutdown (#2255)
2021-12-02 - 822eed7f5 - handover workflow (#2258)
2021-12-02 - 725730697 - Use history event as signal payload data (#2254)
2021-12-02 - 68498e122 - Remove --state from namespace update command (#2257)
2021-12-02 - 27c97af32 - Add shard lifetime context (#2218)
2021-12-02 - 06bd292b5 - Add UpdateNamespace tests for DELETED namespace state (#2185)
2021-12-01 - c9315c3e4 - Add dedicated persistence execution mutable state integration tests (#2244)
2021-12-01 - c099c7963 - Support limited list workflow queries for standard  visibility (#2197)
2021-12-01 - aa17a4aba - Matching cleanup (#2246)
2021-12-01 - 873f28085 - Add handover namespaces to GetReplicationStatus response (#2248)
2021-12-01 - 815bfd7d0 - Fix error messages (#2247)
2021-12-01 - 799a3c1e3 - Inserted retries to avoid flaky persistence (#2232)
2021-12-01 - 4f28e32b4 - Add dedicated persistence execution mutable state integration tests (#2245)
2021-12-01 - 2a47cdf0e - Replace ldflags with go:embed (#2085)
2021-12-01 - 0d9fcd3eb - Deprecate static cluster metadata (#2231)
2021-11-30 - d49000975 - Upgrade golang to 1.17.3 (#2240)
2021-11-30 - be7482878 - Add dedicated persistence execution mutable state integration tests (#2241)
2021-11-30 - b5e343cea - Remove resource.Resource from temporal services (#2229)
2021-11-30 - 4a4cc58b4 - Add Makefile targets for arm64 (#2201)
2021-11-30 - 1edb0a6b1 - Add dedicated persistence execution mutable state integration tests (#2242)
2021-11-30 - 171d228fc - Remove duplicated history size from execution info (#2239)
2021-11-29 - f888c2840 - Namespace Handover (#2228)
2021-11-29 - a1a237022 - Fix forward / backward compatibility issue (#2237)
2021-11-29 - 6daf3b6fb - Remove unnecessary CreateWorkflowModeContinueAsNew mode (#2235)
2021-11-29 - 6c139012d - Fix ParentClosePolicy not respected cross-namespace (#2224)
2021-11-29 - 1c52e90b6 - Remove unnecessary start version from current execution table (#2236)
2021-11-24 - e741533d4 - Add testhelper package to create temp file and dir (#2214)
2021-11-24 - a0e896524 - Add interleaved weighted round robin scheduler (#2209)
2021-11-24 - 876f75ce7 - Introduce dynamic cluster metadata component (#2208)
2021-11-24 - 182195552 - Namespace state update fix (#2227)
2021-11-24 - 0f2da592b - Add enable remote connection tctl (#2213)
2021-11-24 - 0baca26c8 - Use proper logger for worker service (#2226)
2021-11-23 - fc4024331 - Switch to Admin API in tctl list task queue tasks (#2222)
2021-11-23 - c3fdcb813 - Extract common struct for service provider args (#2223)
2021-11-23 - 90e89dd7c - Create admin API to list shard tasks (#2200)
2021-11-23 - 78acd4d7b - Use context for shard acquisition timeout (#2219)
2021-11-23 - 769b69f41 - Switch to admin API in tctl list shard tasks by category (#2217)
2021-11-23 - 6c86649b9 - Create admin API to get task queue tasks (#2221)
2021-11-23 - 1bbc3fbd7 - Refactor tctl admin show workflow raw history, switch to admin API (#2225)
2021-11-22 - 69959bc5e - Allow namespace state update (#2220)
2021-11-22 - 17b9d4cae - Pin MySQL version to 8.0.19 (#2210)
2021-11-19 - c9579c2ef - Handle missing metrics config (#2205)
2021-11-19 - c24eaa4be - Add List Cluster Metadata API (#2206)
2021-11-19 - 67da8a3b9 - Use gopkg.in/yaml.v3 instead of v2 (#2203)
2021-11-19 - 21531bab5 - Cleanup serverOptions depency and add server metrics client (#2187)
2021-11-19 - 1dd76d3f7 - Wait replications (#2202)
2021-11-18 - e5740fa22 - Use t.Setenv function to set env in unit tests (#2196)
2021-11-18 - 66780893b - Update development environment to MySQL 8.0 (#2193)
2021-11-18 - 6257ac319 - Change shard persistence interface to get-or-create (#2199)
2021-11-18 - 590d9dc98 - Implement GetReplicationStatus (#2195)
2021-11-18 - 39bd317c7 - Update development environment to PostgreSQL 13.5 (#2194)
2021-11-18 - 2eb40fe73 - Add fan out to history client for GetReplicationStatus (#2198)
2021-11-18 - 00cb5194c - Add tiered storage queue processor (#2189)
2021-11-17 - ca556868a - Add GetReplicationStatus to history service (#2186)
2021-11-17 - 9a4982999 - Remove Elasticsearch admin commands (#2181)
2021-11-17 - 14fe930b3 - Switch to admin API in tctl register namespace (#2176)
2021-11-16 - e6757b9ed - Add try lock APIs to priority mutex (#2183)
2021-11-16 - de83ad266 - Add NamespaceValidator interceptor (#2169)
2021-11-16 - 407184d92 - Add IsLocked to priority mutex (#2180)
2021-11-16 - 196b57afc - Create admin API to update namespace (#2182)
2021-11-15 - b9b0615a5 - Create admin API to register namespace (#2175)
2021-11-15 - 58e380a9e - Make cluster metadata schema backward compatible (#2177)
2021-11-15 - 58af5da4d - Header support for signals and queries (#2149)
2021-11-15 - 43ac47ffb - Report acked replication task timestamp (#2173)
2021-11-15 - 170bde6ac - Use admin API for tctl list cluster members (#2162)
2021-11-14 - 6bfe955d7 - Support concurrency flag in the tctl batch command (#2168)
2021-11-12 - f1cbac2de - Disable fx logs (#2091)
2021-11-12 - b9edf16e6 - Create admin API to list namespaces (#2170)
2021-11-12 - a439a679e - Wire up cluster metadata APIs (#2174)
2021-11-12 - 5d6bb62b1 - Update opentelemetry version and add gauge cache. (#2161)
2021-11-12 - 59c571530 - Use admin API for tctl list namespaces (#2171)
2021-11-12 - 519b...
Read more

v1.13.1

04 Nov 01:27
@dnr dnr
Compare
Choose a tag to compare

Release Highlights

This release includes a hotfix for long Elasticsearch document _id field values. You don't need to upgrade if your Workflow Ids are shorter than 475 bytes.

2021-10-28 - fc42218 - Limit Elasticsearch document _id to 512 bytes (#2112)

Details about v1.13.0 release can be found here.

Helpful links to get you started with Temporal

Temporal Docs
Server
Docker Compose
Helm Chart

Docker images for this release (use tag 1.13.1)

Server
Server With Auto Setup
Admin-Tools

v1.13.0

29 Oct 20:12
@dnr dnr
6cbfa2a
Compare
Choose a tag to compare

Release Highlights

This release does not includes any schema changes.

Notable changes

Expose Closed status of Temporal Cron Workflow Executions and Workflow Executions that retry

Previously Temporal Cron Workflow Executions and Workflow Executions that retried always ended with a "Continued-As-New" status, now they have a final event like any other, with a "Completed" or "Failed" or "Timed out" status. If you have code that depends on the "Continued-As-New" status you'll need to update it.

Custom search attributes changes

StringΒ search attribute type was renamed toΒ TextΒ to better reflect its nature and match Elasticsearch type.Β StringΒ is still supported as deprecated alias toΒ TextΒ and will be removed.

Visibility changes

Many small improvements and bug fixes in visibility.

The docker container now runs as a non-root user

You should make sure you're using https://github.com/temporalio/helm-charts/releases/tag/v1.13.0 which contains a corresponding change to the KubernetesΒ securityContext.

Dynamic config validator

If dynamic config is malformed an error message will be written to the log. In the next version, a malformed dynamic config will prevent the server from starting. If you see error message about dynamic config, please fix it.

SQLite persistence

Many thanks to Jacob LeGrone (DataDog) for his contribution of the SQLite driver (#1968, #2029). NOTE: The SQLite driver is still under development.

Metrics

  • Added task_schedule_to_start_latency metric.

Bug fixes

  • Correctly set shard ID when range complete replication tasks (#2056)
  • Correctly set last event task ID as part of events replication (#2055)
  • Fix match task queue rate calculation issue (#1910)

All changes

2021-10-20 - 6cbfa2a - Avoid acquiring shared lock recursively (#2076)
2021-10-18 - 92081a5 - Handle case of empty string CAs in TLS config (#2063)
2021-10-18 - 87a89e6 - Adding snipsync wrappers to setup commands (#2051)
2021-10-18 - 83c060a - Remove read-through from namespace.Registry (#2066)
2021-10-18 - 7f6a954 - Rename INDEXED_VALUE_TYPE_STRING to INDEXED_VALUE_TYPE_TEXT (#2061)
2021-10-18 - 7c83fa4 - Avoid generating empty string in tls cert array (#2064)
2021-10-18 - 077d39c - Remove awk dependency in auto-setup.sh (#2068)
2021-10-15 - f955633 - Make shard info to 0 unix nano time, instead of default time.Time (#2052)
2021-10-15 - c121a7d - Correctly set shard ID when range complete replication tasks (#2056)
2021-10-15 - 1d7b63b - Added php and typescript sdks to supportedClients (#2058)
2021-10-14 - 13fef8a - Correctly set last event task ID as part of events replication (#2055)
2021-10-14 - 10df97b - Adding temporal-cla and update link (#2053)
2021-10-14 - 0a92fc6 - Sync Elasticsearch index create script between Makefile and auto-setup.sh (#2047)
2021-10-14 - 043c974 - add optional explicit ForceTLS option to ClientTLS config (#2036)
2021-10-13 - 861df80 - Unify workflow completion metrics (#2050)
2021-10-12 - cbe6c18 - Add metrics for workflow_continued_as_new counter (#2048)
2021-10-12 - c18e7cc - Use uber/fx to init worker service (#2041)
2021-10-12 - 4c2fa17 - Remove duplicate code (#2046)
2021-10-12 - 467e529 - Persistence rate limit error (#2049)
2021-10-12 - 1a811e0 - Refactor visibility manager (#2045)
2021-10-11 - 4ee9768 - Use time.Unix(0, 0) instead of time.Time (#2044)
2021-10-11 - 00f8c7c - Use Match query instead of MatchPhrase for Elasticsearch (#2037)
2021-10-09 - e08cd05 - Revert "Use uber/fx to init worker service (#2032)" (#2039)
2021-10-08 - f687b5b - Use time.Unix(0, 0) instead of time.Time (#2038)
2021-10-08 - a364998 - Use uber/fx to init worker service (#2032)
2021-10-08 - 86d715f - Fix buffered query timeout issue (#2033)
2021-10-08 - 53f438a - Use uber/fx to init frontend (#2023)
2021-10-08 - 3e5196b - Log error message during server startup if dynamic config is misconfigured (#2019)
2021-10-08 - 08b4871 - Add schema setup and namespace registration utilities for SQLite (#2029)
2021-10-07 - fdea070 - Remove video.png (#2028)
2021-10-07 - b621a65 - Convert namespace.Registry to read-through (#2020)
2021-10-07 - 99355bf - Bump Web to v1.12.0 (#2031)
2021-10-07 - 6848bf1 - Remove unused field (#2027)
2021-10-07 - 25fec58 - Use di for matching integration tests (#2024)
2021-10-05 - ad4dc3f - Remove task polling recursion (#2022)
2021-10-04 - bf2e5a6 - Remove namespace/ dependence on cluster metadata (#2011)
2021-10-04 - 2c52fd6 - Increase add-search-attributes tctl admin command timeout to 30s (#2021)
2021-10-04 - 25f551b - Separate Cassandra persistence related structs (#2016)
2021-10-04 - 06b8637 - Namespace type renames (#2018)
2021-10-03 - 8fdc899 - Escape password in connection url (#2015)
2021-10-01 - fd4e2ca - Use DI for matching service initialization (#1995)
2021-10-01 - f831481 - Fix bulk processor NPE (#2013)
2021-10-01 - e80e8c1 - unlimited MaxConnectionAge (#1998)
2021-10-01 - d9bc815 - Make compare function easy to use for task key (#2008)
2021-10-01 - c7b568e - Allow setting workflow run timeout in tctl (#2009)
2021-10-01 - 531cc96 - Use StartedIdentity as LastWorkerIdentity for PendingActivity if no retry (#2007)
2021-10-01 - 3779998 - Fix elasticsearch_bulk_processor_wait_add_latency metric (#2012)
2021-10-01 - 27e9ff2 - Namespace Cache refactor to take advantage of immutability (#2006)
2021-10-01 - 16b1266 - Revert "unlimited MaxConnectionAge (#1998)" (#2010)
2021-09-30 - fff6fbb - Add elasticsearch_bulk_processor_duplicate_request metric (#2003)
2021-09-30 - f5ad4da - Add SDK commands sequence validation (#1993)
2021-09-30 - e0eb82d - Use DI to inject new cache provider (#1997)
2021-09-30 - dc4cd74 - Remove namespace.CacheEntry.GetInfo() (#2000)
2021-09-30 - 6d8338a - Remove advanced visibility specific errors (#2002)
2021-09-30 - 6120b46 - Remove namespace.CacheEntry.GetConfig() (#1991)
2021-09-30 - 57985cb - Improve mapper tests and comment message (#2005)
2021-09-30 - 45a3b79 - Correctly set non timer task key (#2004)
2021-09-30 - 26882f1 - Remove cache.Cache from workflow.Cache (#2001)
2021-09-29 - ae8c797 - Remove CacheEntry.GetReplicationConfig (#1976)
2021-09-29 - 8df4cc8 - Improve message on injected errors (#1973)
2021-09-29 - 64ef4e2 - Add SQLite storage driver (#1968)
2021-09-29 - 3f29b8f - Add workflow identifier to all tasks (#1989)
2021-09-29 - 2e8f38e - Make workflow.Cache interface (#1990)
2021-09-27 - f31bc0b - Unify task serialization / deserialization (#1985)
2021-09-27 - bcf518b - Utilize task serialization / deserialization util (#1987)
2021-09-27 - ab32caf - Add persistence/visibility store info to GetClusterInfo (#1984)
2021-09-27 - a63db66 - Improve invalid search attribute error message (#1986)
2021-09-27 - 7af4d65 - Move task definition from persistence layer to business logic layer (#1983)
2021-09-27 - 180db92 - Update proto submodule (#1982)
2021-09-24 - f0d4f89 - Make new events for retry compatible with older SDK versions (#1949)
2021-09-24 - c7994e2 - Reorganize go.mod file to follow 1.17 convention (#1974)
2021-09-24 - 60a6a61 - Add feature flag to enable Ringpop TLS (#1967)
2021-09-24 - 57938c2 - Initialize resource via DI (#1970)
2021-09-24 - 07cae17 - Add more details to invalid command attributes error (#1978)
2021-09-23 - ed49957 - Update dashboards (#1969)
2021-09-23 - cc1370f - Remove default page size from Elasticsearch visibility store (#1971)
2021-09-23 - a38dbd1 - Use internode mTLS for ringpop (#1902)
2021-09-23 - 3f1aaa2 - Convert Elasticsearch BadRequest error to InvalidArgument error (#1573)
2021-09-23 - 0652f41 - Set timeout for all Elasticsearch read calls (#1972)
2021-09-22 - d79e558 - Return memo serialization error instead of logging (#1948)
2021-09-22 - d23e605 - Construct history.Service via DI (#1964)
2021-09-22 - 81db9bf - Add more metrics for mutable state update (#1960)
2021-09-22 - 6356d64 - Move Elasticsearch client config to elasticsearch/client package (#1950)
2021-09-22 - 3cd9567 - Plumb fault injection for use in integration tests (#1957)
2021-09-22 - 302d03b - Revert "Remove deprecated metrics config code as per release 1.11 note (#1959)" (#1961)
2021-09-22 - 220795c - Integrate dashboards submodule (#1965)
2021-09-21 - f769507 - Move SearchAttributesManager to searchattribute package (#1953)
2021-09-21 - f2c216c - Consistent TaskQueueManager fatal signaling (#1933)
2021-09-21 - b20a256 - Make ResilientSyncMatch the default behavior (#1955)
2021-09-21 - 923a45c - Remove standard logger dependency (#1951)
2021-09-21 - 8dfbb74 - Clean up worker README (#1954)
2021-09-21 - 67b416c - Use internal error to indicate code bug / contract breach (#1958)
2021-09-21 - 584f282 - Don't refresh search attributes cache if database is down (#1956)
2021-09-21 - 183739d - Remove deprecated metrics config code as per release 1.11 note (#1959)
2021-09-20 - d9162f3 - Fix coverage profile generator (#1947)
2021-09-20 - d6c9b4a - Add custom logger option to schema tool (#1943)
2021-09-20 - ce4f036 - Use internal error to indicate code bug / contract breach (#1945)
2021-09-20 - 5839393 - Refactor visibility stores and managers (#1942)
2021-09-20 - 1ec6e9f - Ignore goveralls exit code (#1946)
2021-09-17 - ddb37af - Use persistence mutable state mutation / snapshot binary size util (#1935)
2021-09-17 - 8b71d20 - Remove deprecated history events from mutable state (#1937)
2021-09-17 - 08a15e3 - Fix comments for NewExecutionStore (#1939)
2021-09-16 - c73460c - Always return nil value for NextPageToken if there are no more pages (#1936)
2021-09-16 - 8b1993b - Use internal error to indicate code bug / contr...

Read more

v1.12.4

29 Oct 19:42
Compare
Choose a tag to compare

Release Highlights

This release includes hotfix for the long Elasticsearch document _id field value. You don't need to upgrade if your Workflow Ids are shorter that 475 bytes.

2021-10-28 - fc42218 - Limit Elasticsearch document _id to 512 bytes (#2112)

Details about v1.12.0 release can be found here.

Helpful links to get you started with Temporal

Temporal Docs
Server
Docker Compose
Helm Chart

Docker images for this release (use tag 1.12.4)

Server
Server With Auto Setup
CLI (tctl)
Admin-Tools

v1.12.3

07 Oct 20:49
Compare
Choose a tag to compare

Release Highlights

This release includes hotfix for the matching engine and few improvements for the visibility metrics.

2021-10-07 - 0378929 - Unify visibility metrics (#1928)
2021-10-07 - 11f35c8 - Add metrics to bulk processor (#1909)
2021-10-07 - 63fe119 - Fix elasticsearch_bulk_processor_wait_add_latency metric (#2012)
2021-10-07 - 9c5468e - Fix bulk processor NPE (#2013)
2021-10-07 - d10b98b - Add elasticsearch_bulk_processor_duplicate_request metric (#2003)
2021-10-07 - f225894 - Remove task polling recursion (#2022)

Details about v1.12.0 release can be found here.

Helpful links to get you started with Temporal

Temporal Docs
Server
Docker Compose
Helm Chart

Docker images for this release (use tag 1.12.3)

Server
Server With Auto Setup
CLI (tctl)
Admin-Tools

v1.12.2

04 Oct 19:57
Compare
Choose a tag to compare

Release Highlights

This release includes small bug fix for custom search attributes custom mapper. You don't need it if you are not using custom mapper.

2021-09-11 - ba5be80 - Ignore InvalidArgument error for unknown custom search attributes (#1911)

Details about v1.12.0 release can be found here.

Helpful links to get you started with Temporal

Temporal Docs
Server
Docker Compose
Helm Chart

Docker images for this release (use tag 1.12.2)

Server
Server With Auto Setup
CLI (tctl)
Admin-Tools

v1.12.1

16 Sep 23:19
Compare
Choose a tag to compare

Release Highlights

This release includes bug fixes for matching service and advanced visibility:

2021-09-16 - d8a538d - Bump current version to 1.12.1
2021-09-16 - b4b0ce8 - Use point in time with Elasticsearch v7 only if it is available (#1918)
2021-09-16 - 7704dd2 - Remove taskQueueManager by instance rather than queue ID (#1931)
2021-09-16 - 75a1a7d - Unload taskQueueManager by instance, not queue ID (#1917)
2021-09-16 - eb606bb - Fix match task queue rate calculation issue (#1910)
2021-09-10 - 077dd42 - Ack existing visibility task in case of duplicates (#1905)
2021-09-10 - 7af6ad3 - Fix TaskWriter panic when shutdown (#1892)
2021-09-10 - bb10f2d - Refactor Elasticsearch visibility store (#1888)
2021-09-10 - 1de4b2f - Remove search attributes errors logs (#1886)
2021-09-10 - 6951515 - Add searchattribute.Mapper interface for custom search attributes (#1880)
2021-09-10 - 59c3ccb - Change parseESDoc and generateESDoc to return error instead of logging (#1878)
2021-09-10 - 2b415aa - Patch metrics UserScope (#1876)
2021-09-10 - d817cb1 - Change custom search attributes (#1870)

Details about v1.12.0 release can be found here.

Helpful links to get you started with Temporal

Temporal Docs
Server
Docker Compose
Helm Chart

Docker images for this release (use tag 1.12.1)

Server
Server With Auto Setup
CLI (tctl)
Admin-Tools

v1.12.0

31 Aug 17:41
6867b1c
Compare
Choose a tag to compare

Release Highlights

This release does not includes any schema changes.

Notable changes

Enhanced Visibility is production ready

We are happy to officially announce that Enhanced Visibility is now production ready!

A number of new updates have been added to the Enhanced Visibility feature over the past several releases.
This release adds a few more updates (see below) and brings them all together without any breaking changes.

Elasticsearch v7 is now default

If you still use Elasticsearch v6 and don't set ES_VERSION env or version property in config file explicitly, you have to do it now.

admin elasticsearch report has been removed

Please use Elasticsearch directly to build custom reports.

Query support for ColumnName=missing syntax is deprecated

Query support for ColumnName=missing syntax will be removed in the next release. Use ColumnName is null syntax instead. Use ExecutionStatus="Running" to filter only running workflows.

Elasticsearch healthcheck is disabled by default

You can turn it (and sniffing) on with new config settings added in #1865. Leave it disable if you use AWS Elasticsearch (olivere/elastic#1091).

All changes

2021-08-31 - 6867b1c - Add metrics client to custom data store factory (#1871)
2021-08-27 - 59dd702 - Fix FE interceptor order to report metrics correctly (#1863)
2021-08-27 - 431127c - Reserve Temporal prefix for custom search attribute names (#1861)
2021-08-27 - 33f95d7 - Change default value of worker.ESProcessorFlushInterval from 200ms to 1s (#1860)
2021-08-27 - 2e50ce0 - Add closeIdleConnectionsInterval, enableSniff, and enableHealthcheck to Elasticsearch config (#1865)
2021-08-26 - ff06957 - Revert "Split cron and retry paths from continue-as-new (#1745)" (#1858)
2021-08-26 - ec03542 - Add version to event cache key (#1838)
2021-08-26 - da5bcc7 - Remove esql package (#1857)
2021-08-26 - cae0d79 - Split cron and retry paths from continue-as-new (#1745)
2021-08-26 - acea4e9 - Remove query validator (#1856)
2021-08-26 - abcee70 - Replace DSL parsing with query builder (#1855)
2021-08-26 - 9955dc5 - Merge AppendHistory with CreateWorkflow (#1853)
2021-08-26 - 7d423ca - Remove 'admin elasticsearch report' CLI command (#1854)
2021-08-24 - eaa7d7b - Expose cassandra.CheckCompatibleVersion() (#1849)
2021-08-24 - c11a3e1 - Allow external persistence implementations to reuse persistenceTestBase by exporting a factory method accepting PersistenceTestCluster (#1846)
2021-08-24 - 4f8c1c7 - Fixes bug where intra-node client is doing retries even if the error is context cancelled (#1845)
2021-08-24 - 2d6f48d - Close factory after use (#1850)
2021-08-23 - d4f3bc6 - Spin loading initial taskWriter state in Start() (#1842)
2021-08-23 - 1f24996 - UpdateWorkflow transaction to include append history (#1841)
2021-08-20 - 514776c - Add fault injection for persistence API (#1820)
2021-08-19 - 734e4a2 - Add more metrics to Elasticsearch bulk processor (#1839)
2021-08-19 - 373d0c8 - Streamline taskQueueManager startup (#1834)
2021-08-18 - d95e21c - Fix crash when no pollers on task queue. Dedupe code. (#1835)
2021-08-18 - 8f6496c - Add custom SQL to Elasticsearch query converter (#1824)
2021-08-18 - 451004b - Validate ids in event cache (#1837)
2021-08-18 - 182ae5a - Fix ExecutionTime backfill by changing init order (#1836)
2021-08-18 - 0cef628 - Add tctl-authorization-plugin to docker images (#1832) (#1833)
2021-08-16 - aa9a9a8 - Fix execution time not set correctly during continue as new (#1828)
2021-08-16 - 39fd4ed - Do not exit CLI if task queue has no poller (#1827)
2021-08-14 - 3997ae6 - Only reapply current workflow events if current workflow is part of continue as new chain (#1822)
2021-08-13 - 4741ef1 - Update link to buildkite badge (#1823)
2021-08-10 - 95524cb - Patch fossa install (#1815)
2021-08-10 - 89fe351 - Fix service_errors_nondeterministic merics (#1726)
2021-08-10 - 3595e62 - Fix API doc comment for authorization.CallTarget.Request (#1816)
2021-08-09 - f9e8559 - Udpate fossa cli (#1811)
2021-08-09 - c4d3c34 - Adds flag to tctl db-based commands to override TLS ServerName setting #1813
2021-08-09 - a6e9c05 - NewFactory with given session (#1812)
2021-08-08 - 6d1c70d - Revert "Add tctl config feature (#1790)" (#1810)
2021-08-07 - 438b322 - Fix TaskQueueLock starvation (#1809)
2021-08-06 - e834f2a - Update SDK to 1.9.0 (#1808)
2021-08-05 - c158bfe - Make sure shard acquirement channel will not be blocked (#1806)
2021-08-05 - a1b4b06 - Upgrade gocql (#1805)
2021-08-05 - 69ddc6f - Enable fossa test and add delay between analyze and test (#1802)
2021-08-05 - 46a8766 - Handle unreliable gocql close function stuck issue (#1803)
2021-08-05 - 2e3fd6a - Optimize matching ack manager loop perf (#1804)
2021-08-05 - 0f4bdf5 - Remove unnecessary shard controller prepare to stop logic (#1807)
2021-08-04 - c630240 - Add retries for tctl visibility APIs (#1798)
2021-08-04 - 3e93f46 - Expose TLS RefreshInterval & ExpirationChecks via env var (#1800)
2021-08-04 - 149072c - Update fossa cli in base-ci-builder image (#1801)
2021-08-02 - fe05751 - Add system worker execution & poller dynamic configs (#1796)
2021-08-02 - d7e2410 - Disallow fetching CA cert over HTTP (#1794)
2021-08-02 - a4ce3a1 - Merge HistoryManager into ExecutionManager (#1792)
2021-08-02 - 800768f - FetchCACert now supports URLs in addition to files (#1773)
2021-08-02 - 53d107c - Revert "Release new tctl UX (#1789)" (#1795)
2021-08-02 - 5374709 - Release new tctl UX (#1789)
2021-08-01 - d5dbf4e - Disable sniffing on ES7 client used in CLI (#1784)
2021-08-01 - 25e22ae - Execution store no shard id2 (#1791)
2021-08-01 - 248550b - Rewrite persistence create workflow API error handling (#1770)
2021-07-30 - b557462 - Report service user latency metric explicitly (#1787)
2021-07-30 - 9f9e8f8 - Matching deadlock fix and GC refactor (#1785)
2021-07-30 - 68e9adb - Add tctl config feature (#1790)
2021-07-30 - 5c777e7 - Rename WorkflowStore to ExecutionStore (#1786)
2021-07-30 - 4e7f6f9 - Adjust system worker poller number (#1788)
2021-07-30 - 094f860 - Add task latency without user induced latency (#1777)
2021-07-29 - d4b7671 - Include root cause reasons in Elasticsearch error message (#1774)
2021-07-29 - c74834f - WorkflowStore interface (#1781)
2021-07-29 - b765bbb - Revert part of matching cleanup (a18bb3a) (#1779)
2021-07-29 - b241ae7 - Remove GetClosedWorkflowExecution method from visibility (#1782)
2021-07-29 - a18bb3a - Matching cleanup (#1708)
2021-07-29 - 8eff0b7 - Use PIT instead of scroll for Scan API (#1772)
2021-07-29 - 7799e6c - Test-friendly refactorings in common (#1771)
2021-07-29 - 557b5d7 - Move visibility persistence to visibility package (#1760)
2021-07-28 - ced5fc5 - Set longer task timeout to avoid stampede on history service (#1776)
2021-07-27 - 42b8d1e - Remove 1.10 backward compatibility code (#1764)
2021-07-26 - fb83941 - Switch default Elasticsearch version from v6 to v7 (#1763)
2021-07-26 - 77db3b7 - Downgrade namespace logger messages from Info to Debug (#1755)
2021-07-26 - 2910c38 - Correctly reapply buffered events from current workflow during workflow reset (#1762)
2021-07-26 - 18faf00 - Tag Web v1.11.0 (#1766)
2021-07-26 - 08a4a6b - Delete visibility documents with admin delete command (#1767)
2021-07-23 - 6e417e2 - Extract workflow notification into dedicated util (#1761)
2021-07-23 - 32d0786 - Extract workflow & events persistence ops into dedicated util (#1759)
2021-07-22 - eeb9adb - Clean up plugin interface (#1709)
2021-07-22 - 3faa545 - Remove unused history manager reference from history engine (#1750)
2021-07-21 - ea4fd1f - Only unload TaskQueueManager if ownership is lost or queue traffic drops (#1730)
2021-07-21 - 9d023ee - Rename internal API names (#1749)
2021-07-21 - 71d548f - Fix few typos (#1748)
2021-07-21 - 5d40f91 - Split workflow context logic into 2 files (#1751)
2021-07-20 - d2788a7 - Use filter context instead of query context for exact match queries (#1723)
2021-07-20 - adf692b - Always use search_after for Elasticsearch pagination (#1724)
2021-07-20 - a8f7cd9 - Add JSON print to get-search-attributes admin command (#1731)
2021-07-20 - 79fa9b3 - Bump version for next release (#1746)
2021-07-20 - 778b505 - Extend CurrentWorkflowConditionFailedError to include more information about current workflow (#1747)
2021-07-20 - 423ef7b - Add skip-schema-update flag to add-search-attributes tctl admin command (#1733)

Helpful links to get you started with Temporal

Temporal Docs
Server
Docker Compose
Helm Chart

Docker images for this release (use tag 1.12.0)

Server
Server With Auto Setup
CLI (tctl)
Admin-Tools

v1.11.4

19 Aug 01:08
Compare
Choose a tag to compare

Release Highlights

This release includes bug fixes mainly for cron schedule:
2021-08-18 - 4f5d4c2 - Fix ExecutionTime backfill by changing init order (#1836)
2021-08-18 - 6ef5257 - Fix execution time not set correctly during continue as new (#1828)

Details about v1.11.x release can be found here

Helpful links to get you started with Temporal

Temporal Docs
Server
Docker Compose
Helm Chart

Docker images for this release (use tag 1.11.4)

Server
Server With Auto Setup
CLI (tctl)
Admin-Tools

v1.11.3

06 Aug 19:00
Compare
Choose a tag to compare

Release Highlights

This release includes 2 bug fixes:

  • Make sure shard acquirement channel will not be blocked (#1806)
  • Handle unreliable gocql close function stuck issue (#1803)

Details about v1.11.x release can be found here

Helpful links to get you started with Temporal

Temporal Docs
Server
Docker Compose
Helm Chart

Docker images for this release (use tag 1.11.3)

Server
Server With Auto Setup
CLI (tctl)
Admin-Tools