github spacecloud-io/space-cloud v0.19.6

latest releases: v0.21.5, v0.21.4, v0.21.3...
4 years ago

This release contains major performance optimisations and minor features

Enhancements

  • Native support for all types of SQL joins (LEFT, RIGHT, INNER, OUTER):
query {
  users (join: $join, where: $where) @db {
    name
    posts {
      title
      views {
        count
      }
    }
    address {
      pincode
      street
    }
  }
}

variables:

{
  "join": [
    {
      "type": "LEFT",
      "table": "posts",
      "on": {"users.id": "posts.user_id"},
      "join": [
        {
          "type": "LEFT",
          "table": "views",
          "on": {"posts.id": "views.post_id"}
        }
      ]
    },
    {
      "type": "LEFT",
      "table": "address",
      "on": {"users.id": "address.user_id"}
    }
  ]
}
  • Optimised (single SQL query) the same database joins when using the new join syntax #1135
  • New syntax for aggregations:
query {
  users (join: $join, where: $where) @db {
    name
    totalViews: views__count @aggregate(op: sum)
    maxViews: views__count @aggregate(op: max)
  }
}
  • Support for templating directive using JWT claims. #1370

Fixes

  • Fixed security rule editor crashing in Mission Control when the schema isn't provided #1369

Upgrade guide

Upgrade is possible from v0.17.0 and above.

Before upgrading your cluster, make sure you backup cluster config using space-cli --project <project_id> get all /path/to/backup/dir. If things go right, you'll be able to reapply all saved project config using space-cli apply /path/to/backup/dir.

For Docker-based deployments:

Simply run space-cli upgrade.

For Kubernetes based deployment:

We recommend setting up a fresh Kubernetes cluster and installing Istio and SC on top of it. Don't forget to backup all project config first!

Don't miss a new space-cloud release

NewReleases is sending notifications on new releases.