Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(CosmosStore): Expose ISyncContext.SessionToken #195

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

bartelink
Copy link
Collaborator

This PR exposes a SessionToken on Equinox.Core.ISyncState, which enables logic in a Service to access that (along with the Version plumbed in #194) via the QueryEx and TransactAsyncEx APIs. More importantly, it enables one to flow the SessionToken out to the caller in order to enable Read-Your-Writes guarantees for a system's overall client session.

This could be merged in the 2.0 timeframe, but leaving it in the 3.0 milestone for now as doing so only makes sense if Equinox.Cosmos (or another store) actually wires through the SessionToken correctly, which involves addressing #192:

  • when creating the Equinox.Stream, one needs to be able to supply the incoming SessionToken (maybe add a sessionToken argument in Resolve?
  • when running a Load internally, the suplied token needs to be passed in the Options
  • the stored procedure and/or the invocation logic needs to surface the SessionToken at the conclusion of the Sync operation
  • the SessionToken needs to flow back into the StreamToken that's yielded back

cc @thednaz @ylibrach

@bartelink bartelink force-pushed the master branch 2 times, most recently from b1a5694 to a7486eb Compare May 13, 2022 21:13
@bartelink bartelink force-pushed the master branch 2 times, most recently from 1919c31 to b7e2207 Compare May 30, 2022 10:43
@bartelink bartelink force-pushed the master branch 2 times, most recently from fe2af41 to edda98d Compare June 5, 2023 16:06
@bartelink bartelink changed the title Add Sessiontoken feat(Cosmosstore): Expose ISyncContext.SessionToken Jul 26, 2023
@bartelink bartelink changed the title feat(Cosmosstore): Expose ISyncContext.SessionToken feat(CosmosStore): Expose ISyncContext.SessionToken Jul 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant