Releases: googleforgames/open-match
v1.4.0-rc.1
v1.4.0-rc.1
This is the v1.4.0-rc.1 release of Open Match.
Check the official website for details on features, installation and usage.
Release Notes
Feature Highlights
- Redis helm chart version change to 16.3.1 (#1440)
- Patched bug that resulted in multiple redis master nodes which fixed (#1374) :
- AssignTickets empty check and test cases added (#1438)
- Redis default values update (#1430)
- Fixed outdated apiVersion in frontend scale testing helm template (#1419)
Breaking Changes
- Updating the Redis helm chart version to 16.3.1 (#1440) requires changes to the api
- slave --> replica
- usePassword: --> auth: enabled:
- redis.fullname --> common.names.fullname
- Outdated apiVersion in frontend scale testing helm template (#1419)
- extensions/v1beta1 --> apps/v1
Enhancements
- Increased minimum resources based on best practices (#1439)
- docker build optimization by using mount cache for go dependencies (#1435)
Usage Requirements
- Kubernetes Version >= 1.21
- Golang Version >= v1.14
- Helm Version >= 3.8
Installation
- Follow Open Match Installation Guide to setup Open Match in your cluster.
API Definitions
- gRPC API Definitions are available in API references - Preferred
- HTTP API Definitions are available in SwaggerUI
v1.3.0
v1.3.0
This is the v1.3.0 release of Open Match.
Check the official website for details on features, installation and usage.
Release Notes
Feature Highlights
- Tickets assigned by Backfill now visible in
AcknowledgeBackfillResponse
(#1382)
Breaking Changes
AcknowledgeBackfill
now returnsAcknowledgeBackfillResponse
instead ofBackfill
(#1382)
Enhancements
- Workload Identity re-enabled for GKE clusters (#1403)
- Default GKE Cluster version updated to 1.20 (#1402)
- gRPC versions for tutorials updated to 1.36 (#1402)
Usage Requirements
- Kubernetes Version >= 1.20
- Golang Version >= v1.14
Installation
- Follow Open Match Installation Guide to setup Open Match in your cluster.
API Definitions
- gRPC API Definitions are available in API references - Preferred
- HTTP API Definitions are available in SwaggerUI
v1.3.0-rc.1
v1.3.0-rc.1
This is the v1.3.0-rc.1 release of Open Match.
Check the official website for details on features, installation and usage.
Release Notes
Feature Highlights
- Tickets assigned by Backfill now visible in
AcknowledgeBackfillResponse
(#1382)
Breaking Changes
AcknowledgeBackfill
now returnsAcknowledgeBackfillResponse
instead ofBackfill
(#1382)
Enhancements
- Workload Identity re-enabled for GKE clusters (#1403)
- Default GKE Cluster version updated to 1.20 (#1402)
- gRPC versions for tutorials updated to 1.36 (#1402)
Usage Requirements
- Kubernetes Version >= 1.20
- Golang Version >= v1.14
Installation
- Follow Open Match Installation Guide to setup Open Match in your cluster.
API Definitions
- gRPC API Definitions are available in API references - Preferred
- HTTP API Definitions are available in SwaggerUI
v1.2.0
v1.2.0
This is the v1.2.0 release of Open Match.
Check the official website for details on features, installation and usage.
Release Notes
Feature Highlights
Beta release for Backfill Feature
- Backend
- Frontend
- Statestore
- Query
- Querying and Caching Backfill (#1310)
- Synchronizer
Breaking Changes
Security Fixes
None
Enhancements
- Update to gRPC Gateway v2 (#1358)
- Clients can cancel WatchAssignment request (#1350)
- Added Pod Tolerations, NodeSelector and Affinity in Helm for subcharts (#1311)
- Improved logging and error output/reporting (#1352, #1349, #1347, #1344, #1343, #1340, #1332, #1331, #1320, #1287)
Usage Requirements
- Kubernetes Version >= v1.15
- Golang Version >= v1.14
Installation
- Follow Open Match Installation Guide to setup Open Match in your cluster.
API Definitions
- gRPC API Definitions are available in API references - Preferred
- HTTP API Definitions are available in SwaggerUI
v1.2.0-rc.1
v1.2.0-rc.1
This is the v1.2.0-rc.1 release of Open Match.
Check the official website for details on features, installation and usage.
Release Notes
Feature Highlights
Beta release for Backfill Feature
- Backend
- Frontend
- Statestore
- Query
- Querying and Caching Backfill (#1310)
- Synchronizer
Breaking Changes
Security Fixes
None
Enhancements
- Update to gRPC Gateway v2 (#1358)
- Clients can cancel WatchAssignment request (#1350)
- Added Pod Tolerations, NodeSelector and Affinity in Helm for subcharts (#1311)
- Improved logging and error output/reporting (#1352, #1349, #1347, #1344, #1343, #1340, #1332, #1331, #1320, #1287)
Usage Requirements
- Kubernetes Version >= v1.15
- Golang Version >= v1.14
Installation
- Follow Open Match Installation Guide to setup Open Match in your cluster.
API Definitions
- gRPC API Definitions are available in API references - Preferred
- HTTP API Definitions are available in SwaggerUI
v1.1.0
This is the v1.1.0 release of Open Match.
Check the official website for details on features, installation and usage.
Release Notes
Feature Highlights
- Inclusive/Exclusive bounds for DoubleRangeFilters #1268
Breaking Changes
- Service names now include the helm release name. This changes the default value from, eg,
om-frontend
toopen-match-frontend
. This is more consistent with helm best practices, and allows multiple Open Match installations in one namespace. For helm users, your values.yaml from 1.0 is still valid and includes service name overrides to the previous value #1246
Security Fixes
- None
Enhancements
- Time to Assignment metrics added to backend #1241
- Reduced Redis logging #1248
- Improved testing for Nil pointer exceptions #1249
- Added PR template #1250
- Tests now use require (previously assert) with improved output (#1253, #1257)
- Reduced unnecessary logging in backend and frontend services. Updated query and evaluator logging #1255
- Improved Statestore tests for Redis #1264
Usage Requirements
- Kubernetes Version >= v1.15
- Golang Version >= 1.14
Installation
- Follow Open Match Installation Guide to setup Open Match in your cluster.
API Definitions
- gRPC API Definitions are available in API references - Preferred
- HTTP API Definitions are available in SwaggerUI
v1.1.0-rc.1
This is the v1.1.0-rc.1 release of Open Match.
Check the official website for details on features, installation and usage.
Release Notes
Feature Highlights
- Inclusive/Exclusive bounds for DoubleRangeFilters #1268
Breaking Changes
- Service names now include the helm release name. This changes the default value from, eg,
om-frontend
toopen-match-frontend
. This is more consistent with helm best practices, and allows multiple Open Match installations in one namespace. For helm users, your values.yaml from 1.0 is still valid and includes service name overrides to the previous value #1246
Security Fixes
- None
Enhancements
- Time to Assignment metrics added to backend #1241
- Reduced Redis logging #1248
- Improved testing for Nil pointer exceptions #1249
- Added PR template #1250
- Tests now use require (previously assert) with improved output (#1253, #1257)
- Reduced unnecessary logging in backend and frontend services. Updated query and evaluator logging #1255
- Improved Statestore tests for Redis #1264
Usage Requirements
- Kubernetes Version >= v1.15
- Golang Version >= 1.14
Installation
- Follow Open Match Installation Guide to setup Open Match in your cluster.
API Definitions
- gRPC API Definitions are available in API references - Preferred
- HTTP API Definitions are available in SwaggerUI
v1.0.0
This is the v1.0.0 release of Open Match.
Check the official website for details on features, installation and usage.
Release Notes
Feature Highlights
- Assigned tickets will now automatically be deleted after a configured time. Default assignedDeleteTimeout = 10 minutes. #1211
- Added API call to release all pending tickets. #1215 This enables callers through several API calls to delete all tickets.
- matchfunction library now supports passing gRPC call options. #1205
- Metrics for many Open Match concepts now exported by Open Match, and a page with charts added to Grafana. #1192 #1193
- Refactor and greatly improved test coverage, fixing several bugs and ensuring stability going forward. #1204 #1176 #1196 #1189 #1194
Breaking Changes
- Renamed several configuration values for consistency and clarity: #1206
- ignoreListTTL -> pendingReleaseTimeout
- pageSize/page.size -> queryPageSize
- registrationIntervalMs -> registrationInterval
- proposalCollectionIntervalMs -> proposalCollectionInterval
- Default Evaluator now uses the main open match configmaps, removing the separate config maps. #1191
Breaking changes are only made if they fall within the stability guarantee.
Security Fixes
None.
Enhancements
- Updated development guide. #1182
- Fixed installing open match by default installing the integration test components. #1213
- Improved error messages in several cases. #1207
- Improved and corrected API documentation. #1212
- Pods will now try to gracefully exit when receiving sigterm #1194
Usage Requirements
- Kubernetes Version >= v1.10
- Golang Version >= v1.14
Installation
- Follow Open Match Installation Guide to setup Open Match in your cluster.
API Definitions
- gRPC API Definitions are available in API references - Preferred
- HTTP API Definitions are available in SwaggerUI
v1.0.0-rc.1
This is the v1.0.0-rc.1 release of Open Match.
Check the official website for details on features, installation and usage.
Release Notes
Feature Highlights
- Assigned tickets will now automatically be deleted after a configured time. Default assignedDeleteTimeout = 10 minutes. #1211
- Added API call to release all pending tickets. #1215 This enables callers through several API calls to delete all tickets.
- matchfunction library now supports passing gRPC call options. #1205
- Metrics for many Open Match concepts now exported by Open Match, and a page with charts added to Grafana. #1192 #1193
- Refactor and greatly improved test coverage, fixing several bugs and ensuring stability going forward. #1204 #1176 #1196 #1189 #1194
Breaking Changes
- Renamed several configuration values for consistency and clarity: #1206
- ignoreListTTL -> pendingReleaseTimeout
- pageSize/page.size -> queryPageSize
- registrationIntervalMs -> registrationInterval
- proposalCollectionIntervalMs -> proposalCollectionInterval
- Default Evaluator now uses the main open match configmaps, removing the separate config maps. #1191
Breaking changes are only made if they fall within the stability guarantee.
Security Fixes
None.
Enhancements
- Updated development guide. #1182
- Fixed installing open match by default installing the integration test components. #1213
- Improved error messages in several cases. #1207
- Improved and corrected API documentation. #1212
- Pods will now try to gracefully exit when receiving sigterm #1194
Usage Requirements
- Kubernetes Version >= v1.10
- Golang Version >= v1.14
Installation
- Follow Open Match Installation Guide to setup Open Match in your cluster.
API Definitions
- gRPC API Definitions are available in API references - Preferred
- HTTP API Definitions are available in SwaggerUI
v0.10.0
v0.10.0
This is the 0.10.0 release of Open Match.
Check the official website for details on features, installation and usage.
Release Notes
Feature Highlights
- Reworked the QueryService with an intermediate caching layer such that it could be scaled much better under high profile scenario. #1126 #1135
- Added QueryTicketIds API to QueryService #1151
- Added a built-in
created_time
field for Ticket proto. Added acreated_before
andcreated_after
field for Pool proto to filter tickets bycreated_time
. #1162 - Added HA and failover supports via Redis sentinel #1038
Breaking API Changes - Previous releases are not compatible with this release.
- Updated Open Match go module dependency from 1.13 to 1.14 #1133
- Modified AssignTickets API to support bulk assignments. AssignTickets now returns repeated AssignmentFailure status if corresponding ticket assignment failed instead of failing the call #1155
- Removed
redis.expiration
config and ticket auto-expiring logic from the statestore. Users now need to manually manage ticket deletion. #1146 - Renamed GetAssignments to WatchAssignments. #1173
- Changed Create/Get APIs to return resources directly and Delete APIs to return empty. #1173
Breaking Behavior Changes
- Added some randomization on returned order of tickets to the QueryService #1127
- Forbid ticket creations with Assignments #1160
- Changed Backend service to return an error when observing duplicated matchIDs from multiple MMF calls. Changed Evaluator client to return an error if it found any duplicated/unexist matchIDs from the input/output #1167
Future releases towards 1.0.0 may still have breaking changes.
Enhancements
- Improved Grafana dashboards with more detailed metrics
- Reduced PING checks when releasing a Redis connection to pool to save health check overheads
- New team-based shooter game benchmark scenario for Open Match scale test framework
- Optimized part of the Redis queries for better CPU consumption
Usage Requirements
- v1.10 <= Kubernetes Version
- Golang Version = v1.14.x
This software is currently alpha, and subject to change. Not to be used in production systems.
Benchmark Numbers
Numbers are from running Open Match against the benchmarking framework
- Open Match is able to scale to above 7000 Ticket QPS for the three scenarios that we implemented.
- Additionally, it supports 3500 Ticket QPS in the modified TeamShooter scenario with 1000 profiles.
Installation
Follow Open Match Installation Guide to set up Open Match in your cluster.
API Definitions
Available both in SwaggerUI and API references.