On Sat, Feb 01, 2020 at 01:29:06PM -0800, Brad Peabody wrote: > I do need to give more thought to the uniqueness property. One observation > is that uniqueness guarantees can be somewhat application-specific, and > specific cases can significantly reduce the complexity of implementation. > Examples: Applications deployed on a cluster where each machine already has > a unique number can simply include that number to ensure uniqueness. > Applications only concerned about uniqueness in a single process can easily > do this using the clock and a counter. For very specialized use cases (e.g., where 16 binary bytes is too long), I'm not sure it makes sense to create a fully general specification which is so abstract that it becomes hard to use, since you have to customize it for a particular application. Past a certain point, you might as well say that you want to standardize "b-trees" --- and that's something which belongs in an algorithms book, and not an I-D or an RFC. I will note that created distributed unique id's for applications running in a cluster is very common system design interview question. (Or at least, it used to be, until it got leaked and now there tons and tons of pages on callicoder, topcoder, describing solutions and how to approach it in interviews, such that at least at $WORK, it's been blacklisted as an interview question. :-) So I'm not sure I'd consider it a "hard problem"; just as I'm not at all convinced this is something that needs to be standardized. - Ted