dapr / dapr/go-sdk

Add Support for Per Actor Type Configuration

Open
#277 2 comments 0 reactions 0 assignees View on GitHub
area/actor enhancement enhancement-runtime-dependency
Dominant language
Go
Stars
479
Forks
187
PR merge metrics
No merged PRs in 30d

Description

## Describe the proposal
The Dapr Runtime added support for per actor type configurations in 1.7. This support needs to be added to the SDKs.

The new configuration looks like:

```json
{
"entities":["actorType1", "actorType2"],
"actorIdleTimeout": "1h",
"actorScanInterval": "30s",
"drainOngoingCallTimeout": "30s",
"drainRebalancedActors": true,
"reentrancy": {
"enabled": true,
"maxStackDepth": 32
},
"entitiesConfig": [
{
"entities": ["actorType1"],
"actorIdleTimeout": "1m",
"drainOngoingCallTimeout": "10s",
"reentrancy": {
"enabled": false
}
}
]
}
```

Implementation can be varied per SDK but should output to the above JSON.

Docs: https://github.com/dapr/docs/pull/2334
Runtime: https://github.com/dapr/dapr/pull/4201

Contributor guide

Open the contributing guide

Research direction

Start by reading the linked Dapr docs PR 2334 and runtime PR 4201 to understand the per-actor-type configuration contract. Then inspect the Go SDK's existing actor configuration entry points and related tests, if present. Done means the SDK supports the configuration and produces JSON matching the documented entitiesConfig structure.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.