You can now upgrade your applicable MongoDB account to the latest version by using our automatic database upgrade process. The upgrade process doesn’t interrupt the availability of your account and it doesn’t consume RU/s or decrease the capacity of the database at any point. No existing data or indexes will be affected by this process. This is particularly useful if you want to leverage the new functionality available in version 3.6 and also to ensure that your applications are running on the latest version of the service.
The steps to upgrade your account are the following:
- Enable the automatic database upgrade in the Azure Portal (instructions below). Your database operation will not be interrupted and no action is required until the new version has been enabled.
- After the process is finalized, find your new database account endpoint.
- Replace the endpoint in your existing application connections with the new one. Only the new endpoint will have the functionality provided by the updated version 3.6.
If your account qualifies for this upgrade, you’ll be able to execute it from the Azure Portal under the Features
blade. We’ll walk through the steps in this blog post below.
First, let’s look at all the specific benefits from upgrading your account.
Benefits of upgrading from version 3.2 to 3.6
- Enhanced performance and stability
- Support for new database commands
- Support for aggregation pipeline by default and new aggregation stages
- Support for Change Streams
- Support for compound Indexes
- Cross-partition support for the following operations: update, delete, count and sort
- Improved performance for the following aggregate operations: $count, $skip, $limit and $group
- Wildcard indexing is now supported
Changes from version 3.2
These are features that have changed with this new version:
- RequestRateIsLarge errors have been removed. Requests from the client application will not return 16500 errors anymore. Instead requests will resume until they complete or fulfill the timeout. (Note: this capability requires a support ticket to be opened to enable).
- Per request timeout is set to 60 seconds.
- New MongoDB collections created on the new wire protocol version will only have the `_id` property indexed by default. All other indexes have to be created manually.
Action required
<your_database_account_name>.mongo.cosmos.azure.com
.documents.azure.com
.Let’s take a look at how to do this on the Azure Portal.
How to upgrade my account on the Azure Portal
- First, go to the Azure portal and navigate to your Azure Cosmos DB API for MongoDB account overview blade. Verify that your server version is
3.2
. - From the options on the left, select the
Features
blade. This will reveal the Account level features that are available for your database account. - Click on the
Upgrade to Mongo server version 3.6
row. If you don’t see this option, your account might not be eligible for this upgrade. Please file a support ticket if that is the case. - Review the information displayed about this specific upgrade. Note that the upgrade will only be completed until your applications use the updated endpoint, as highlighted in this section. Click on
Enable
as soon as you are ready to start the process. - After starting the process, the
Features
table will show the status of the upgrade. The status will go fromPending
, toIn Progress
, toUpgraded
. This process will not affect the existing functionality or operations of the database account. - Once the upgrade is completed, and the status shows as
Upgraded
, click on it to learn more about the next steps and actions you need to take to finalize the process. Please contact support if there was an issue processing your request. - To start using the upgraded version of your database account, go back to the
Overview
blade, note that the server version is now3.6
and copy the new connection string to use in your application. The applications will start using the upgraded version as soon as they connect to the new endpoint. Existing connections will not be interrupted and can be updated at your convenience. To ensure a consistent experience, all your applications must use the new endpoint.
And that’s it! Enjoy the new functionality and let us know in the comments if there’s any questions.
– Luis
0 comments