dotnet / dotnet/orleans

Selective Grains & interfaces in service Silos of Heterogenous Clusters

Open
#8,935 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
10.9k
Forks
2.1k
Avg merge
14h 42m
Merged PRs (30d)
354

Description

Hello,

As agreed I will try to explain the situation.
First it's more of nuisance so it improves the Developer Experience at-least.

So scenario is like this where we have:
- Silo A
- Silo B

Silo A has:
- Grain A
- Grain B

Silo B has:
- Grain A
- but no Grain B (this is where Silo would break)

Grains here represent both present interface (GrainInterfaceType) with implementation (GrainType) running on a Silo.

From discussion on Discord there were some mentions of having to either duplicate the interface or create common assembly and include bare-minimum to each service Silo the interface of every Grain used in the Cluster for service Silo to function.

Contributor guide

Open the contributing guide

Research direction

The issue names no files, tests, or entry points. Start by tracing Orleans grain interface and implementation registration for heterogeneous silos, then review the referenced Discord discussion. Done means defining and implementing a supported way for each silo to expose only the grain interfaces it needs without breaking cluster operation.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
developer-experience, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.