Any specifc reason to varchar(150) for GrainId in OrleansRemindersTable?
- Dominant language
- C#
- Stars
- 10.9k
- Forks
- 2.1k
- Avg merge
- 14h 42m
- Merged PRs (30d)
- 354
Description
We have this generic Grain
`public class DoThings : Grain, IDoThings, IRemindable where T : class`
When we try to register a reminder in this grain it fails because GrainId stored in OrleansRemindersTable is a varchar(150) and with proper namespaces on things it's easy to get GrainId to become more then 150 chars.
Is it safe to increase the field in OrleansRemindersTable to allow more then 150 chars or is there a hard limit on the length of GrainId in Orleans?
The storage is created with [PostgreSQL-Reminders.sql](https://github.com/dotnet/orleans/blob/main/src/AdoNet/Orleans.Reminders.AdoNet/PostgreSQL-Reminders.sql)
Contributor guide
Research direction
Start with src/AdoNet/Orleans.Reminders.AdoNet/PostgreSQL-Reminders.sql and trace how GrainId is produced for the generic DoThings grain during reminder registration. Confirm whether Orleans defines a GrainId length limit and whether the PostgreSQL column width is the only constraint; done means documenting the supported limit or identifying the required schema and code changes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, postgresql
- Domain
- databases, distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100