Fix PostgreSQL DateTime compatibility issue in ActivityController #1392
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves PostgreSQL DateTime compatibility issues when calling
GetPendingActivity()that resulted in the error:Problem
PostgreSQL's
timestamp with time zonecolumns require DateTime values withKind=Utc, but the ActivityController was passing DateTime values with incompatible kinds:_dateTimeProvider.Now(Kind=Local) toGetFirstOpenSubscriptionDateTime.MaxValue(Kind=Unspecified) for token expiry inSetSubscriptionTokenThis caused runtime exceptions when using the PostgreSQL persistence provider with activities.
Solution
Made minimal changes to
ActivityController.csto ensure PostgreSQL compatibility:Impact
UserStepContainerusesDateTime.Now.ToUniversalTime())The changes are minimal and surgical, affecting only the specific DateTime handling that caused PostgreSQL compatibility issues while maintaining full functionality across all supported persistence providers.
Fixes #1329.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.