Specification
If the seq bitspace gets exhausted either within the 1 millisecond interval, or waiting for the OS clock to catch up to the last ID, the IdSortable should throw an exception. Any further generated IDs would no longer be valid, and therefore would violate the monotonic constraint of IdSortable.
Additional Context
Tasks
- Check if the
seq bitspace is exhausted when generating an id
- Throw an exception like
ErrorIdSortableSequenceRollover or ErrorIdSortableCounterExhausted...
- Tests for if one generates too many ids while mocking a static time.
- Tests for if the last ID is too far in the past.
Specification
If the seq bitspace gets exhausted either within the 1 millisecond interval, or waiting for the OS clock to catch up to the last ID, the
IdSortableshould throw an exception. Any further generated IDs would no longer be valid, and therefore would violate the monotonic constraint ofIdSortable.Additional Context
Tasks
seqbitspace is exhausted when generating an idErrorIdSortableSequenceRolloverorErrorIdSortableCounterExhausted...