components-contrib
components-contrib copied to clipboard
CosmosDB reminder partitioning not storing reminders in partitions
When using CosmosDB as actor state store with reminder partitioning enabled, the reminders are not stored in the partitions anymore since runtime version 1.10.5 (v1.10.4 or lower is working correctly).
Expected Behavior
Actor reminders should be stored in partitions to optimize performance with CosmosDB.
Actual Behavior
The actor reminders are stored in a single CosmosDB document, causing high RU usage when many reminders are used.
Steps to Reproduce the Problem
I have created a sample project that demonstrates the bug:
https://github.com/arnoldpistorius/bug-dapr-cosmosdb-partitioning
Basically the steps are:
- Configure CosmosDB Container as actor state.
- In SDK enable actor reminder partitioning (eg. 3).
- Create a bunch of reminders through an actor.
- Observe the CosmosDB container's contents.
- All reminders are stored in the same document
- 2 different partitions were made, but both not used
- After service restart additional partitions are made and some data is migrated, but still new reminders come in a single document.
When the same scenario is done using Redis as actor state store, the partitioning is working as expected.
Release Note
RELEASE NOTE:
This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged (pinned, good first issue, help wanted or triaged/resolved) or other activity occurs. Thank you for your contributions.
bump
This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged (pinned, good first issue, help wanted or triaged/resolved) or other activity occurs. Thank you for your contributions.
This is still a valid issue..