Skip to content

v0.5.7-rc3

Pre-release
Pre-release
Compare
Choose a tag to compare
@SanjayVas SanjayVas released this 06 Aug 21:09
· 105 commits to main since this release
28bda6a

Issues Addressed

  • Existing computations may starve initialization of new computations. See #1637
  • Duchy mill writing output blob error should be transient. See #1644
  • Avoid failing Measurements at Duchy due to stale ComputationParticipant state. See #1663
  • Fix batch get metrics limit in reports service. See #1529
  • CreateEventGroup on v0.5.x fails with v0.4.x EventGroup message containing encrypted metadata. See #1705
  • Multiple Computations are claimed at the same time. See #1722
  • Retryable storage errors may be treated as non-retryable. See #1731

Highlights

  • Mill horizontal autoscaling. See #1697
    • This significantly reduces cost during low traffic periods.
  • More performance improvements for Report creation. See #1641
  • Improved Duchy fault tolerance.
  • The HMSS EDP client library is published as a Maven artifact See README.
  • Kingdom-less panel exchange is supported on Google Cloud. See the deployment guide.

Potentially Requiring Action

  • As part of the Mill horizontal autoscaling feature, the K8s Deployment objects for Mills are replaced with PodTemplate objects.
    • The PodTemplates are used by new MillJobScheduler Deployment to schedule Mill Jobs.
    • The MillJobScheduler Deployment needs some permissions on K8s resources in the same cluster using K8s RBAC. For the dev configuration, this consists of a new Role and RoleBinding.
    • Maximum concurrency for LLv2 and HMSS can be configured using the --llv2-maximum-concurrency and --hmss-maximum-concurrency options to the scheduler, respectively.
      • You will need to ensure that there are enough machine resources available at maximum concurrency. For example, ensuring that the cluster autoscaler has a sufficiently high value for the maximum number of nodes.
    • The value of the --work-lock-duration option for the Mill PodTemplate must match the corresponding option for the scheduler Deployment.
      • --llv2-work-lock-duration or --hmss-work-lock-duration, depending on the Mill type.
  • Kubernetes object configuration changes for HMSS. Some of these are required even if HMSS is not enabled. See the updated deployment guides for GKE and EKS.
    • There is a new HMSS Mill.
    • The Kingdom internal API and public API servers have a new required --hmss-protocol-config-config option. In the dev configuration, this comes from the hmss_protocol_config_config.textproto file in the certs-and-configs Secret.
    • The Herald now needs access to blob storage. This means it needs to run under a K8s ServiceAccount that has access to the appropriate bucket, as well as the appropriate command line options.
    • The Herald and the HMSS Mill have a new --key-encryption-key-file option for worker (non-aggregator) Duchies. In the dev configuration, this comes from the certs-and-configs Secret.
    • The Duchy Requisition fulfillment server may need more heap space to handle HMSS Requisitions.
    • The EDP simulator may need more heap space to fulfill HMSS Requisitions.

What's Changed

New Contributors

Full Changelog: v0.5.6...v0.5.7-rc3