cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tupshin Harper (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-9200) Sequences
Date Wed, 01 Jul 2015 14:27:06 GMT


Tupshin Harper commented on CASSANDRA-9200:

An example of an application domain where strictly increasing integers are required is the
IMAP protocol. where this is mandatory.

{{A 32-bit value assigned to each message, which when used with the unique identifier validity
value (see below) forms a 64-bit value that MUST NOT refer to any other message in the mailbox
or any subsequent mailbox with the same name forever.  Unique identifiers are assigned in
a strictly ascending fashion in the mailbox; as each message is added to the mailbox it is
assigned a higher UID than the message(s) which were added previously.  Unlike message sequence
numbers, unique identifiers are not necessarily contiguous.}}

Building this kind of system on top of C* today requires an external CP system (ick operational
complexity), though it is likely the case that the sequences here really only need to be modeled
as clustering keys and not partition keys.

> Sequences
> ---------
>                 Key: CASSANDRA-9200
>                 URL:
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Jonathan Ellis
>            Assignee: Robert Stupp
>             Fix For: 3.x
> UUIDs are usually the right choice for surrogate keys, but sometimes application constraints
dictate an increasing numeric value.
> We could do this by using LWT to reserve "blocks" of the sequence for each member of
the cluster, which would eliminate paxos contention at the cost of not being strictly increasing.
> PostgreSQL syntax:

This message was sent by Atlassian JIRA

View raw message