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

Time providers and sequences need to be reliable in between application restarts #5

Open
mguenther opened this issue Nov 8, 2018 · 0 comments
Milestone

Comments

@mguenther
Copy link
Owner

Idem is capable of detecting backwards clock drift and handling these situations as appropriate. However, this feature is currently application-scoped. Hence, if the service restarts, all knowledge that enables us to track backwards clock drifts is lost.

Idem needs to work reliable in between application restarts as well. For this, we have to track the last point in time in milliseconds since the epoch at which Idem has generated the last ID. This knowledge needs to be persisted. As soon as the application restarts, Idem needs to check for a backwards clock drift and is required to delay any ID generation until the clock caught up.

During normal operation times, this is no big deal, since backwards clock drift is in the range of a couple of seconds. This feature would however delay the generation of new IDs when the clock changes significantly due to adjusting for daylight savings time (or goes back to normal time). It is unclear as of now how we should handle this.

Persisting the last known point in time at which Idem generated an ID should be an optional feature.

@mguenther mguenther added this to the backlog milestone Nov 8, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant