You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jul 9, 2023. It is now read-only.
* Major revamp
* Fix action name
* Use CMD instead of the action
* fix path
* Remove tty
* Disabled tests
* SPROCs removed from Reminders package.
* SPROCs removed from persistence provider
* Final tweaks
* Update readme with migration paths.
[Orleans](https://github.com/dotnet/orleans) is a framework that provides a straight-forward approach to building distributed high-scale computing applications, without the need to learn and apply complex concurrency or other scaling patterns.
@@ -22,33 +23,33 @@ Installation is performed via [NuGet](https://www.nuget.org/packages?q=Orleans+C
@@ -130,6 +131,26 @@ For further details on partitioning in CosmosDB see https://docs.microsoft.com/e
130
131
### Backwards compatibility
131
132
The change will not affect existing systems. Configuring a custom `IPartitionKeyProvider` for an existing system will throw a BadGrainStorageConfigException stating incompatibility. To start using a custom partition key provider the old documents must be updated with a `/PartitionKey` property where the value is set using the same functionality as in the `GetPartitionKey` implementation in the custom `IPartitionKeyProvider`. Once all documents are updated, the data must be migrated to a new CosmosDB collection using Azure Data Factory, CosmosDB Migration tool or custom code with colletions PartitionKey set to `PartitionKey`
132
133
134
+
### Migration from 1.3.0 to 3.0.0
135
+
136
+
With the 3.0.0 release, two breaking changes requires manual changes if you have pre-existent data:
137
+
138
+
#### Remove stored procedures
139
+
140
+
Reminders, Streaming and Persistence providers doesn't rely on Stored Procedures anymore. You can safely remove them from your databases once you migrate to 3.0.0. The only stored procedures that are still used, are the ones from the Clustering packages since Orleans membership protocol requires some atomic operations that are only possible on CosmosDB by using stored procedures. All the rest can be killed.
141
+
142
+
#### Reminders collection
143
+
144
+
Before 3.0.0, the reminders provider used to use a non-partitioned collection. Recently Microsoft requires that everyone using CosmosDB to migrate to partitioned collections. If you have data on your old collection, you need to migrate this data to a new one.
This data migration can be performed whatever the way you prefer, as long as the `id` and `PartitionKey` fields are formated the way described here. The partition key path of the new collection must be `/PartitionKey`.
153
+
133
154
### Indexing
134
155
The current indexing fork relies on CosmosDB stored procedures for lookup. As stored procedures must be executed against a specific partition, the use of custom partition key builders is not compatible with the Orleans indexing fork.
0 commit comments